我知道我可以使用
按属性名称选择节点//*[@attribute]
但是,如果我的属性是bar:resource
等命名空间,我该怎么做?
例如:
<foo:creator bar:resource="https://example/john">john</foo:creator>
答案 0 :(得分:1)
几乎相同的东西:
//*[@bar:resource]
此XPath选择具有@bar:resource
属性的所有节点。要使用它,您需要将名称空间uri和名称空间前缀(bar
)传递到XML / XPath引擎/处理器。
或者你可以使用纯XPath(虽然我不推荐这个):
//*[@*[local-name() = 'resource' and namespace-uri() = 'bar_namespace_uri']]