У меня есть следующий xml:
<product>
<name>beef</name>
<category>food</category>
<unknownfield1>..</unknownfield1>
<unknownfield2>..</unknownfield2>
</product>
Мне нужно проверить этот xml, чтобы убедиться, что корневым элементом является продукт, и он содержит необходимые имя и категорию элементов.Загвоздка в том, что она не всегда структурирована, как в приведенном выше примере.Это может быть так.
<product>
<category>food</category>
<unknownfield4>..</unknownfield4>
<name>beef</name>
<unknownfield4>..</unknownfield4>
</product>
Если структура не изменилась, я мог бы использовать следующее:
<xs:element name="product">
<xs:complexType>
<xs:sequence>
<xs:element name="name" type="xs:string" />
<xs:element name="category" type="xs:string" />
<xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
</xs:sequence>
</xs:complexType>
</xs:element>
, но это, очевидно, не работает, когда последовательность элементов неизвестна.Любая помощь по этому вопросу приветствуется.