Ich weiß, dass dies sehr alt ist, aber dennoch suche ich nach einer Möglichkeit, eine konservierte Reihenfolge von XML-Elementen zu gewährleisten.
Während alle aktuellen Parser die Reihenfolge beibehalten können, erfordert die XML-Definition dies in keiner Weise, und zukünftige Parser können die Reihenfolge komplett anders handhaben.
Es scheint die beste Lösung zu sein, die jetzt besteht, den Elementen ein "id" -Attribut zu geben, damit die Reihenfolge nach dem Parsen im Code verifiziert werden kann.
Ich hasse es, von meinen Benutzern verlangen zu müssen, eine beliebige ID="1", id="2" usw. hinzuzufügen, wenn die Reihenfolge in der XML-Datei bereits offensichtlich ist, aber soweit ich weiß, gibt es keinen offiziellen Standard in XML, um eine bestimmte Reihenfolge für Wiederholungselemente zu erfordern.
Aktualisieren
Wenn Sie .NET verwenden, können Sie festlegen, in welcher Reihenfolge solche Elemente gelesen werden sollen. So lange, wie Sie wissen, wo Ihr XML analysiert wird, und der Parser unterstützt die Durchsetzung Wenn das Element so angeordnet ist, wie Sie es benötigen, kann die Reihenfolge erzwungen werden.
Wenn jedoch ein Drittanbieter Ihre Ergebnisse mit seinem eigenen Parser übernehmen und versuchen würde, Ihre Ergebnisse zu replizieren, könnte dies Verwirrung stiften, da dieser Auftrag an anderer Stelle und nicht im XML-Code konfiguriert ist. Daher würde keine andere Parser-Implementierung dies nutzen bestellen.
Dies kann also zusammengefasst werden: (a) Die Reihenfolge kann nicht innerhalb der XML-Spezifikation selbst durchgesetzt werden, aber (b) Die Reihenfolge kann und wird oft von einer großen Anzahl von XML-Parsern erzwungen.