|
Common DOM API | ||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Attr
インタフェースは Element
オブジェクトの属性を表します。通常、属性として使用できる値は、ドキュメント型定義(DTD)内に定義されます。
Attr
オブジェクトは Node
インタフェースを継承します。ただし、これらは記述する要素の実際の子ノードではないので、DOM はこれらをドキュメントツリーの一部と見なしません。このため、Node
属性の parentNode
、previousSibling
、nextSibling
は、Attr
オブジェクトに対して値 null
を持ちます。DOM は、属性が関連付けられた要素から独立した識別情報を持つものではなく、要素のプロパティであると見なします。このことにより、特定タイプのすべての要素に関連付けられたデフォルトの属性などの機能をより効率的に実装できるようになります。その上、Attr
ノードは DocumentFragment
の直下の子にはなりません。ただし、これらは DocumentFragment
に含まれる Element
ノードに関連付けることができます。要約すると、DOM のユーザと実装者は Attr
ノードが Node
インタフェースを継承する別のオブジェクトと共通性があることを意識する必要があります。ただし、これらはまったく別個のものであることも注意する必要があります。
属性の有効な値は次のように決まります。属性に何らかの値が明示的に割り当てられている場合、その値がこの属性の有効な値です。そうでない場合は、属性に対する宣言があり、その宣言にデフォルトの値がある場合は、そのデフォルトの値が属性の有効な値です。もしそうでなければ、明示的に追加されるまで、属性はその構造モデルの要素には存在しないことになります。Attr
インスタンスの nodeValue
属性は、属性の値の文字列版を取得するためにも使用できることに注意してください。
XML では、属性の値が実体参照を持つことができる場合、Attr
ノードの子ノードはText
または EntityReference
ノードのいずれかになります (これらが使用される場合の詳細については、EntityReference
の説明を参照)。DOM コアは属性の型を意識しないので、DTD またはスキーマがトークン化された型として宣言している場合でも、すべての属性値は単純な文字列として扱われます。
詳細については、「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 |
getName()
この属性の名前を返します。 |
Element |
getOwnerElement()
この属性が使われていない場合は null を返し、そうでない場合はこの属性が含まれている Element ノードを返します。 |
boolean |
getSpecified()
元のドキュメント内でこの属性に値が明示的に指定された場合は true 、そうでない場合は false になります。 |
String |
getValue()
取得時は、属性の値を文字列として返します。 |
void |
setValue(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 |
メソッドの詳細 |
public String getName()
public boolean getSpecified()
true
、そうでない場合は false
になります。ただし、属性を管理するのは実装であり、ユーザではありません。ユーザがこの属性の値を変更した場合、それが結果的にデフォルト値と同じ値であっても、specified
フラグが自動的に true
に切り替わります。この属性に DTD のデフォルト値を指定し直すには、ユーザがドキュメントから属性を削除する必要があります。すると、実装は新しい属性を作成し、その specified
に false
を設定し、デフォルト値が存在する場合はそれを属性値として設定します。specified
は true
になり、指定された値が属性値になります。ドキュメント内で属性値が指定されず、DTD にデフォルト値が指定された場合、specified
は false
になり、DTD のデフォルト値が属性値になります。ドキュメント内で属性値が指定されず、DTD に #IMPLIED が指定された場合、この属性はドキュメントの構造モデル内に出現しません。なお、作成直後であったり削除や複製処理などの設定により ownerElement
属性が null
になっている場合、specified
は true
になります。
public String getValue()
Element
インタフェースの getAttribute
メソッドも参照してください。Text
ノードを作成します。つまり、XML プロセッサであればマークアップとして認識する文字がすべて、リテラル文字として処理されます。Element
インタフェースの setAttribute
メソッドも参照してください。
DOMException
- NO_MODIFICATION_ALLOWED_ERR: ノードが読み取り専用の場合に発行されるpublic void setValue(String value) throws DOMException
Element
インタフェースの getAttribute
メソッドも参照してください。Text
ノードを作成します。つまり、XML プロセッサであればマークアップとして認識する文字がすべて、リテラル文字として処理されます。Element
インタフェースの setAttribute
メソッドも参照してください。
DOMException
- NO_MODIFICATION_ALLOWED_ERR: ノードが読み取り専用の場合に発行されるpublic Element getOwnerElement()
null
を返し、そうでない場合はこの属性が含まれている Element
ノードを返します。
|
Common DOM API | ||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |