我工作的应用程序具有符合XSD架构的XML输出.随着功能添加到应用程序,XSD发生了变化,我想要注意XSD文件中的模式版本.
也许我错过了一些东西,但我还没有找到标记模式版本的内置方法.
你怎么做呢?
pet*_*ven 20
您可以使用xsd文档的命名空间
<xs:schema targetNamespace="http://yourcompany/yourapp/1.0" ... >
...
</xs:schema>
Run Code Online (Sandbox Code Playgroud)
作为一个例子,看看w3.org定义的xsd,他们就是这样做的.请注意,通常,根据定义更改版本号对于xsd的任何使用者来说都是一个重大变化(无论实际变化有多小).
对于影响较小的版本控制,似乎就将一个版本属性放在根元素上达成了一致:
<xs:schema version="1.0.0" ...>
...
</xs:schema>
Run Code Online (Sandbox Code Playgroud)
根据schema元素本身有一个version属性:
<schema
attributeFormDefault = (qualified | unqualified) : unqualified
blockDefault = (#all | List of (extension | restriction | substitution)) : ''
elementFormDefault = (qualified | unqualified) : unqualified
finalDefault = (#all | List of (extension | restriction | list | union)) : ''
id = ID
targetNamespace = anyURI
version = token
xml:lang = language
{any attributes with non-schema namespace . . .}>
Content: ((include | import | redefine | annotation)*, (((simpleType | complexType | group | attributeGroup) | element | attribute | notation), annotation*)*)
</schema>
Run Code Online (Sandbox Code Playgroud)
请参阅http://www.w3.org/TR/xmlschema-1/#key-schema,"3.15.2模式的XML表示"
但是,如果您发布了架构,那么我认为处理它的最佳方法是使用目标命名空间.这将强制使用正确的版本(但破坏兼容性)
| 归档时间: |
|
| 查看次数: |
21495 次 |
| 最近记录: |