2010-04-09 248 views

回答

13

元素名稱的前綴ns0:是對(XML)NameSpace的引用。

在這種情況下(我認爲您在另一個問題中引用了XML片段),所討論的名稱空間定義爲:文檔中前面的xmlns:ns0="http://TestIndexMap.Employees"

本質上,這條線,字符串「NS0」(一本可以選擇最任何其他字符串)與特定的命名空間相關聯,顯然一個限定用於各種各樣的僱員的數據模式。
請注意,的URI(「http://TestIndexMap.Employees」)不對應於有效的在線資源的種類。 XML標準建議的識別命名空間的目的使用URI;這是因爲URI的控制,分佈式和分層的方式管理,防止可能的衝突,因爲會出現這種情況,我們將使用普通字符串,如「employee_data」。然而,不期望底層URI將作爲在線資源有效地存在。
(BTW這個特別的URI似乎假的,即不包括特定的領域,因此雖然不太可能在某個時候該文件可使用他們的名字空間相同的字符串等文件衝突使得可能的)。

簡而言之,命名空間被使用(除其他事項外),以防止在XML文檔使用的名稱可能發生的衝突。它們允許例如對於給定的文檔,包括兩個不同的,比如說,<price>元素,或者說,closed屬性,只要其中一人用一個命名空間以前定義的(實際上,即使沒有明確的命名空間前綴的一個所屬的前綴一個名稱空間:默認的)。