Это вопрос схемы XML.
Я знаю, что элемент xsd:all
не может появляться в последовательности (должен быть элемент верхнего уровня его типа).
То есть я не могу использовать следующее:
<xsd:complexType name="Application">
<xsd:sequence>
<xsd:element ref="Name"></xsd:element>
<xsd:all>
<xsd:element ref="ADD"></xsd:element>
<xsd:element ref="DELETE"></xsd:element>
</xsd:all>
</xsd:sequence>
</xsd:complexType>
Мой вопрос заключается в том, как объявить элементы "ADD" и "DELETE" выше в любом порядке (неупорядоченный набор), но все же убедитесь, что элемент "Имя" будет первым и всегда появится. (Подумайте о ситуации, когда у меня есть не только "ADD" и "DELETE", но и 10 или более неупорядоченных элементов: ADD, DELETE, EDIT и т.д.)
ВАЖНОЕ ПРИМЕЧАНИЕ: ADD и DELETE могут появляться только один раз, но их порядок не имеет значения:
<Application>
<NAME>
<DELETE>
<ADD>
</Application>
но NOT:
<Application>
<NAME>
<DELETE>
<ADD>
<DELETE> <!--cannot appear twice-->
</Application>