web-dev-qa-db-ja.com

子の子の値に基づいて要素を選択するXPath

子のいずれかの値に基づいて要素を選択しようとしています

次のことを考えているが機能していない、助けてくれてありがとう、ありがとう

./book[/author/name = 'John']または

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

著者名が「John」であるすべての書籍が必要

XMLファイル

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

ほぼそこに。述部では、相対パスが必要なので、変更します

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

どちらかに

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

または

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

そして、あなたの要素と一致します。現在の述語は、ドキュメントのルートに戻り、authorを探します。

269
AakashM