xpath按id查找属性并获取属性父内容

时间:2013-02-15 10:40:23

标签: xpath

我有一个XML结构,如下所示:

<document>
<body>
<section>
<title>something</title>
<subtitle>Something again</subtitle>
<section>
<p xml:id="1234">Some text</p>
</section>
</section>
<section>
<title>something2</title>
<subtitle>Something again2</subtitle>
<section>
<p xml:id="12345678">Some text2</p>
</section>
</section>
</body>
</document>

我想要的是找到搜索属性xml:id包含12345678并且一旦找到,获取之前的兄弟(字幕)内容。 xpath有可能吗?我有这个:

//p[contains(@xml:id,'12345678')]/preceding-sibling::subtitle

1 个答案:

答案 0 :(得分:0)

如果我已正确理解帖子,对于您所放置的特定查询,预期答案为Something Again2。您可以使用以下查询执行此操作:

更新,因为文档架构已更改

//section[section/p[@xml:id="12345678"]]/subtitle