Ich habe eine XML-Datei in einer flachen Struktur. Wir kontrollieren nicht das Format dieser XML-Datei, sondern müssen nur damit umgehen. Ich habe die Felder umbenannt, weil sie stark domänenspezifisch sind und für das Problem keinen Unterschied machen.Navigieren zu Knoten mit Xpath in flacher Struktur
<attribute name="Title">Book A</attribute>
<attribute name="Code">1</attribute>
<attribute name="Author">
<value>James Berry</value>
<value>John Smith</value>
</attribute>
<attribute name="Title">Book B</attribute>
<attribute name="Code">2</attribute>
<attribute name="Title">Book C</attribute>
<attribute name="Code">3</attribute>
<attribute name="Author">
<value>James Berry</value>
</attribute>
Wichtige Dinge zu beachten: Die Datei ist nicht besonders hierarchisch. Bücher werden durch das Auftreten eines Attributelements mit name = 'Title' begrenzt. Der Name = 'Author'-Attributknoten ist jedoch optional.
Gibt es eine einfache Xpath-Anweisung, die ich verwenden kann, um die Autoren von Buch 'n' zu finden? Es ist leicht, den Titel des Buches 'n' zu identifizieren, aber der Wert des Autoren ist optional. Und Sie können nicht einfach den folgenden Autor nehmen, denn im Fall von Buch 2 würde dies den Autor für Buch 3 geben.
Ich habe eine Zustandsmaschine geschrieben, um dies als eine Reihe von Elementen zu analysieren, aber ich kann ' t helfen zu denken, dass es eine Möglichkeit gegeben hätte, die gewünschten Ergebnisse direkt zu erzielen.
Funktioniert in Notepad ++ XML-Tools. –