Итак, у меня есть следующие типы xsd
<xs:complexType name="nodeType">
<xs:sequence>
<xs:choice>
<xs:element name="c0" type="c0type"/>
<xs:element name="c1" type="c1type"/>
<xs:element name="c2" type="c2type"/>
<xs:element name="c3" type="c3type"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
<xs:element name="root">
<xs:complexType>
<xs:sequence>
<xs:element name="nodes">
<xs:complexType>
<xs:sequence>
<xs:element name="node" type="nodeType" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
теперь проблема, с которой я сталкиваюсь, заключается в том, что мне нужно, чтобы элемент «узел» существовал хотя бы один раз в «корневом» элементе и с выбранным элементом типа «c0type».
может встречаться любое количество комбинаций <node><c0 /></node>...<node><c3 /></node>
, но должна существовать по крайней мере 1 <node><c0 /><node>
Можно ли добиться этой проверки через xsd?
Спасибо
Киран