XML иногда смущает меня, но я пытаюсь понять это. То, что говорит мне продавец, не имеет смысла, но опять же, XML и я не ладим:)
У меня есть какой-то XML, который я отправляю в веб-сервис поставщика, который выдает мне случайные сбои:
<root>
<Request>
<Driver id="1" VehId="1">...</Driver>
<Driver id="2" VehId="1">...</Driver>
<Driver id="3" VehId="2">...</Driver>
<Vehicle id="1">...</Vehicle>
<Vehicle id="2">...</Vehicle>
<Driver id="4" VehId="2">...</Driver>
</Request>
</root>
Нет XSLT или XSD для сравнения, чтобы проверить, является ли мой XML действительным.
Поставщик заявляет, что XML является недопустимым, поскольку драйвер № 4 находится в неправильной области. XPath для драйвера должен быть root / Request / Driver, а Vehicle является root / Request / Vehicle.
Принято ли считать, что анализаторы XML будут вызывать порядок элементов, особенно если нет XSD для сравнения XML? Служба поддержки не успевает вернуться ко мне, поэтому я хочу знать, что такое обычная практика.
Followup
Я достаточно жаловался нашему представителю аккаунта на неспособность проверить это (и это выглядело так, будто они просто пытались получить деньги за поддержку), что оказывается, что у разработчиков есть XSD, а у поддержки нет. Так что я разговаривал не с той группой * facepalm *
Я получил XSD, и он навязывает определенный порядок элементов.
Теперь бороться с ними за их собственный пример XML не следует схеме, но, по крайней мере, теперь у меня есть что проверить.