在XSD文件中,对于元素,几个属性是可选的。 需要验证输入XML文件中是否有任何列出的属性。
答案 0 :(得分:0)
在XSD 1.0 中,您可以使用 xs:key 以确保元素至少具有一个属性。例如:
<xs:element name="elem">
<xs:complexType>
<xs:attribute name="a" type="xs:int" use="optional" />
<xs:attribute name="b" type="xs:int" use="optional" />
<xs:attribute name="c" type="xs:int" use="optional" />
<xs:attribute name="d" type="xs:int" use="optional" />
</xs:complexType>
<xs:key name="attributePresent">
<xs:selector xpath="." />
<xs:field xpath="@*" />
</xs:key>
</xs:element>
例如,如果您想保证元素中至少有一个 b 或 c 属性,您可以使用
<xs:field xpath="@b | @c" />