wake-up-neo.com

XPath, um ein Element basierend auf dem untergeordneten Wert des Kindes auszuwählen

Es wird versucht, ein Element basierend auf dem Wert eines der untergeordneten Elemente auszuwählen

Denken Sie an Folgendes, aber es funktioniert nicht, und bedanken Sie sich für jede Hilfe

./book[/author/name = 'John'] oder

./book[/author/name text() = 'John']

Willst du alle Bücher, bei denen der Autorenname = 'John'

XML-Datei

<list>
   <book>
      <author>
         <name>John</name>
         <number>4324234</number>
      </author>
      <title>New Book</title>
      <isbn>dsdaassda</isbn>
   </book>
   <book>...</book>
   <book>...</book>
</list>
191
James Walsh

Fast dort. In Ihrem Prädikat möchten Sie einen relativen Pfad, also ändern Sie

./book[/author/name = 'John'] 

entweder

./book[author/name = 'John'] 

oder

./book[./author/name = 'John'] 

und du wirst zu deinem Element passen. Ihr aktuelles Prädikat kehrt zum Stammverzeichnis des Dokuments zurück, um nach einem author zu suchen.

276
AakashM