|
共通 DOM API | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
public interface Document
Document インタフェースは、HTML ドキュメントまたは XML ドキュメントの全体を表します。これは、概念的にはドキュメントツリーのルートであり、ドキュメントのデータへの主要なアクセスを提供します。
要素、テキストノード、コメント、処理命令などは Document のコンテキストの外部には存在できないので、Document インタフェースはこれらのオブジェクトを作成するために必要なファクトリメソッドも含みます。作成された Node オブジェクトは、作成されたコンテキスト内の Document に関連付けられた ownerDocument 属性を持ちます。
「Document Object Model (DOM) Level 3 Core Specification」も参照してください。
| フィールドの概要 |
|---|
| メソッドの概要 | |
|---|---|
Node |
adoptNode(Node source)
このドキュメントに別のドキュメントのノードを採用します。 |
Attr |
createAttribute(String name)
指定された名前を持つ Attr オブジェクトを作成します。 |
Attr |
createAttributeNS(String namespaceURI,
String qualifiedName)
指定された修飾名と名前空間 URI を持つ要素を作成します。 |
CDATASection |
createCDATASection(String data)
指定された文字列を値に持つ CDATASection ノードを作成します。 |
Comment |
createComment(String data)
指定された文字列を含む Comment ノードを作成します。 |
DocumentFragment |
createDocumentFragment()
空の DocumentFragment オブジェクトを作成します。 |
Element |
createElement(String tagName)
指定された型の要素を作成します。 |
Element |
createElementNS(String namespaceURI,
String qualifiedName)
指定された修飾名と名前空間 URI を持つ要素を作成します。 |
EntityReference |
createEntityReference(String name)
EntityReference オブジェクトを生成します。 |
ProcessingInstruction |
createProcessingInstruction(String target,
String data)
指定された名前とデータ文字列を持つ ProcessingInstruction ノードを作成します。 |
Text |
createTextNode(String data)
指定された文字列を含む Text ノードを作成します。 |
DocumentType |
getDoctype()
このドキュメントに関連付けられた Document Type Declaration ( DocumentType を参照)。 |
Element |
getDocumentElement()
これはドキュメントのドキュメント要素である子ノードに直接アクセスできるようにする便利な属性です。 |
String |
getDocumentURI()
ドキュメントの場所。 |
DOMConfiguration |
getDomConfig()
Document.normalizeDocument() が呼び出されたときに使用される構成。 |
Element |
getElementById(String elementId)
所定の値の ID 属性を持つ Element を返します。 |
NodeList |
getElementsByTagName(String tagname)
ドキュメントに含まれ、指定されたタグ名を持つすべての Elements の NodeList をドキュメント順に返します。 |
NodeList |
getElementsByTagNameNS(String namespaceURI,
String localName)
指定されたローカル名と名前空間 URI を持つすべての Elements の NodeList をドキュメント順に返します。 |
DOMImplementation |
getImplementation()
このドキュメントを処理する DOMImplementation オブジェクト。 |
String |
getInputEncoding()
解析時にこのドキュメントに使用されるエンコーディングを指定する属性。 |
boolean |
getStrictErrorChecking()
エラーチェックが強制的に実行されるかどうかを指定している属性。 |
String |
getXmlEncoding()
XML 宣言 の一部としてこのドキュメントのエンコーディングを指定している属性。 |
boolean |
getXmlStandalone()
XML 宣言 の一部としてこのドキュメントがスタンドアロンかどうかを指定している属性。 |
String |
getXmlVersion()
XML 宣言 の一部として、このドキュメントのバージョン番号を指定している属性。 |
Node |
importNode(Node importedNode,
boolean deep)
インポート元のドキュメントのソースノードを変更または削除することなく、別のドキュメント内のノードをこのドキュメントにインポートします。 |
void |
normalizeDocument()
このメソッドは、ドキュメントが保存とロードのサイクルを経たかのように機能し、ドキュメントを通常の形式にします。 |
Node |
renameNode(Node n,
String namespaceURI,
String qualifiedName)
ELEMENT_NODE 型または ATTRIBUTE_NODE 型の既存のノードの名前を変更します。 |
void |
setDocumentURI(String documentURI)
ドキュメントの場所。 |
void |
setStrictErrorChecking(boolean strictErrorChecking)
エラーチェックが強制的に実行されるかどうかを指定している属性。 |
void |
setXmlStandalone(boolean xmlStandalone)
XML 宣言 の一部としてこのドキュメントがスタンドアロンかどうかを指定している属性。 |
void |
setXmlVersion(String xmlVersion)
XML 宣言 の一部として、このドキュメントのバージョン番号を指定している属性。 |
| メソッドの詳細 |
|---|
DocumentType getDoctype()
DocumentType を参照)。ドキュメントの種類の宣言をしない XML ドキュメントの場合、null を返します。HTML ドキュメントの場合、HTML ドキュメントにドキュメントの種類の宣言があるかどうかにかかわらず、DocumentType オブジェクトが返されます。Document の子ノードである DocumentType ノードへの直接のアクセスを提供します。このノードはドキュメントの作成時に設定して、Node.insertBefore または Node.replaceChild などの子ノードを操作するメソッドを使用してあとで変更できます。ただし、一部の実装では、作成時に指定された DocumentType に基づいて「HTML」 [DOM Level 2 HTML] などの「Core」ではなく追加の機能をサポートする別の種類の Document オブジェクトをインスタンス化できますが、あとで変更してもサポートされている機能が変わることはほとんどありません。
DOMImplementation getImplementation()
DOMImplementation オブジェクト。DOM アプリケーションは複数の実装によるオブジェクトを使用できます。
Element getDocumentElement()
Element createElement(String tagName)
throws DOMException
Element インタフェースを実装しているため、属性を直接指定することができます。Attr ノードが自動的に作成され、その要素に関連付けられます。createElementNS メソッドを使います。
tagName - インスタンスを生成する要素型の名前。XML の場合、この名前は大文字と小文字の区別をする。そうでない場合、使用しているマークアップ言語の大文字と小文字の区別に依存する。この場合、名前は DOM 実装によりマークアップの標準形式にマップされる
Element オブジェクト。このオブジェクトの nodeName 属性には tagName が設定され、localName、prefix、および namespaceURI には null が設定される
DOMException - INVALID_CHARACTER_ERR: 指定された名前が、Document.xmlVersion 属性で指定された使用中の XML バージョンに従う XML 名と異なる場合に発生するDocumentFragment createDocumentFragment()
DocumentFragment オブジェクトを作成します。
DocumentFragmentText createTextNode(String data)
Text ノードを作成します。
data - このノードに格納するデータ
Text オブジェクトComment createComment(String data)
Comment ノードを作成します。
data - このノードに格納するデータ
Comment オブジェクト
CDATASection createCDATASection(String data)
throws DOMException
CDATASection ノードを作成します。
data - CDATASection に格納するデータ
CDATASection オブジェクト
DOMException - NOT_SUPPORTED_ERR: ドキュメントが HTML ドキュメントの場合に発生する
ProcessingInstruction createProcessingInstruction(String target,
String data)
throws DOMException
ProcessingInstruction ノードを作成します。
target - 処理命令のターゲット部分。Document.createElementNS や Document.createAttributeNS とは異なり、ターゲット名で名前空間の整形式チェックは行われない。ターゲット名の名前空間整形式を確保するには、アプリケーションは namespaces パラメータを true に設定した Document.normalizeDocument() を呼び出す必要があるdata - このノードに格納するデータ
ProcessingInstruction オブジェクト
DOMException - INVALID_CHARACTER_ERR: 指定されたターゲットが、Document.xmlVersion 属性で指定された使用中の XML バージョンに従う XML 名ではない場合に発生する
Attr createAttribute(String name)
throws DOMException
Attr オブジェクトを作成します。なお、setAttributeNode メソッドを使えば、作成された Attr インスタンスを特定の Element に関連付けることも可能です。createAttributeNS メソッドを使います。
name - この属性の名前
Attr オブジェクト。このオブジェクトの nodeName 属性にはname が設定され、localName、prefix、および namespaceURI には null が設定される。また、値は空の文字列になる
DOMException - INVALID_CHARACTER_ERR: 指定された名前が、Document.xmlVersion 属性で指定された使用中の XML バージョンに従う XML 名と異なる場合に発生する
EntityReference createEntityReference(String name)
throws DOMException
EntityReference オブジェクトを生成します。加えて、参照されたエンティティが既知の場合、対応する Entity ノードの子リストと同様に、EntityReference ノードの子リストが作成されます。注: Entity ノードの子孫がバインドされていない名前空間接頭辞を持つ場合、作成された EntityReference ノードの対応する子孫もバインドされません。ノードの namespaceURI は null です。DOM Level 2 および 3 は、この場合、名前空間接頭辞を解決する機構をサポートしていません。
name - 参照するエンティティの名前。Document.createElementNS や Document.createAttributeNS とは異なり、エンティティ名で名前空間の整形式チェックは行われない。エンティティ名の名前空間整形式を確保するには、アプリケーションは namespaces パラメータを true に設定した Document.normalizeDocument() を呼び出す必要がある
EntityReference オブジェクト
DOMException - INVALID_CHARACTER_ERR: 指定された名前が、Document.xmlVersion 属性で指定された使用中の XML バージョンに従う XML 名ではない場合に発生するNodeList getElementsByTagName(String tagname)
Elements の NodeList をドキュメント順に返します。
tagname - 一致させるタグ名。特殊な値「*」はすべてのタグに一致する。XML の場合、tagname パラメータでは大文字と小文字が区別される。そうでない場合は、使用されるマークアップ言語の大文字と小文字の区別に依存する
Elements を含む新しい NodeList オブジェクト
Node importNode(Node importedNode,
boolean deep)
throws DOMException
parentNode に null が設定されます。nodeName、nodeType、および名前空間に関係する属性 (prefix、localName、およびnamespaceURI) には、ソースノードと等しい値が設定されます。Node の cloneNode 操作の場合と同じく、ソースノードは変更されません。インポートされているノードに関連するユーザデータは持ち越されません。ただし、関連するデータとともに UserDataHandlers が指定されていた場合、これらのハンドラは、このメソッドが返す前に適切なパラメータを使って呼び出されます。nodeType の内容に応じて追加の情報がコピーされますが、XML ソースや HTML ソースのフラグメントをドキュメント間でコピーする場合は、期待される動作にできるだけ近くなるように、また XML の場合であれば、2 つのドキュメントの DTD が同じでない可能性も考慮して処理が実行されます。以下のリストで、ノードの種類ごとの特記事項について説明します。Attr の ownerElement 属性には null が設定され、specified フラグには true が設定されます。ソース Attr の子孫は再帰的にインポートされ、対応するサブツリーに再度組み立てられます。なお、deep パラメータに指定された値は、Attr ノードの場合は無視され、無条件に子もインポートされますdeep オプションを true に設定した場合、ソース DocumentFragment の子孫が再帰的にインポートされ、インポートされた DocumentFragment の下で再度組み立てられて、対応するサブツリーが形成されます。そうでない場合は、単純に空の DocumentFragment オブジェクトが生成されます。Document ノードはインポートできません。DocumentType ノードはインポートできません。Attr ノードはインポートされ、生成された Element に関連付けられます。デフォルト属性はコピーされません。ただし、インポート先のドキュメントにこの要素名のデフォルト属性が定義されていた場合、それらの属性も関連付けられます。importNode の deep パラメータに true が指定された場合、ソース要素の子孫が再帰的にインポートされ、対応するサブツリーに再度組み立てられます。Entity ノードはインポート可能ですが、DOM の現在のリリースでは、この DocumentType は読み取り専用です。この DocumentType を別の DocumentType に追加する機能は、DOM の将来のリリースで考慮される可能性があります。インポート時には、publicId、systemId、および notationName の各属性がコピーされます。deep パラメータが指定された場合は、ソース Entity の子孫が再帰的にインポートされ、対応するサブツリーに再度組み立てられます。deep パラメータが指定された場合でも、EntityReference 自身だけがコピーされます。これは、ソースドキュメントとターゲットドキュメントで、そのエンティティの定義内容が異なる可能性があるためです。ただし、ターゲットドキュメントでこのエンティティが定義されている場合は、その値が設定されます。Notation ノードはインポート可能ですが、DOM の現在のリリースでは、この DocumentType は読み取り専用です。これらのインポートされたノードを DocumentType に追加する機能は、DOM の将来のリリースで考慮される可能性があります。インポート時には、publicId、systemId の各属性がコピーされます。なお、Notation ノードが子ノードを持つことはないため、deep パラメータは無視されます。target 値と data 値をコピーします。deep パラメータは子を持つことはないため、この型のノードに影響を及ぼしません。CharacterData から継承しているこれら 3 つのノードの型は、ソースノードのノードから target 値と data 値をコピーします。deep パラメータは子を持たないため、これらの型のノードに影響を及ぼしません。
importedNode - インポートするノードdeep - 前述のように、true の場合は、指定されたノード配下のサブツリーを再帰的にインポートし、false の場合は、指定されたノードだけをインポートする。このパラメータは、子を持たないノード、Attr ノード、および EntityReference ノードの場合は無効になる
Document にインポートされたノード
DOMException - NOT_SUPPORTED_ERR: インポートされているノードの型がサポートされていない場合に発生する Document.xmlVersion 属性で指定された使用中の XML バージョンに従う XML 名ではない場合に発生する。たとえば、この例外は XML 1.1 [XML 1.1] の要素を XML 1.0 ドキュメントの中にインポートしているときに発生する可能性がある
Element createElementNS(String namespaceURI,
String qualifiedName)
throws DOMException
null値を使用する必要があります。
namespaceURI - 作成する要素の名前空間 URIqualifiedName - インスタンス化する要素型の修飾名
Element オブジェクト | attribute (属性) | value (値) |
|---|---|
Node.nodeName | qualifiedName |
Node.namespaceURI | namespaceURI |
Node.prefix | qualifiedName から抽出された接頭辞。接頭辞がない場合は null |
Node.localName | qualifiedName から抽出されたローカル名 |
Element.tagName | qualifiedName |
DOMException - INVALID_CHARACTER_ERR: 指定された qualifiedName が、Document.xmlVersion 属性で指定された使用中の XML バージョンに従う XML 名ではない場合に発生する qualifiedName が間違った修飾名の場合、qualifiedName が接頭辞を持つのに、namespaceURI が null の場合、qualifiedName が接頭辞「xml」を持つのに、namespaceURI が「 http://www.w3.org/XML/1998/namespace」 [XML Namespaces] ではない場合、qualifiedName またはその接頭辞が「xmlns」であるのに、namespaceURI が「http://www.w3.org/2000/xmlns/」ではない場合、namespaceURI が「http://www.w3.org/2000/xmlns/」であるのに、qualifiedName ばかりでなくその接頭辞も「xmlns」でない場合に発生する XML」機能をサポートしていない場合は、無条件に発生する
Attr createAttributeNS(String namespaceURI,
String qualifiedName)
throws DOMException
namespaceURI パラメータに null 値を使用する必要があります。
namespaceURI - 作成する属性の名前空間 URIqualifiedName - インスタンス化する属性の修飾名
Attr オブジェクト | attribute (属性) | value (値) |
|---|---|
Node.nodeName | qualifiedName |
Node.namespaceURI | namespaceURI |
Node.prefix | qualifiedName から抽出された接頭辞。接頭辞がない場合は null |
Node.localName | qualifiedName から抽出されたローカル名 |
Attr.name | qualifiedName |
Node.nodeValue | 空の文字列 |
DOMException - INVALID_CHARACTER_ERR: 指定されたqualifiedNameが、Document.xmlVersion 属性で指定された使用中の XML バージョンに従う XML 名ではない場合に発生する qualifiedName が間違った修飾名の場合、qualifiedName が接頭辞を持つのに、namespaceURI が null の場合、qualifiedName が接頭辞「xml」を持つのに、namespaceURI が「 http://www.w3.org/XML/1998/namespace」ではない場合、qualifiedName またはその接頭辞が「xmlns」であるのに、namespaceURI が「http://www.w3.org/2000/xmlns/」ではない場合、namespaceURI が「http://www.w3.org/2000/xmlns/」であるのに、qualifiedName ばかりでなくその接頭辞も「xmlns」でない場合に発生する XML」機能をサポートしていない場合は、無条件に発生する
NodeList getElementsByTagNameNS(String namespaceURI,
String localName)
Elements の NodeList をドキュメント順に返します。
namespaceURI - 一致させる要素の URI 名前空間。特殊な値「*」はすべての名前空間に一致するlocalName - 一致させる要素のローカル名。特殊な値 "*" は、すべてのローカル名に一致する
Elements を含む新しい NodeList オブジェクトElement getElementById(String elementId)
Element を返します。所定の値の ID 属性を持つ要素がない場合は null を返します。所定の値の ID 属性を持つ要素が複数ある場合、返される値は未定義です。 Attr.isId 属性を使って属性が ID 型の属性であるかどうかを判定することが想定されています。 注: 「ID」または「id」という名前を持つ属性でも、そのように定義されないかぎり、ID 型の属性ではありません。
elementId - 目的の要素を指定する一意の id 値
nullString getInputEncoding()
Document がメモリで作成された場合など、属性が未知の場合は null です。
String getXmlEncoding()
Document がメモリで作成された場合など、属性が未知の場合は null です。
boolean getXmlStandalone()
false。注: この属性を設定すると、値の検証は行われません。値が [XML 1.0] で定義されているスタンドアロンドキュメント宣言の妥当性制約に一致するかどうかを検証するには、アプリケーションは validate パラメータを持つ Document.normalizeDocument() を使用する必要があります。
void setXmlStandalone(boolean xmlStandalone)
throws DOMException
false。注: この属性を設定すると、値の検証は行われません。値が [XML 1.0] で定義されているスタンドアロンドキュメント宣言の妥当性制約に一致するかどうかを検証するには、アプリケーションは validate パラメータを持つ Document.normalizeDocument() を使用する必要があります。
DOMException - NOT_SUPPORTED_ERR: このドキュメントが XML 機能をサポートしない場合に発生するString getXmlVersion()
1.0」です。このドキュメントが XML 機能をサポートしない場合、値は常に null です。この属性を変更すると、XML 名の無効な文字をチェックするメソッドに影響を及ぼします。この Document の一部としてすでに存在する Node の無効な文字をチェックするには、アプリケーションは Document.normalizeDocument() を呼び出す必要があります。DOMImplementation.hasFeature(feature, version) メソッドを使用することができます。また、パラメータ値「XMLVersion」と「1.1」をそれぞれ含む同じメソッドを使って、実装が [XML 1.1] をサポートするかどうかを判定することもできます。どちらの場合も、XML をサポートするには、実装はこの仕様で定義されている XML 機能もサポートしていなければなりません。XMLVersion のバージョンの機能をサポートしている Document オブジェクトは、Document.xmlVersion を使用しているときに、同じバージョン番号に対して NOT_SUPPORTED_ERR 例外を発生することはありません。
void setXmlVersion(String xmlVersion)
throws DOMException
1.0」です。このドキュメントが XML 機能をサポートしない場合、値は常に null です。この属性を変更すると、XML 名の無効な文字をチェックするメソッドに影響を及ぼします。この Document の一部としてすでに存在する Node の無効な文字をチェックするには、アプリケーションは Document.normalizeDocument() を呼び出す必要があります。DOMImplementation.hasFeature(feature, version) メソッドを使用することができます。また、パラメータ値「XMLVersion」と「1.1」をそれぞれ含む同じメソッドを使って、実装が [XML 1.1] をサポートするかどうかを判定することもできます。どちらの場合も、XML をサポートするには、実装はこの仕様で定義されている XML 機能もサポートしていなければなりません。XMLVersion のバージョンの機能をサポートしている Document オブジェクトは、Document.xmlVersion を使用しているときに、同じバージョン番号に対して NOT_SUPPORTED_ERR 例外を発生することはありません。
DOMException - NOT_SUPPORTED_ERR: この Document がサポートしていない値にバージョンが設定されている場合、またはこのドキュメントが XML 機能をサポートしない場合に発生するboolean getStrictErrorChecking()
false に設定した場合、実装では、DOM の操作で通常定義されているすべてのエラーケースをテストしない、DOM 操作で DOMException を発生しない、または Document.normalizeDocument() を使用中にエラーを報告しないなどを自由に設定できます。エラーの場合、動作は未定義です。この属性は、デフォルトで true に設定されています。
void setStrictErrorChecking(boolean strictErrorChecking)
false に設定した場合、実装では、DOM の操作で通常定義されているすべてのエラーケースをテストしない、DOM 操作で DOMException を発生しない、または Document.normalizeDocument() を使用中にエラーを報告しないなどを自由に設定できます。エラーの場合、動作は未定義です。この属性は、デフォルトで true に設定されています。
String getDocumentURI()
Document が DOMImplementation.createDocument を使って作成された場合は null。この属性を設定すると、字句チェックは行われません。これにより、Node.baseURI を使用中に null が返される可能性があります。Document が HTML [DOM Level 2 HTML] 機能をサポートする場合、Node.baseURI の計算時に HTML BASE 要素の href 属性はこの属性よりも優先されます。
void setDocumentURI(String documentURI)
Document が DOMImplementation.createDocument を使って作成された場合は null。この属性を設定すると、字句チェックは行われません。これにより、Node.baseURI を使用中に null が返される可能性があります。Document が HTML [DOM Level 2 HTML] 機能をサポートする場合、Node.baseURI の計算時に HTML BASE 要素の href 属性はこの属性よりも優先されます。
Node adoptNode(Node source)
throws DOMException
ownerDocument を変更します。ソースノードが親を持つ場合、そのノードは親の子リストから最初に削除されます。移動するのではなくソースノードのコピーを作成する importNode() とは異なり、この方法ではあるドキュメントから別のドキュメントにサブツリーを効率的に移動できます。この操作に失敗した場合、アプリケーションは代わりに Document.importNode() を使用する必要があります。採用されたノードがすでにこのドキュメントの一部である場合、つまりソースドキュメントとターゲットドキュメントが同じ場合、このメソッドは、ソースノードの親の子リストからソースノードを削除する機能を引き続き発揮します。次のリストでは、各ノード型の特記事項を述べます。 Attr では、ownerElement 属性は null に設定され、specified フラグは true に設定されます。ソース Attr の子孫が再帰的に採用されます。Document ノードは採用できません。DocumentType ノードは採用できません。Entity ノードは採用できません。EntityReference ノード自身だけが採用されます。子孫は破棄されます。これは、ソースドキュメントとターゲットドキュメントで、そのエンティティの定義内容が異なる可能性があるためです。インポート先のドキュメントでエンティティ名が定義されている場合、その値が設定されます。Notation ノードは採用できません。注: Document.importNode() メソッドとは異なり、このメソッドは新規ノードを生成しないので、INVALID_CHARACTER_ERR を発生しません。インポートされた名前が、使用しているXML バージョンに従っている XML 名であるかどうかをチェックするには、アプリケーションは Document.normalizeDocument()メソッドを使用する必要があります。
source - このドキュメントにインポートするノード
null
DOMException - NOT_SUPPORTED_ERR: ソースノードが DOCUMENT、DOCUMENT_TYPE 型のノードの場合に発生する DOMConfiguration getDomConfig()
Document.normalizeDocument() が呼び出されたときに使用される構成。
void normalizeDocument()
Node.normalize() メソッドで定義されているように EntityReference ノードの置換ツリーを更新し、Text ノードを更新します。Document.domConfig オブジェクトで設定されている機能および実際に行われる操作を制御している機能に応じて異なります。特に注意する必要があるのは、このメソッドが説明されているアルゴリズムに従って整形式のドキュメント名前空間も作成できる可能性があることです。詳細は、DOMConfiguration を参照してください。
// Keep in the document
the information defined // in the XML Information Set (Java example)
DOMConfiguration docConfig = myDocument.getDomConfig();
docConfig.setParameter("infoset", Boolean.TRUE);
myDocument.normalizeDocument();
Node.nodeName が含むなど、このメソッドの呼び出し中にエラーが発生した場合、error-handler パラメータに関連付けられたDOMErrorHandlerオブジェクトを使って、エラーまたは警告 (DOMError.SEVERITY_ERROR または DOMError.SEVERITY_WARNING) が報告されます。実装がエラーから回復できない場合、このメソッドは致命的エラー (DOMError.SEVERITY_FATAL_ERROR) を報告する場合もあります。
Node renameNode(Node n,
String namespaceURI,
String qualifiedName)
throws DOMException
ELEMENT_NODE 型または ATTRIBUTE_NODE 型の既存のノードの名前を変更します。 Element の場合、ノードの属性は新規ノードに移動されます。新規ノードは、親を持つ場合、親の子ノードリストで古いノードが占めていた位置に挿入されます。古いノードに接続されていたユーザデータは新しいノードに接続されます。Element の場合、指定された属性だけが移動され、DTD から発生したデフォルトの属性は、新規要素名に従って更新されます。また、実装はほかのスキーマからデフォルト属性を更新できます。アプリケーションは、Document.normalizeDocument() を使って、これらの属性が最新のものであることを保証する必要があります。Elementに接続された Attr である場合、このノードはまず Element 属性マップから削除されます。次に、前述のように既存のノードを変更したり、新規ノードを作成したりして、名前を変更すると、ノードを元に戻します。NODE_RENAMED がトリガされる http://www.w3.org/2001/xml-events, DOMElementNameChanged} イベントまたは { http://www.w3.org/2001/xml-events, DOMAttributeNameChanged} イベントがトリガされる
n - 名前を変更するノードnamespaceURI - 新規名前空間 URIqualifiedName - 新規修飾名
DOMException - NOT_SUPPORTED_ERR: 指定されたノードの型が ELEMENT_NODE ではなく、ATTRIBUTE_NODE でもない場合、または実装がドキュメント要素の名前の変更をサポートしていない場合に発生するDocument.xmlVersion 属性で指定された使用中の XNL バージョンに従う XML 名ではない場合に発生するqualifiedName が間違った修飾名の場合、qualifiedName が接頭辞を持つのに、namespaceURI が null の場合、または qualifiedName が接頭辞「xmlns」を持つのに、namespaceURI が 「 http://www.w3.org/XML/1998/namespace」[XML Namespaces] とは異なる場合に発生する。また、名前を変更しているノードが属性のときに、qualifiedNameまたはその接頭辞が「xmlns」であるのに、namespaceURI が「http://www.w3.org/2000/xmlns/」とは異なる場合にも発生する
|
共通 DOM API | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||