我正在制作一个xsd,我想知道,我能否让一个特定元素必须基于不同元素的值? 例如,我有以下内容:
<xs:element name="Type" minOccurs="1">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="01"/>
<xs:enumeration value="02"/>
<xs:enumeration value="03"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Value01" type="xs:string" minOccurs="?"/>
<xs:element name="Value02" type="xs:string" minOccurs="?"/>
因此,如果Type的值为01,则Value01是必需的,禁止使用Value02, 如果type的值为02,则Value02为必填项,禁止使用Value01 如果type为03,则禁止两者。
这有可能不复杂吗?
提前致谢, 托马斯
答案 0 :(得分:0)
可以在XSD 1.1(使用xsd:assert)中完成,但不能在XSD 1.0中完成。