JavaTM 2 Platform
Standard Ed. 5.0

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 2 Platform
Standard Ed. 5.0

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

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