对于这样的XML布局,我尝试创建一个XSD模式来验证它。
<RootNode>
<ChildA />
<ChildC />
<ChildB />
<ChildB />
<ChildA />
</RootNode>
要求如下:
<xs:sequence>
我通常用来创建无序节点列表的技术是对列表中每个可能的节点使用<xs:choice maxOccurs="unbounded">
,但是,我无法在ChildA上创建minOccurs="1"
约束,在ChildC上创建maxOccurs="1"
约束。(选择的出现次数优先于此处元素的出现次数)。
<xs:element name="RootNode">
<xs:complexType>
<xs:choice minOccurs="1" maxOccurs="unbounded">
<xs:element name="ChildA" minOccurs="1"/>
<xs:element name="ChildB" />
<xs:element name="ChildC" maxOccurs="1"/>
</xs:choice>
</xs:complexType>
</xs:element>
https://stackoverflow.com/questions/3382944
复制相似问题