局所部分

局所名 (XML)

[10] XML名前空間において、名前空間接頭辞を除去した純粋な名前の部分を局所名 (local name) 局所部分 (local part) といいます。

目次

  1. 仕様書
  2. 呼称
  3. 定義
    1. XML 名前空間における定義
    2. XDM における定義
  4. 構文
    1. 予約名との関係
  5. Node 界面 localName 属性 (DOM)
  6. 局所名 (カスタム要素定義)
  7. 歴史

仕様書#

呼称#

[16] XML名前空間仕様自体では「局所部分」という名称を使っていますが、他の多くの仕様では 「局所名」と言っています。DOM属性の名前も localName です。

定義#

XML 名前空間における定義#

[6]

[定義: 名前N名前空間Iに属する場合と名前空間に属さない場合で、引用者による追記いずれの場合でも、局所名 (きょくしょめい) (local name) Nです。]

XDM における定義#

[17]

This document uses the phrase "namespace URI" to identify the concept identified in [Namespaces in XML] as "namespace name", and the phrase "local name" to identify the concept identified in [Namespaces in XML] as "local part".

構文#

[12] 修飾名 (QName) の後半、すなわち、 QName から名前空間接頭辞: を (あれば) 取り除いたものが局所名です。

[13] 局所名は、構文的には NCName です。 (具体的に使える文字の種類は XML名前空間 1.0XML名前空間 1.1 で異なります。)

[15] RDF などでは、 QName展開して1つの URI参照 (ないし IRI参照) として扱うことにしています。 そのような用途が想定される場合は、相互運用性の観点から、 ASCII に含まれない名前文字局所名の一部に使用しない方が好ましいかもしれません。

予約名との関係#

[14] 名前空間接頭辞がない場合 (既定名前空間に属する場合) には、局所名はそのものが1つの名前と見なされることになりますから、 最初の3文字が大文字または小文字の "XML" であってはなりません。そのような名前は W3C が予約しています。

名前空間接頭辞がある場合でも、既定名前空間を使った場合に予約名となってしまう "XML" から始まるものは使わない方が良いとされています。 (詳しくは XML 名前空間の仕様書をご覧下さい。)

Node 界面 localName 属性 (DOM)#

[1] DOM2 読み取り属性 Node.localName の値は、その節の局部名です (DOMString)。

[2] その節が要素節又は属性節のいずれでもない場合および DOM1 の method で作成された節の場合には、 null になります。

[3] >>2 DOM である節点が DOM 水準 1 の (名前空間を知らない) 節点なのか DOM 水準 2 以上の (名前空間を知っている) 節点なのかを判断するためには localNamenull かどうかを調べればいいことになっています。

[4] が、困ったことに Gecko は DOM 水準 1 の節点でも要素型名属性名localName にしている模様です。 (名無しさん 2005-05-13 11:07:46 +00:00)

[6] >>4 Operaも (確かSafariも) そう。

MSXMLは?

[7] >>4 DocumentTypelocalNameが常にnullらしい。

[8] WinIE7XMLHttpRequestresponseXML で返す XML DOM (MSXML?) は namespaceURIprefix がありますが、 localName はなぜかありません (undefined)。 nodeName修飾名があるので、そこから取るしかありません。

局所名 (カスタム要素定義)#

[19] カスタム要素定義は、局所名 (local name) を持ちます >>5

歴史#

[9] IRC logs: freenode / #whatwg / 20100906 ( ( 版)) <http://krijnhoetmer.nl/irc-logs/whatwg/20100906>