Элемент последовательности означает, что отдельные элементы (а не элементы в массиве) должны сохранять порядок.
Например,
<xs:element name="GetIEnumerableResponse">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="GetIEnumerableResult" nillable="true" xmlns:q4="http://schemas.microsoft.com/2003/10/Serialization/Arrays" type="q4:ArrayOfstring" />
<xs:element name="Dummy" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
В этом примере Dummy появляется после GetIEnumerableResult в последовательности, и для проверки он всегда должен появляться в этом заказ в этом сложном виде.
Порядок «повторяющихся» элементов в сложном типе «ArrayOfString» не может быть принудительно применен в схеме, и поскольку массивы не подразумевают и не обеспечивают какого-либо явного порядка, семантика порядка также не гарантируется в CLR.
Один из способов гарантировать порядок - навести порядок в коллекции путем сериализации индекса.
Строковые элементы могут встречаться в любом порядке - поскольку для схемы они все одинаковы
Это действительно зависит от контекста. В чистом виде XML предоставленные вами фрагменты семантически эквивалентны независимо от порядка. Но когда вы (де) сериализуете вещи с помощью XML, может быть смысл, связанный с порядком элементов.
В этом случае XML-документы семантически эквивалентны тогда и только тогда, когда результирующие массивы семантически эквивалентны.
1115628]