5

xml:

<root0>
    <elem1>
        <elem21 xlink:href="21"/>
        <elem22>
            <elem31 xlink:href="31"/>
            <elem32>
                <elem41 xlink:href="41"/>
            </elem32>
        </elem22>
    </elem1>
</root0>

深度未知。如何选择具有 xlink:href 属性的所有元素?

我尝试了以下方法:

*[@xlink:href]
self::*[@xlink:href]

任何指导表示赞赏。

4

2 回答 2

4

只供孙子使用

descendant-or-self::*[@xlink:href]

对于所有节点,只需在 xpath 前面添加 //

//*[@xlink:href]

此外,您的 xml 示例无效,但我猜它只是一个示例。

于 2011-06-09T03:09:12.157 回答
0

*[@xlink:href]应该管用。您很可能没有定义xlink命名空间。

如果您发布代码,那么我的答案可以更准确。

于 2011-06-09T03:17:49.573 回答