2010-08-19 75 views
1

我有一个XML这看起来是这样的:如何查询基于它的父节点的属性值XML节点

<Library> 
<Author Name = "JRR Tolkien"> 
<Book Title = "Lord Of the Rings" /> 
<Book Title = "The Hobbit" /> 
</Author> 
<Author Name = "JK Rowling"> 
<Book Title = "Harry Potter and the Sorcerers Stone" /> 
<Book Title = "Harry Potter and the Prisoner of Azkaban" /> 
</Author> 
</Library> 

什么是XPath选择所有的“书”的父节点“作者”节点的值为“JK罗琳”?

回答

3

这是更适当的最直观和最严格的选择所有具有AuthorName属性为'JK Rowling'作为父级的图书。而Author也必须有Library作为父母。

/Library/Author[@Name='JK Rowling']/Book 
+1

+1为第二选项。 – 2010-08-19 08:09:14

+1

是的,第二个选项更清晰。我即将发布类似的东西,但你之前编辑了你的答案;) – 2010-08-19 08:12:08

+1

我完全同意你们两个。所以我删除了第一个,因为它没有任何好处。 – 2010-08-19 08:17:27

相关问题