我目前有两个XSD方案,一个是另一个的“轻型”版本。现在我在“完整”模式中重复了“轻”版本中的所有内容,但是当我需要进行更改时,这会变得很痛苦,而且无论如何都违背了DRY原则,所以我想知道是否有元素这有助于将另一个模式包含在模式中,因此我可以从“轻量级”模式中获得“完整”继承,以减少维护障碍。
答案 0 :(得分:57)
有两种方法。
<xsd:include schemaLocation="pathToFile" />
应该用于包含相同名称空间的文件。
<xsd:import namespace="namespace" schemaLocation="pathToFile" />
应该用于不同命名空间中的包含文件。通常,您将指定作为导入模式的targetNamespace给出的命名空间。
答案 1 :(得分:5)
使用&lt; include&gt;元素,例如参见here。