我想定义一个允许子元素以任何顺序出现的模式,类似于<choice minOccurs="0" maxOccurs="unbounded">
,但只允许每个元素中的一个,类似于<sequence minOccurs="1" maxOccurs="1">
可以这样做吗?
例如
<Root>
<ele1>
<ele3>
<ele2>
</Root> <!--Valid-->
如下所示:
<Root>
<ele1>
<ele1>
<ele3>
</Root> <!--Invalid-->
答案 0 :(得分:0)
您可以将maxOccurs="1"
添加到元素中。
答案 1 :(得分:0)
使用xs:all而不是xs:sequence,所以你要写:
<xs:element name="Root">
<xs:complexType>
<xs:all>
<xs:element name="element1"/>
<xs:element name="element2"/>
<xs:element name="element3"/>
</xs:all>
</xs:complexType>
</xs:element>