Ich habe ein XML-Dokument wie folgt:Sortierung XPath Ergebnisse in der gleichen Reihenfolge wie mehrere Parameter auswählen
doc.xpath("//object[@uid=2 or @uid=0 or @uid=1]")
Aber das gibt die:
<objects>
<object uid="0" />
<object uid="1" />
<object uid="2" />
</objects>
ich mehrere Elemente mithilfe der folgenden Abfrage auswählen können Elemente in der gleichen Reihenfolge, in der sie im XML-Dokument deklariert sind (uid = 0, uid = 1, uid = 2) und die Ergebnisse in der gleichen Reihenfolge wie die XPath-Abfrage (uid = 2, uid = 0, uid = 1).
Ich bin nicht sicher, ob das mit XPath allein möglich ist, und habe in XSLT-Sortierung geschaut, aber ich habe kein Beispiel gefunden, das erklärt, wie ich das erreichen konnte.
Ich arbeite in Ruby mit der Nokogiri-Bibliothek.
Gute Frage, +1. Sehen Sie meine Antwort für eine Erklärung und zwei verschiedene Lösungen: eine XPath 2.0 und eine XSLT 1.0 Lösung. –