JavaTM Platform
Standard Ed. 6

org.w3c.dom
インタフェース NamedNodeMap


public interface NamedNodeMap

NamedNodeMap インタフェースを実装するオブジェクトは、名前を指定してアクセスできるノードのコレクションを表します。NamedNodeMapNodeList を継承しません。つまり、特定の順序で管理されることがありません。 NamedNodeMap を実装するオブジェクトに含まれるオブジェクトにも順序インデックスを使用してアクセスできますが、これは単に NamedNodeMap のコンテンツを列挙しやすくするためであって、DOM がこれらの Node の順序を指定するということではありません。

DOM 内の NamedNodeMap オブジェクトはライブオブジェクトです。

「Document Object Model (DOM) Level 3 Core Specification」を参照してください。


メソッドの概要
 int getLength()
          このマップ内のノード数です。
 Node getNamedItem(String name)
          指定された名前のノードを取得します。
 Node getNamedItemNS(String namespaceURI, String localName)
          指定されたローカル名と名前空間 URI を持つノードを取得します。
 Node item(int index)
          マップ内の index 番目の項目を返します。
 Node removeNamedItem(String name)
          指定された名前のノードを削除します。
 Node removeNamedItemNS(String namespaceURI, String localName)
          指定されたローカル名と名前空間 URI で指定されたノードを削除します。
 Node setNamedItem(Node arg)
          nodeName 属性を使用してノードを追加します。
 Node setNamedItemNS(Node arg)
          namespaceURIlocalName を使用してノードを追加します。
 

メソッドの詳細

getNamedItem

Node getNamedItem(String name)
指定された名前のノードを取得します。

パラメータ:
name - 取得するノードの nodeName
戻り値:
指定された nodeName を持つ任意の型の Node。 このマップ内のノードが特定されない場合は null

setNamedItem

Node setNamedItem(Node arg)
                  throws DOMException
nodeName 属性を使用してノードを追加します。ノードは、その名前がすでにこのマップ内に存在する場合、新しいノードに置き換えられます。ノードをノード自体で置換しても影響はまったくありません。
nodeName 属性はノードの格納名を取得するので、「特殊な」文字列値を持つ特定の型のノードを複数個格納することはできません。 これは、名前の競合が起きてしまうためです。複数のノードを格納する必要がある場合はノードに別名を付けます。

パラメータ:
arg - このマップに格納するノード。このノードには、あとで nodeName 属性の値を使ってアクセスできる
戻り値:
既存のノードが新しい Node で置き換えられる場合は 置き換えの対象となる Node。それ以外の場合は null
例外:
DOMException - WRONG_DOCUMENT_ERR:arg が、このマップを作成した文書とは 異なる文書から作成された場合
NO_MODIFICATION_ALLOWED_ERR:このマップが読み取り専用の場合
INUSE_ATTRIBUTE_ERR:arg がすでに別の Element オブジェクトの属性である Attr である場合。Attr ノードをほかの要素で再利用するには、 このノードを DOM ユーザーの手で明示的に複製する必要がある
HIERARCHY_REQUEST_ERR:この NamedNodeMap に所属しないノードを 追加しようとした場合。たとえば、 Element の属性のマップに Attr ノード以外を挿入しようとした場合、 あるいは DocumentType の Entity のマップに Entity ノード以外を挿入しようとした 場合

removeNamedItem

Node removeNamedItem(String name)
                     throws DOMException
指定された名前のノードを削除します。このマップに要素に追加された属性が含まれているとき、削除された属性にデフォルト値があるならば、名前空間 URI、ローカル名、接頭辞 (適切な場合) のほかにデフォルト値を持つ新しい属性が即座に作成されます。

パラメータ:
name - 削除するノードの nodeName
戻り値:
このマップから削除するノード (指定された名前のノードが存在する 場合)
例外:
DOMException - NOT_FOUND_ERR:このマップに name という名前のノードがない 場合
NO_MODIFICATION_ALLOWED_ERR:このマップが読み取り専用の場合

item

Node item(int index)
マップ内の index 番目の項目を返します。index がこのマップ内のノード数と同じかそれよりも大きい場合は null を返します。

パラメータ:
index - このマップのインデックス
戻り値:
マップ内の index 番目の位置にあるノード。 インデックスが有効でない場合は null

getLength

int getLength()
このマップ内のノード数です。有効な子ノードインデックスの範囲は 0 以上 length-1 以下です。


getNamedItemNS

Node getNamedItemNS(String namespaceURI,
                    String localName)
                    throws DOMException
指定されたローカル名と名前空間 URI を持つノードを取得します。
名前空間を保有しない場合は、XML 名前空間に従って、アプリケーションでメソッドの namespaceURI に null 値を使用する必要があります。

パラメータ:
namespaceURI - 取得するノードの名前空間 URI
localName - 取得するノードのローカル名
戻り値:
指定されたローカル名と名前空間 URI を持つ任意の型の Node。 このマップ内のノードが特定されない場合は null
例外:
DOMException - NOT_SUPPORTED_ERR:実装が「XML」機能をサポートしておらず、 文書を通じて公開された言語が XML 名前空間 (「HTML 4.01」など) をサポートしていない場合
導入されたバージョン:
DOM Level 2

setNamedItemNS

Node setNamedItemNS(Node arg)
                    throws DOMException
namespaceURIlocalName を使用してノードを追加します。このマップに名前空間 URI とローカル名を持つノードがすでに存在する場合、新しいノードに置き換えられます。ノードをノード自体で置換しても影響はまったくありません。
名前空間を保有しない場合は、XML 名前空間に従って、アプリケーションでメソッドの namespaceURI に null 値を使用する必要があります。

パラメータ:
arg - このマップに格納するノード。このノードには、あとで namespaceURI 属性と localName 属性の値を使用して アクセスできる
戻り値:
既存のノードが新しい Node で置き換えられる場合は 置き換えの対象となる Node。それ以外の場合は null
例外:
DOMException - WRONG_DOCUMENT_ERR:arg が、このマップを作成した文書とは 異なる文書から作成された場合
NO_MODIFICATION_ALLOWED_ERR:このマップが読み取り専用の場合
INUSE_ATTRIBUTE_ERR:arg がすでに別の Element オブジェクトの属性である Attr である場合。Attr ノードをほかの要素で再利用するには、 このノードを DOM ユーザーの手で明示的に複製する必要がある
HIERARCHY_REQUEST_ERR:この NamedNodeMap に所属しないノードを 追加しようとした場合。たとえば、 Element の属性のマップに Attr ノード以外を挿入しようとした場合、 あるいは DocumentType の Entity のマップに Entity ノード以外を挿入しようとした 場合
NOT_SUPPORTED_ERR:実装が「XML」機能をサポートしておらず、 文書を通じて公開された言語が XML 名前空間 (「HTML 4.01」など) をサポートしていない場合
導入されたバージョン:
DOM Level 2

removeNamedItemNS

Node removeNamedItemNS(String namespaceURI,
                       String localName)
                       throws DOMException
指定されたローカル名と名前空間 URI で指定されたノードを削除します。このマップに要素に追加された属性が含まれているとき、削除された属性が Node インタフェースの attributes 属性によって返されるデフォルト値を持つならば、対応する名前空間 URI、ローカル名、接頭辞 (適切な場合) のほかにデフォルト値を持つ新しい属性が即座に作成されます。
名前空間を保有しない場合は、XML 名前空間に従って、アプリケーションでメソッドの namespaceURI に null 値を使用する必要があります。

パラメータ:
namespaceURI - 削除するノードの名前空間 URI
localName - 削除するノードのローカル名
戻り値:
このマップから削除するノード (指定されたローカル名および名前空間 URI を持つノードが存在する場合)
例外:
DOMException - NOT_FOUND_ERR:指定された namespaceURIlocalName を持つノードがこのマップにない場合
NO_MODIFICATION_ALLOWED_ERR:このマップが読み取り専用の場合
NOT_SUPPORTED_ERR:実装が「XML」機能をサポートしておらず、 文書を通じて公開された言語が XML 名前空間 (「HTML 4.01」など) をサポートしていない場合
導入されたバージョン:
DOM Level 2

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。