にこれは私のXMLです:XSDスキーマ、任意の順序
<animals>
<cat/>
<dog/>
<cat/>
<cat/>
</animals>
<cat/>
と<dog/>
要素は任意の順序で行くことができ、それらの数に制限はありません。しかし、少なくとも1つの<cat/>
と少なくとも1つの<dog/>
があることを確認する必要があります。私のXSDがどのように見えるか理解できません。
<xs:complexType name="animals">
<xs:choice minOccurs="1" maxOccurs="unbounded">
<xs:element name="cat" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="dog" minOccurs="1" maxOccurs="unbounded"/>
</xs:choice>
</xs:complexType>
何<cat/>
は、例えば、存在しないとき、それはすべてのエラーを表示しません:
これは私が試したものです。 XSD 1.1で
これが役立つかどうかを確認する:https://stackoverflow.com/questions/19863952/xml-schema-maxoccurs-within-choice-element/19871075一般的には、リンクの答えに示すように 'xs:all'グループを使うか、' xs:sequence'と 'xs:choice'の組み合わせを使うことができます。 – Meyer
@マイヤー私はそれを試みたが、私の特定の場合に何をすべきかまだ分かりません。私の例としてXSDを投稿できますか? – yegor256
xsd 1.1を使用できますか? – Kachna