基于属性将xml元素映射到xsd complexType

时间:2010-06-14 01:24:31

标签: xml xsd

假设存在一个如下所示的XML实例文档:

<root>
    <object type="foo">
        <!-- ... -->
    </object>

    <object type="bar">
        <!-- ... -->
    </object>
</root>

我的目标是建立一个小的(静态)模式来验证对象的正确<element type="xxx" />语法,以及另一个模式(更容易发生变化),它根据complexType验证每个对象元素的内容匹配type属性:

<complexType name="foo"><!--should match object with type="foo"--></complexType>
<complexType name="bar"><!--should match object with type="bar"--></complexType>

完成此操作的最佳方式是什么(或类似的东西)?

1 个答案:

答案 0 :(得分:1)

使用纯XML Schema无法做到这一点。

您可以使用“静态”架构进行验证,然后针对每个元素,根据它应匹配的特定complexType对其进行验证,而不是针对整个架构进行验证。