“任何一个或多个这些元素但必须至少为一个”的XML模式构造
发布时间:2020-12-16 08:01:35 所属栏目:百科 来源:网络整理
导读:我试图设置一个模式的一部分,就像一个“序列”,其中所有的子元素都是可选的,但至少有一个元素必须存在,并且可能有多个元素。 我尝试执行以下操作,但XMLSpy抱怨“内容模型包含元素 element name =”DateConstant“和 element name =”DateConstant“不能
我试图设置一个模式的一部分,就像一个“序列”,其中所有的子元素都是可选的,但至少有一个元素必须存在,并且可能有多个元素。
我尝试执行以下操作,但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> 这可以做到吗(如果是这样,怎么办)? 一些澄清:
尝试这个:
<xs:choice> <xs:sequence> <xs:element name="Elem1" /> <xs:element name="Elem2" minOccurs="0" /> <xs:element name="Elem3" minOccurs="0" /> </xs:sequence> <xs:sequence> <xs:element name="Elem2" /> <xs:element name="Elem3" minOccurs="0" /> </xs:sequence> <xs:element name="Elem3" /> </xs:choice> 这样做,您强制选择第一个元素,然后其余的是可选的,第二个元素和其余元素是可选的,第三个元素。 这应该做你想要的,我希望。 当然,您可以将子序列分组,以避免在每个序列中复制一个元素,如果你意识到你错过了一个。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |