XPath: Wie wird in der Hierarchie aller untergeordneten Knoten nach einem Attributwert gesucht? - XML, XPath

beachte folgendes XML:

<parent no=1>
<child id=10>
<child id=101>
</child>
<child id=102>
<child id=10201>
I want this line.
</child>
</child>
</child>
</parent>
<parent no=2>
...
</parent>

Ich möchte den Wert des Elements child mit ID = 10201 abrufen, das sich unter Parent no = 1 befindet, und nicht den gesamten Pfad angeben. Ich meine, ich möchte den Knoten nicht so bekommen:

parent[@no=1]/child[@id=10]/child[@id=102]/child[@id=10201]

stattdessen, da ich ids pro Kind habe, sollte ich in der Lage sein, den Knoten direkt nach einer Bedingung zu holen, etwa so:

parent[@no=1]/*/child[@id=10201]

Wie kann ich das machen?

Antworten:

1 für die Antwort № 1

Ein Weg, es zu tun

// Kind [@id = 10201 und Vorfahr :: Eltern [@no = 1]]

und ein anderer, wie du es versucht hast

// Eltern [@no = 1] // Kind [@id = 10201]

Am beliebtesten