2013-10-11 48 views
1

对于以下XML实例的命名空间前缀和命名空间的结合:获取XML元素

<foo:a xmlns:foo="http://foo"> <b> whatever </b> </foo:a> 

人们可以利用local-name(/*)name(/*) XPath表达式来获得afoo:a分别(如图this SO post)。

是否有任何XPath表达式:

  • 让我命名空间中的根 - 或者任何其它 - 元素的结合(http://foo
  • 直接拿到我的根 - 或者任何其他的命名空间前缀 - 元素(foo
+0

你的XML真的有反斜杠吗? –

+1

我编辑了你的标题。请参阅:“[应该在其标题中包含”标签“](http://meta.stackexchange.com/questions/19190/)”,其中的共识是“不,他们不应该”。 –

+0

@JohnSaunders重写了反斜杠,没有我的错我复制粘贴从代码中的字符串文字的XML,现在已经修复。 –

回答

1

您可以使用命名空间URI:

namespace-uri(/*) 
+0

至于另一个问题,获取前缀的唯一方法是使用name()并在冒号前面提取该部分。 –