不,我不認爲這是可能的。您的要求似乎相互排斥。你可以有:每種類型的以任何順序
元素,但不超過一個(或零)
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="root">
<xs:complexType>
<xs:all>
<xs:element name="elm1" minOccurs="0" maxOccurs="1" />
<xs:element name="elm2" minOccurs="0" maxOccurs="1" />
<xs:element name="elm3" minOccurs="0" maxOccurs="1"/>
<xs:element name="elm4" minOccurs="0" maxOccurs="1"/>
</xs:all>
</xs:complexType>
</xs:element>
</xs:schema>
<?xml version="1.0" ?>
<root>
<elm4 />
<elm1 />
<elm3 />
</root>
或在固定的順序
元素和每個具有特定數量的出現
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="root">
<xs:complexType>
<xs:sequence>
<xs:element name="elm1" minOccurs="0" maxOccurs="2" />
<xs:element name="elm2" minOccurs="0" maxOccurs="1" />
<xs:element name="elm3" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="elm4" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
<?xml version="1.0"?>
<root>
<elm1 />
<elm1 />
<elm2 />
<elm4 />
<elm4 />
<elm4 />
<elm4 />
</root>
你可以在你的xsd schema中定義它並根據你的xml驗證它。 – CarneyCode 2011-02-23 10:44:32
它看起來像你的需求_可以以任何方式訂購_和_occur限於它們的給定數量_是相互排斥的。 – Filburt 2011-02-24 14:58:31
是的,正確,filburt。那可能嗎? – ChrisBenyamin 2011-02-25 18:27:33