2016-06-09 60 views
0

我試圖找到'name'節點=='包3'的'comment'節點。以前我使用的是rpc-reply/blah/blah-blah/information/package-information[3],但我正在尋找一種更強大的方法,它可以過濾「名稱」​​並返回相關的「評論」。帶公共父項的Xpath元素

我做了一些googleing,發現'Kaysian方法'可能是我一直在尋找的,但是我無法應用/理解它。

要句話我以另一種方式的問題,下面會澄清我後:

SELECT comment WHERE name = 'package 3' FROM rpc-reply//package-information

<rpc-reply> 
<blah> 
    <blah-blah> 
     <information> 
      <package-information> 
       <name>package 1</name> 
       <comment>44565545</comment> 
      </package-information> 
      <package-information> 
       <name>package-2</name> 
       <comment>6859887</comment> 
      </package-information> 
      <package-information> 
       <name>package 3</name> 
       <comment>5548845</comment> 
      </package-information> 
      <package-information> 
       <name>package 4</name> 
       <comment>548878</comment> 
      </package-information> 
     </information> 
    </blah-blah> 
</blah> 
</rpc-reply> 

回答

0

選擇package-information元素,其名稱爲package 3,然後再往評論:

/rpc-reply/blah/blah-blah/information/package-information[name='package 3']/comment 
+0

是否有一個方法到右向下跳到包信息,如: 'RPC應答//包信息[名稱= '封裝3']/comment' – user3770935

+0

@ user3770935是的,'//'發現任何後代 – wero

0

另一種可能的解決方案:

//name[contains(text(), 'package 3')]/following-sibling::comment