Xml 基于父属性名称的XSD子元素可选/必需

Xml 基于父属性名称的XSD子元素可选/必需,xml,xsd,Xml,Xsd,我正在编写一个XSD验证代码,并试图找出如何验证一个具有 <root> <elementA attribute1=ID> ... </elementA> <elementA attribute2=ID> ... </elementA> </root> ... ... 我想让XSD根据属性名验证同一元素,并使一些子元素对于attribute1是可选的,而对于attribut

我正在编写一个XSD验证代码,并试图找出如何验证一个具有

<root>
    <elementA attribute1=ID>
    ...
    </elementA>
    <elementA attribute2=ID>
    ...
    </elementA>
</root>

...
...
我想让XSD根据属性名验证同一元素,并使一些子元素对于
attribute1
是可选的,而对于
attribute2
则是必需的


请注意,“…”是相同的元素,某些字段对于XSD 1.0中的
attribute1

是可选的。元素的类型只能取决于元素名称,而不取决于其属性。XSD 1.1通过一个名为“条件类型分配”的工具消除了这一限制。XSD1.1目前仅在Xerces和Saxon中实现