XSD - разрешить один конкретный элемент несколько раз, а другим - только один раз
Я пытаюсь создать complexType
в котором я могу написать следующее:
<MyType>
<tag1>Something</tag1>
<tag2>Tag 1</tag2>
<tag2>Tag 2</tag2>
<tag3>Another something</tag3>
</MyTpe>
В основном я хочу иметь возможность указывать теги в произвольном порядке, но я могу указать tag2
неограниченное количество раз. Как я могу это сделать?
Я уже попробовал choice
, но кажется, что это позволит любому элементу неограниченное количество раз.
Вот соответствующая часть моего XSD:
<xsd:complexType name="MyType">
<xsd:all>
<xsd:element name="tag1" />
<xsd:element name="tag3" />
</xsd:all>
<xsd:choice maxOccurs="unbounded">
<xsd:element maxOccurs="unbounded" name="tag2" />
</xsd:choice>
</xsd:complexType>