[定義: 属性名が
PrefixedAttName
に一致する時、 そのNCName
が名前空間接頭辞となり、 その宣言が付された要素の適用範囲内の要素名や属性名を属性値中の名前空間名と関連付けるために使います。] XML名前空間 1.1
[10] 仕様書:
[2] >>1 の定義において、属性名・属性値というのは xmlns:foo="http://foo.example/" のような属性のものを指します。 つまり、この例でいうと foo が名前空間接頭辞になります。
[4] 次の2つの名前空間は、常に特定の接頭辞と結びつき、 暗黙のうちに宣言されているとみなされます。
xml | http://www.w3.org/XML/1998/namespace |
xmlns | http://www.w3.org/2000/xmlns/ |
また、 "XML"
から始まる名前空間接頭辞は
XML・関連規格での使用のために予約されていますから、
一般の用途には使えません。
[7] >>4 の内容は >>6 の正誤表で規定されているもので、
仕様書原文には違ったことが書かれています。
xml:
についてはほぼ同様ですが、
xmlns:
は名前空間名とは関係のない特別なものとされていました。
また、両名前空間接頭辞/名の特別な関係 (他の接頭辞/名と関連付けられない。) や暗示されているが明示しても良いこと、
"XML"
から始まるという予約接頭辞については曖昧であるか触れられていませんでした。
(正誤表を参照していない解説等は古い内容を基にしている可能性が高いですから、注意が必要です。)
[9] >>7 への補足。接頭辞 xml:
は陽に宣言することもできます (MAY) が、接頭辞 xmlns:
は陽に宣言することはできません (MUST NOT)。念のため。
[13] CSS Namespaces Module ( 版) <http://www.w3.org/TR/css3-namespace/#prefixes>
[11] Bug 7670 – Use of prefixes is too complicated for a Web technology ( 版) <http://www.w3.org/Bugs/Public/show_bug.cgi?id=7670#c43>
[12] Why bound prefixes are an anti-pattern in language design (Ian Hickson 著, 版) <http://lists.w3.org/Archives/Public/public-rdf-in-xhtml-tf/2009Aug/0035.html>
[14] RDF 1.1 Concepts and Abstract Syntax ( ( 版)) <https://dvcs.w3.org/hg/rdf/raw-file/default/rdf-concepts/index.html#dfn-namespace-prefix>