我目前正在阅读Bill Evjen,Kent Sharkey,Thiru Thangarathinam,Michael Kay,Alessandro Vernet,Sam Ferguson的 Professional XML 。
我是初学者并尝试获取XML Schema文档的基本结构。 作者提出了如何将XML Schema文档放在一起的概念。
进口
Imports允许您将另一个完整的XML Schema文档导入到您正在使用的文档中。如果两个不同的XML Schema文档使用不同的命名空间,通常会这样做。此导入使用
<import>
元素和两个attributes-namespace和schemaLocation
完成。
包括
如果其他模式具有相同的命名空间或使用无命名空间,则使用
<include>
元素。它与<import>
元素非常相似,是将两个模式组合在一起的好方法。
我发现自己真的很困惑, 如果其他架构具有 相同的命名空间 或使用无命名空间,则使用 include 元素。
如果他们拥有 相同的命名空间 ,则不会在同一 在冲突 中> 元素 在 两个架构中定义 ?
答案 0 :(得分:2)
如果您通过xsd:include
组合来自同一命名空间或没有命名空间的XSD,是的,可能会有命名冲突,但是当您选择使用xsd:include
时,通常可以控制两者XSD并且可以避免冲突。
当您从不同的来源(通常不在您的控制之下)组合XSD时,更需要具有单独的命名空间来避免组件名称冲突。