我正在尝试设置类似于“序列”的模式的一部分,其中所有子元素都是可选的,但至少有一个元素必须存在,并且可能不止一个。
我尝试执行以下操作,但 XMLSpy 抱怨“内容模型包含无法唯一确定的元素 <element name="DateConstant"> 和 <element name="DateConstant">。”:
<xs:choice>
<xs:sequence>
<xs:element name="DateConstant"/>
<xs:element name="TimeConstant"/>
</xs:sequence>
<xs:element name="DateConstant"/>
<xs:element name="TimeConstant"/>
</xs:choice>
可以做到这一点(如果可以,如何做到)?
一些澄清:我只想允许同名的每个元素之一。可以有一个“DateConstant”和/或一个“TimeConstant”,但不能有两个。Gizmo 的答案符合我的要求,但对于大量元素来说是不切实际的。赫斯特的回答允许两个或多个同名元素,这是我不想要的。