Common DOM API

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

すべてのスーパーインタフェース:
Node
既知のサブインタフェースの一覧:
HTMLAnchorElement, HTMLAppletElement, HTMLAreaElement, HTMLBaseElement, HTMLBaseFontElement, HTMLBodyElement, HTMLBRElement, HTMLButtonElement, HTMLDirectoryElement, HTMLDivElement, HTMLDListElement, HTMLElement, HTMLFieldSetElement, HTMLFontElement, HTMLFormElement, HTMLFrameElement, HTMLFrameSetElement, HTMLHeadElement, HTMLHeadingElement, HTMLHRElement, HTMLHtmlElement, HTMLIFrameElement, HTMLImageElement, HTMLInputElement, HTMLIsIndexElement, HTMLLabelElement, HTMLLegendElement, HTMLLIElement, HTMLLinkElement, HTMLMapElement, HTMLMenuElement, HTMLMetaElement, HTMLModElement, HTMLObjectElement, HTMLOListElement, HTMLOptGroupElement, HTMLOptionElement, HTMLParagraphElement, HTMLParamElement, HTMLPreElement, HTMLQuoteElement, HTMLScriptElement, HTMLSelectElement, HTMLStyleElement, HTMLTableCaptionElement, HTMLTableCellElement, HTMLTableColElement, HTMLTableElement, HTMLTableRowElement, HTMLTableSectionElement, HTMLTextAreaElement, HTMLTitleElement, HTMLUListElement

public interface Element
extends Node

Element インタフェースは、HTML または XML ドキュメントの要素を表します。要素は、ドキュメントに関連付けられた属性を持っています。Element インタフェースは Node から継承するので、一般的な Node インタフェース属性 attributes は、要素のすべての属性セットを取得するために使用されます。Element インタフェースには、名前によって Attr オブジェクトを取得するか、名前によって属性値を取得するメソッドがあります。XML では、属性値にエンティティ参照が含まれる場合、属性値を表すかなり複雑なサブツリーを調べるために Attr オブジェクトを取得する必要があります。一方 HTML では、すべての属性が簡単な文字列の値を持つところでは、直接属性値にアクセスするメソッドが便利かつ安全に使用できなければなりません。DOM Level 2 では、normalize メソッドが移動した Node インタフェースから継承されます。

詳細については、 「Document Object Model (DOM) Level 2 Core Specification」 も参照してください。


フィールドの概要
 
インタフェース org.w3c.dom.Node から継承したフィールド
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE
 
メソッドの概要
 String getAttribute(String name)
          属性値を名前で取得します。
 Attr getAttributeNode(String name)
          指定された名前を持つ属性ノードを取得します。
 Attr getAttributeNodeNS(String namespaceURI, String localName)
          ローカル名と名前空間 URI を指定して Attr ノードを取得します。
 String getAttributeNS(String namespaceURI, String localName)
          ローカル名と名前空間 URI を指定して属性値を取得します。
 NodeList getElementsByTagName(String name)
          指定されたタグ名を持つすべての子孫 Elements が格納された NodeList を返しますが、これらの要素は、Element ツリーのあらかじめ順序が決められたトラバーサルで得られた順番で格納されます。
 NodeList getElementsByTagNameNS(String namespaceURI, String localName)
          指定されたローカル名と名前空間 URI を持つすべての子孫 Elements が格納された NodeList を返しますが、それらの要素は、この Element ツリーの行きがけ順トラバーサルで得られた順番で格納されます。
 String getTagName()
          たとえば、要素の名前は次のようになります。
 boolean hasAttribute(String name)
          指定された名前がこの要素で指定されているか、またはデフォルト値を持つ場合は true、そうでない場合は false を返します。
 boolean hasAttributeNS(String namespaceURI, String localName)
          指定されたローカル名と名前空間 URI を持つ属性がこの要素に指定されている場合、またはその属性がデフォルト値を持つ場合は true を返し、そうでない場合は false を返します。
 void removeAttribute(String name)
          指定された名前を持つ属性を削除します。
 Attr removeAttributeNode(Attr oldAttr)
          指定された属性ノードを削除します。
 void removeAttributeNS(String namespaceURI, String localName)
          ローカル名と名前空間 URI を指定して属性を削除します。
 void setAttribute(String name, String value)
          新しい属性を追加します。
 Attr setAttributeNode(Attr newAttr)
          新しい属性ノードを追加します。
 Attr setAttributeNodeNS(Attr newAttr)
          新しい属性を追加します。
 void setAttributeNS(String namespaceURI, String qualifiedName, String value)
          新しい属性を追加します。
 
インタフェース org.w3c.dom.Node から継承したメソッド
appendChild, cloneNode, getAttributes, getChildNodes, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, hasAttributes, hasChildNodes, insertBefore, isSupported, normalize, removeChild, replaceChild, setNodeValue, setPrefix
 

メソッドの詳細

getTagName

public String getTagName()
たとえば、要素の名前は次のようになります。
 <elementExample 
 id="demo"> ... </elementExample> , 
tagName は、値 "elementExample" を持ちます。これは、DOM のすべてのオペレーションと同様に XML では大文字小文字を区別します。HTML DOM は、HTML ソースドキュメントの文字形式にかかわらず、HTML 要素の tagName を標準的な大文字形式で返します。


getAttribute

public String getAttribute(String name)
属性値を名前で取得します。

パラメータ:
name - 取得する属性の名前
戻り値:
指定された属性値が指定値またはデフォルト値のどちらかを持つ場合は Attr の値 (文字列)、そうでない場合は空の文字列

setAttribute

public void setAttribute(String name,
                         String value)
                  throws DOMException
新しい属性を追加します。その名前を持つ属性がすでに要素にある場合は、その値は値パラメータの値に変更されます。この値は簡単な文字列で、設定されたとおりに構文解析されません。したがって、すべてのマークアップ (エンティティ参照として認識される構文など) がリテラル文字列として扱われ、書き出されるときには実装によって適切にエスケープされる必要があります。エンティティ参照を含む属性値を割り当てるためには、ユーザは Attr ノードに任意の TextEntityReference ノードを加え、適切なサブツリーを構築し、それを setAttributeNode を使って属性値として設定する必要があります。
修飾名と名前空間 URI を持つ属性を設定するには、setAttributeNS メソッドを使います。

パラメータ:
name - 作成または変更する属性名
value - 設定する文字列値
例外:
DOMException - INVALID_CHARACTER_ERR: 指定された名前に不正な文字が含まれている場合に発行される
NO_MODIFICATION_ALLOWED_ERR: このノードが読み取り専用の場合に発行される

removeAttribute

public void removeAttribute(String name)
                     throws DOMException
指定された名前を持つ属性を削除します。削除する属性がデフォルト値を持っている場合、そのデフォルト値と、それに対応する名前空間 URI、ローカル名、および接頭辞を含む、新しい属性が追加されます。
ローカル名と名前空間 URI を指定して属性を削除するには、removeAttributeNS メソッドを使います。

パラメータ:
name - 削除する属性の名前
例外:
DOMException - NO_MODIFICATION_ALLOWED_ERR: このノードが読み取り専用の場合に発行される

getAttributeNode

public Attr getAttributeNode(String name)
指定された名前を持つ属性ノードを取得します。
修飾名と名前空間 URI を指定して属性ノードを取得するには、getAttributeNodeNS メソッドを使います。

パラメータ:
name - 取得する属性の名前 (nodeName)
戻り値:
指定された名前 (nodeName) を持つ属性が存在する場合はその Attr ノード、そうでない場合は null

setAttributeNode

public Attr setAttributeNode(Attr newAttr)
                      throws DOMException
新しい属性ノードを追加します。同じ名前 ( nodeName) の属性が要素内にすでに存在する場合、その既存の属性は新しい属性で置換されます。
修飾名と名前空間 URI を指定して新しい属性ノードを追加するには、setAttributeNodeNS メソッドを使います。

パラメータ:
newAttr - 属性リストに追加する Attr ノード
戻り値:
newAttr 属性が既存の属性を置き換える場合は置き換えられた Attr ノード、そうでない場合は null
例外:
DOMException - WRONG_DOCUMENT_ERR: newAttr を作成したドキュメントがこの要素を作成したドキュメントと異なっている場合に発行される
NO_MODIFICATION_ALLOWED_ERR: このノードが読み取り専用の場合に発行される
INUSE_ATTRIBUTE_ERR: newAttr がすでに別の Element オブジェクトの属性として使われている場合に発行される。DOM ユーザは、目的の Attr ノードを明示的にコピーしないと、ほかの要素内でそれを再利用できない

removeAttributeNode

public Attr removeAttributeNode(Attr oldAttr)
                         throws DOMException
指定された属性ノードを削除します。削除する Attr がデフォルト値を持っている場合は、直ちに置き換えられます。置き換える属性は、元の接頭辞 (適用可能な場合) とともに、同じ URI 名前空間とローカル名を持ちます。

パラメータ:
oldAttr - 属性リストから削除する Attr ノード
戻り値:
削除された Attr ノード
例外:
DOMException - NO_MODIFICATION_ALLOWED_ERR: このノードが読み取り専用の場合に発行される
NOT_FOUND_ERR: oldAttr がその要素の属性でない場合に発行される

getElementsByTagName

public NodeList getElementsByTagName(String name)
指定されたタグ名を持つすべての子孫 Elements が格納された NodeList を返しますが、これらの要素は、Element ツリーのあらかじめ順序が決められたトラバーサルで得られた順番で格納されます。

パラメータ:
name - 一致させるタグ名。特殊な値 "*" はすべてのタグに一致する
戻り値:
一致する Element ノードのリスト

getAttributeNS

public String getAttributeNS(String namespaceURI,
                             String localName)
ローカル名と名前空間 URI を指定して属性値を取得します。
XML 機能をサポートしないドキュメントで呼び出せるのは、DOM Level 1 の要素または属性を作成・設定するメソッドだけです。したがって、XML 機能をサポートしない DOM で null 以外の名前空間 URI が指定された場合、それに一致するノードが検出されることはありません。

パラメータ:
namespaceURI - 取得する属性の名前空間 URI
localName - 取得する属性のローカル名
戻り値:
指定された属性値が指定値またはデフォルト値のどちらかを持つ場合は Attr の値 (文字列)、そうでない場合は空の文字列
導入されたバージョン:
DOM Level 2

setAttributeNS

public void setAttributeNS(String namespaceURI,
                           String qualifiedName,
                           String value)
                    throws DOMException
新しい属性を追加します。同じローカル名と URI 名前空間を持つ属性がすでに要素にある場合は、その接頭辞が qualifiedName の接頭辞部に変更され、その値が value パラメータに変更されます。この値は簡単な文字列です。設定されたとおりに構文解析されません。このように、すべてのマークアップ (エンティティ参照として認識される構文など) がリテラル文字列として扱われ、書き出されるときには実装によって適切にエスケープされる必要があります。エンティティ参照を含む属性値を割り当てるためには、ユーザは Attr ノードに任意の TextEntityReference ノードを加え、適切なサブツリーを構築し、setAttributeNodeNS または setAttributeNode を使用してそれを属性値として割り当てる必要があります。

パラメータ:
namespaceURI - 作成または変更する属性の名前空間 URI
qualifiedName - 作成または変更する属性の修飾名
value - 設定する文字列値
例外:
DOMException - INVALID_CHARACTER_ERR: 指定された修飾名に XML 1.0 仕様で規定されていない文字が含まれている場合に発行される
NO_MODIFICATION_ALLOWED_ERR: このノードが読み取り専用の場合に発行される
NAMESPACE_ERR: qualifiedName の形式が Namespaces in XML 仕様に準拠していない場合、qualifiedName に接頭辞が含まれているのに namespaceURInull である場合、qualifiedName の接頭辞が「xml」であるのに namespaceURI が「http://www.w3.org/XML/1998/namespace」でない場合、または qualifiedName またはその接頭辞が「xmlns」であるのに namespaceURI が「http://www.w3.org/2000/xmlns/」でない場合に発行される
NOT_SUPPORTED_ERR: 名前空間は XML 仕様で定義されたため、このドキュメントが XML 機能をサポートしていない場合は、無条件に発行される
導入されたバージョン:
DOM Level 2

removeAttributeNS

public void removeAttributeNS(String namespaceURI,
                              String localName)
                       throws DOMException
ローカル名と名前空間 URI を指定して属性を削除します。削除する属性がデフォルト値を持っている場合、その属性は新しい属性で置換されます。新しい属性は削除する属性と同じ名前空間 URI、ローカル名、および接頭辞を持ちます。
XML 機能をサポートしないドキュメントで呼び出せるのは、DOM Level 1 の要素または属性を作成・設定するメソッドだけです。よって、XML 機能をサポートしない DOM で null 以外の名前空間 URI が指定された場合、それに一致するノードが検出されることはありません。

パラメータ:
namespaceURI - 削除する属性の名前空間 URI
localName - 削除する属性のローカル名
例外:
DOMException - NO_MODIFICATION_ALLOWED_ERR: このノードが読み取り専用の場合に発行される
導入されたバージョン:
DOM Level 2

getAttributeNodeNS

public Attr getAttributeNodeNS(String namespaceURI,
                               String localName)
ローカル名と名前空間 URI を指定して Attr ノードを取得します。
XML 機能をサポートしないドキュメントで呼び出せるのは、DOM Level 1 の要素または属性を作成・設定するメソッドだけです。よって、XML 機能をサポートしない DOM で null 以外の名前空間 URI が指定された場合、それに一致するノードが検出されることはありません。

パラメータ:
namespaceURI - 取得する属性の名前空間 URI
localName - 取得する属性のローカル名
戻り値:
指定されたローカル名と名前空間 URI を持つ属性が存在する場合はその Attr ノード、そうでない場合は null
導入されたバージョン:
DOM Level 2

setAttributeNodeNS

public Attr setAttributeNodeNS(Attr newAttr)
                        throws DOMException
新しい属性を追加します。そのローカル名と URI 名前空間を持つ属性がすでに要素にある場合、その属性は新しい要素に置き換えられます。

パラメータ:
newAttr - 属性リストに追加する Attr ノード
戻り値:
newAttr 属性が同じローカル名と URI 名前空間を持つ既存の属性を置き換える場合、置き換えられた Attr ノードが返されます。そうでない場合は、null が返されます。
例外:
DOMException - WRONG_DOCUMENT_ERR: newAttr を作成したドキュメントがこの要素を作成したドキュメントと異なっている場合に発行される
NO_MODIFICATION_ALLOWED_ERR: このノードが読み取り専用の場合に発行される
INUSE_ATTRIBUTE_ERR: newAttr がすでに別の Element オブジェクトの属性として使われている場合に発行される。DOM ユーザは、目的の Attr ノードを明示的にコピーしないと、ほかの要素内でそれを再利用できない
NOT_SUPPORTED_ERR: 名前空間は XML 仕様で定義されたため、このドキュメントが XML 機能をサポートしていない場合は、無条件に発行される
導入されたバージョン:
DOM Level 2

getElementsByTagNameNS

public NodeList getElementsByTagNameNS(String namespaceURI,
                                       String localName)
指定されたローカル名と名前空間 URI を持つすべての子孫 Elements が格納された NodeList を返しますが、それらの要素は、この Element ツリーの行きがけ順トラバーサルで得られた順番で格納されます。
XML 機能をサポートしないドキュメントで呼び出せるのは、DOM Level 1 の要素または属性を作成・設定するメソッドだけです。よって、XML 機能をサポートしない DOM で null 以外の名前空間 URI が指定された場合、それに一致するノードが検出されることはありません。

パラメータ:
namespaceURI - 一致させる要素の URI 名前空間。特殊な値 "*" はすべての名前空間に一致する
localName - 一致させる要素のローカル名。特殊な値 "*" は、すべてのローカル名に一致する
戻り値:
一致するすべての Elements を含む新しい NodeList オブジェクト
導入されたバージョン:
DOM Level 2

hasAttribute

public boolean hasAttribute(String name)
指定された名前がこの要素で指定されているか、またはデフォルト値を持つ場合は true、そうでない場合は false を返します。

パラメータ:
name - 検索する属性の名前
戻り値:
指定された名前を持つ属性がこの要素で指定されているか、またはデフォルト値を持つ場合は true、そうでない場合は false
導入されたバージョン:
DOM Level 2

hasAttributeNS

public boolean hasAttributeNS(String namespaceURI,
                              String localName)
指定されたローカル名と名前空間 URI を持つ属性がこの要素に指定されている場合、またはその属性がデフォルト値を持つ場合は true を返し、そうでない場合は false を返します。
XML 機能をサポートしないドキュメントで呼び出せるのは、DOM Level 1 の要素または属性を作成・設定するメソッドだけです。よって、XML 機能をサポートしない DOM で null 以外の名前空間 URI が指定された場合、それに一致するノードが検出されることはありません。

パラメータ:
namespaceURI - 検索する属性の名前空間 URI
localName - 検索する属性のローカル名
戻り値:
指定されたローカル名と名前空間 URI を持つ属性がこの要素に指定されている場合、またはその属性がデフォルト値を持つ場合は true、そうでない場合は false
導入されたバージョン:
DOM Level 2

Common DOM API

バグや機能要求の報告
Java は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.