public interface NamedNodeMap
NamedNodeMap
インタフェースを実装するオブジェクトは、名前を指定してアクセスできるノードのコレクションを表すために使用されます。 NamedNodeMap
はNodeList
を継承しません。NamedNodeMaps
は特定のどの順序でも管理されません。 NamedNodeMap
を実装するオブジェクトに含まれるオブジェクトにも順序インデックスを使用してアクセスできますが、これは単にNamedNodeMap
のコンテンツを列挙しやすくするためであって、DOMがこれらのNodeの順序を指定するということではありません。
DOM内のNamedNodeMap
オブジェクトはライブ・オブジェクトです。
「Document Object Model (DOM) Level 3 Core Specification」も参照してください。
-
メソッドのサマリー
修飾子と型メソッド説明int
このマップ内のノード数です。getNamedItem(String name)
指定された名前のノードを取得します。getNamedItemNS(String namespaceURI, String localName)
指定されたローカル名と名前空間URIを持つノードを取得します。item(int index)
マップ内のindex
番目の項目を返します。removeNamedItem(String name)
指定された名前のノードを削除します。removeNamedItemNS(String namespaceURI, String localName)
指定されたローカル名と名前空間URIで指定されたノードを削除します。setNamedItem(Node arg)
nodeName
属性を使用してノードを追加します。setNamedItemNS(Node arg)
namespaceURI
とlocalName
を使用してノードを追加します。
-
メソッドの詳細
-
getNamedItem
指定された名前のノードを取得します。- パラメータ:
name
- 取得するノードのnodeName
。- 戻り値:
- 指定された
nodeName
を持つ任意の型のNode
。このマップ内のどのノードも特定されない場合はnull
。
-
setNamedItem
Node setNamedItem(Node arg) throws DOMExceptionnodeName
属性を使用してノードを追加します。 指定した名前のノードがすでにマップ内に存在する場合は、そのノードは新規のノードで置き換えられます。 ノードをノード自体で置換しても影響はまったくありません。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に属さないノードを追加しようとした場合に発生します。 たとえば、Attr以外のノードをElementの属性マップに挿入しようとしたり、Entity以外のノードをDocumentTypeのエンティティ・マップに挿入しようとしたりした場合が考えられます。
-
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」など)をサポートしていない場合に発生する場合があります。- 導入されたバージョン:
- 1.4、DOMレベル2
-
setNamedItemNS
Node setNamedItemNS(Node arg) throws DOMExceptionnamespaceURI
とlocalName
を使用してノードを追加します。 このマップに名前空間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に属さないノードを追加しようとした場合に発生します。 たとえば、Attr以外のノードをElementの属性マップに挿入しようとしたり、Entity以外のノードをDocumentTypeのエンティティ・マップに挿入しようとしたりした場合が考えられます。
NOT_SUPPORTED_ERR: 実装が「XML」機能をサポートしておらず、文書を通じて公開された言語がXML名前空間(「HTML 4.01」など)をサポートしていない場合に発生する場合があります。- 導入されたバージョン:
- 1.4、DOMレベル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: このマップ内に指定されたnamespaceURI
とlocalName
を持つノードがない場合に発生します。
NO_MODIFICATION_ALLOWED_ERR: このマップが読取り専用の場合に発生します。
NOT_SUPPORTED_ERR: 実装が「XML」機能をサポートしておらず、文書を通じて公開された言語がXML名前空間(「HTML 4.01」など)をサポートしていない場合に発生する場合があります。- 導入されたバージョン:
- 1.4、DOMレベル2
-