有没有办法为元素属性声明别名?例如,我有一个元素<Item>
,其中包含两个布尔属性fooAttribute
和barAttribute
,其中包含别名foo
和bar
,以便以下任何一个有效的:
<Item foo="true" bar="false" />
<Item foo="true" barAttribute="false" />
<Item fooAttribute="true" bar="false" />
<Item fooAttribute="true" barAttribute="false" />
答案 0 :(得分:2)
答案不在XSD 1.0中。如果需要,可以将XSD 1.0与另一种模式语言(RelaxNG或Schematron)结合使用。
在XSD 1.1中,您可以定义属性的两个变体,指向相同类型的相同简单类型,然后定义断言以使它们互斥。