xs:override 是 XML Schema 1.1 引入的安全重定义机制,用于在不修改原始 schema 文件的前提下,精确覆盖或增强已引入的类型、元素等定义,需严格匹配名称与类别,且仅支持 XSD 1.1 处理器。

xs:override 是 XML Schema 1.1 中引入的机制,用于安全地替换或增强已有的 schema 定义(比如来自 xs:include 或 xs:import 的类型、元素、属性等),而无需修改原始 schema 文件。它不是“覆盖”语义上的简单覆盖,而是有约束的、显式的重定义,必须严格遵循规则。
下面直接说明怎么用 xs:override 正确覆盖引入的 schema 定义:
确保你的处理器支持 XSD 1.1(如 Xerces-J 2.12+、Saxon EE、libxml2 2.9.12+)。XSD 1.0 不支持 `xs:override`,用了会报错。
你不能在任意位置写 `xs:override`。它必须是 schema 文档的**顶层元素之一**(和 `xs:include`、`xs:import` 同级),且其内容必须只包含对原 schema 中已存在组件的重定义 —— 且名称、种类(element/type/attribute 等)必须完全匹配。
例如,要覆盖 `common.xsd` 中定义的 `xs:complexType name="Person"`:
代码小浣熊
代码小浣熊是基于商汤大语言模型的软件智能研发助手,覆盖软件需求分析、架构设计、代码编写、软件测试等环节
429
查看详情
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns="http://example.com"
targetNamespace="http://example.com"
version="1.1">
<p><!-- 引入原始 schema -->
<xs:include schemaLocation="common.xsd"/></p><p><!-- 覆盖其中的 Person 类型 -->
<xs:override schemaLocation="common.xsd">
<xs:complexType name="Person">
<xs:sequence>
<xs:element name="name" type="xs:string"/>
<xs:element name="age" type="xs:positiveInteger"/>
<xs:element name="email" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:override></p><p></xs:schema>如果 `common.xsd` 是通过 `xs:import`(而非 `xs:include`)引入的,它必然有 `namespace`。此时 `xs:override` 的 `schemaLocation` 指向它,但内部重定义必须带上正确的 `targetNamespace`(或用 `xmlns:tns="..."` + `tns:Person`)。
例如 `common.xsd` 声明了 `targetNamespace="http://common.example"`,那么 override 片段应为:
<xs:override schemaLocation="common.xsd"> <xs:complexType name="Person" xmlns:cm="http://common.example" targetNamespace="http://common.example"> <!-- ... --> </xs:complexType> </xs:override>
基本上就这些。xs:override 不复杂但容易忽略版本和匹配精度,用对了就能解耦维护、实现渐进式 schema 升级。
以上就是XSD的xs:override怎么覆盖引入的schema定义的详细内容,更多请关注其它相关文章!
# 要注意
# 榴莲营销推广方案设计
# 南阳网站推广比较专业
# 上虞商城网站建设选哪家
# 阿里短视频营销推广价格
# 抖音图文推广营销
# 海口网站建设前景分析图
# 开封推荐网站推广
# seo怎么诊断
# 马鞍山外贸网站推广
# 企业如何做QQ推广营销
# 处理器
# 用了
# 相关文章
# 你不
# 就能
# 流式
# 怎么处理
# 如何用
# 文档
# 小浣熊
# ai
相关栏目:
【
Google疑问12 】
【
Facebook疑问10 】
【
优化推广96088 】
【
技术知识133117 】
【
IDC资讯59369 】
【
网络运营7196 】
【
IT资讯61894 】
相关推荐:
《图怪兽》退出登录方法
yandex网页版直接登录 yandex官方入口平台访问方法
漫蛙漫画官方版直通入口 2025漫蛙漫画免注册访问说明
byrutor直接访问入口 byrutor官方游戏库
电脑没有声音了怎么办 电脑声音问题的全面排查与修复指南【详解】
Chart.js 教程:自定义插件实现图表与图例间距调整
三星M34录音变声问题_Samsung M34麦克风调整
抖音号升级企业号怎么改名字?升级企业号有哪些好处?
《下一站江湖2》风神腿获取攻略
word表格如何按某一列内容进行排序_Word表格按列排序方法
win11资源管理器标签页怎么用 Win11文件管理器多标签高效操作【新功能】
yy漫画官方网站登录入口_yy漫画在线阅读页面地址
解决CSS background 属性中 cover 关键字的常见误用
C++怎么实现一个红黑树_C++高级数据结构与平衡二叉搜索树
J*a中导出MySQL表为SQL脚本的两种方法
德邦快递收费标准详解
告别繁琐SEO!如何使用SyliusSitemap插件自动化生成网站地图,提升搜索引擎排名
PHP 4 函数中引用参数的默认值限制与解决方案
Python csv 模块处理非字符串数据:列表写入 CSV 文件的机制解析
发布小红书怎么屏蔽粉丝?屏蔽粉丝能看到吗?
J*a中逻辑运算符如何使用_逻辑与或非的基础用法讲解
Golang如何操作指针参数_Go pointer参数传递规则
QQ邮箱PC端登录页面_QQ邮箱网页版登录界面
追剧达人如何发弹幕
《暗黑破坏神4》国服回归送狂欢礼包 价值6916元
win11怎么设置默认终端为Windows Terminal Win11替代CMD和PowerShell【技巧】
微星主板BIOS怎么调整内存时序_内存参数手动优化BIOS设置教程
J*aScript实现网页表单实时输入字段比较与验证教程
《土豆雅思》修改密码方法
《洛克王国:世界》国家队搭配攻略
易车网官网直达入口 易车网在线登录入口
响应式设计中动态背景颜色条的实现指南
键盘保修需要什么_键盘售后维修流程
解决Go encoding/json 将JSON大数字解析为浮点数的问题
qq邮箱怎么注册_QQ邮箱注册步骤与注意事项
搜狗浏览器如何查找页面中的文字 搜狗浏览器Ctrl+F页面搜索功能
安居客移动经纪人怎么设置自动回复?-安居客移动经纪人设置自动回复的方法
在Spring Boot Thymeleaf中利用布尔属性实现容器的条件显示
嘴唇干裂起皮怎么办 唇部护理与预防干裂的方法【详解】
C++ static关键字作用_C++静态成员变量与静态函数
《大周列国志》皇帝律令功能介绍
mysql如何回滚事务_mysql ROLLBACK事务回滚方法
《优志愿》修改手机号方法
《合金装备4》有望推出重制版!制作人发话了
《杖剑传说》食谱大全
除了Copilot,还有哪些值得一试的VS Code AI插件?
餐馆菜篮选购指南
斯宾塞称XGP云游戏“蒸蒸日上”:正在构建一个游戏从未如此唾手可得的未来
抖音手机分身两个账号怎么切换?分身两个系统是一样的吗?
MongoDB聚合管道:高效统计列表中各项的文档数量
2025-12-18
运城市盐湖区信雨科技有限公司是一家深耕海外推广领域十年的专业服务商,作为谷歌推广与Facebook广告全球合作伙伴,聚焦外贸企业出海痛点,以数字化营销为核心,提供一站式海外营销解决方案。公司凭借十年行业沉淀与平台官方资源加持,打破传统外贸获客壁垒,助力企业高效开拓全球市场,成为中小企业出海的可靠合作伙伴。