2009-07-10 51 views
0

我有一些XML,我正在努力寻找:使用属性进行复杂的XPath搜索?

<debts> 
     <section id="24" description="YYYYY"> 
     <section id="28" description="xxx"> 
      <section id="31" description="xxx"> 
       <account accountNumber="2312323" creditorId="1" amount="1200" proposedAmount="1000" percentage="11" owner="2"> 
        <foo/> 
       </account> 
      </section> 
      <section id="32" description="xxx"/> 
      <section id="33" description="xxx"/> 
     </section> 
     <section id="29" description="xxx"> 
      <section id="34" description="xxx"/> 
     </section> 
     <section id="30" description="xxx"> 
      <section id="37" description="xxx"/> 
      <section id="38" description="xxx"/> 
      <section id="39" description="xxx"/> 
     </section> 
    </section> 
</debts> 

从本质上讲,我试图做的,就是找到所有坐在部分YYYYY下(这是很可能不是该帐户节点只有该级别的节点)。我怎样才能做到这一点使用XPath(特别是我使用on Rails的角度来说,Hpricot)

回答

3

试试这个:

/debts//section[@description='YYYYY']//account 

http://www.bit-101.com/xpath/有一个很好的工具来测试XPath查询。

+0

+1 - 为了完整起见:这将查找* all *节点节点中所有具有“YYYYY”描述的帐户节点。 – Tomalak 2009-07-10 13:31:28