XMLは私を時々混乱させますが、私はこれを理解しています。ベンダーが私に言っていることは意味をなさないが、XMLと私は合わない。XMLは要素の順序を気にしますか?
ベンダーのWebサービスに送信するランダムな失敗をもたらす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>
私のXMLが有効かどうかを比較するXSLTまたはXSDはありません。
ドライバ#4が間違った領域にあるため、XMLが無効であることをベンダが示しています。ドライバのXPathはroot/Request/Driverで、Vehicleはroot/Request/Vehicleです。
特にXMLを比較するXSDがない場合、XMLパーサーが要素の順序を強制するのは一般的ですか?ベンダーのサポートは私のところに戻っていくのが遅いので、よくある実践が何であるか知りたい。
私はこれをテストすることができないについて、当社のアカウント担当者に十分な訴え(そしてそれは、彼らはお金だけをサポート取得しようとしていたような音製)それは開発者がXSDを持っていることが判明していること
フォローサポートはしません。だから私は間違ったグループ* facepalmに話していた*
私はXSDを手に入れ、要素の特定の順序を強制します。
今では、自分のサンプルに関してXMLと戦うために、XMLはスキーマに従わないが、少なくとも今は何かをテストする必要がある。
ベンダは、XSDまたは要素の順序を含むXML形式に関するソフトウェアの前提条件についての詳細なサポート文書を提供する必要があります。さもなければ、あなたは推測する必要があります。 XML文書を読み取るソフトウェアは、(可能な場合)注文を実施すべきではありませんが、それは珍しいことではありません。 XSD *は、インターチェンジ形式の規則を明示的に定義するドキュメンテーションです。 http://kettle.pentaho.com/も参照してください。 –