简单的Xpath过滤器

时间:2015-03-23 15:37:53

标签: xml xpath

我有一个简单的XML,其中包含一系列书籍:

<catalog>
   <book id="bk101">
      <author>Gambardella, Matthew</author>
      <title>XML Developer's Guide</title>
      <genre>Computer</genre>
      <price>9.95</price>
      <publish_date>2000-10-01</publish_date>
      <description>An in-depth look at creating applications 
      with XML.</description>
   </book>
. . .
</catalog>

我想列出价格<10的所有书籍。所以我构建了以下表达式:

/catalog/book//price < 10

当进入XPath测试器窗口时,返回“True”。我希望有一本书的清单。 如何调整XPath表达式来修复它? 谢谢!

1 个答案:

答案 0 :(得分:2)

您的表达式是正确的,但它会评估为布尔值,正如您所注意到的那样,该值为true或false。你需要的是一个表达式,它计算一组节点:

/catalog/book[price < 10]

[]之间的部分称为谓词,它实际上是一个“过滤器”。