xsd:选择'未连接'元素

时间:2010-03-23 20:37:34

标签: xml schema xsd

我有一个xml,有两种形式

<root>
     <element1 req="mandatory"/>
     <element2/>
     <element3/>
<root>

<root>
     <element2/>
     <element3/>
     <element4 req="mandatory"/>
<root>

element1或elem4是req'd 2和3是可选的。 我只是想弄清楚如何使用xsd:choice, 帮助,谢谢。

1 个答案:

答案 0 :(得分:1)

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="root">
    <xs:complexType>
        <xs:choice>
            <xs:sequence>
                <xs:element name="element1"/>
                <xs:element name="element2" minOccurs="0"/>
                <xs:element name="element3" minOccurs="0"/>
            </xs:sequence>
            <xs:sequence>
                <xs:element name="element2" minOccurs="0"/>
                <xs:element name="element3" minOccurs="0"/>
                <xs:element name="element4"/>
            </xs:sequence>
        </xs:choice>
    </xs:complexType>
</xs:element>