2013-10-11 186 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()並在冒號前面提取該部分。 –