共通 DOM API

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

既知のサブインタフェースの一覧:
DOMImplementationCSS, HTMLDOMImplementation

public interface DOMImplementation

DOMImplementation インタフェースは、ドキュメントオブジェクトモデルの特定のインスタンスに依存しないオペレーションを実行するための多くのメソッドを提供します。

「Document Object Model (DOM) Level 3 Core Specification」も参照してください。


メソッドの概要
 Document createDocument(String namespaceURI, String qualifiedName, DocumentType doctype)
          ドキュメント要素を使って指定された型の DOM Document オブジェクトを生成します。
 DocumentType createDocumentType(String qualifiedName, String publicId, String systemId)
          空の DocumentType ノードを作成します。
 Object getFeature(String feature, String version)
          このメソッドは、指定された機能とバージョンを備えた特殊な API を実装する特殊なオブジェクトを指定されたとおりに返します。
 boolean hasFeature(String feature, String version)
          DOM の実装が、指定されているとおりに特定の機能およびバージョンを実装しているかどうかをテストします。
 

メソッドの詳細

hasFeature

boolean hasFeature(String feature,
                   String version)
DOM の実装が、指定されているとおりに特定の機能およびバージョンを実装しているかどうかをテストします。

パラメータ:
feature - テストする機能の名前
version - テストする機能のバージョン番号
戻り値:
機能が特定のバージョンで実装されている場合は true、そうでない場合は false

createDocumentType

DocumentType createDocumentType(String qualifiedName,
                                String publicId,
                                String systemId)
                                throws DOMException
空の DocumentType ノードを作成します。実体の宣言と表記法は使用できません。実体参照の展開とデフォルト属性の追加は行われません。

パラメータ:
qualifiedName - 作成するドキュメント型の修飾名
publicId - 外部サブセットの公開識別子
systemId - 外部サブセットのシステム識別子
戻り値:
Node.ownerDocumentnull に設定されている、新しい DocumentType ノード
例外:
DOMException - INVALID_CHARACTER_ERR: 指定された修飾名が [XML 1.0] に従うXML名ではない場合に発生する
NAMESPACE_ERR: qualifiedName の形式が間違っている場合に発生する
NOT_SUPPORTED_ERR: 実装が XML 機能をサポートしていない場合および Document を通じて公開された言語が XML 名前空間 ([HTML 4.01] など) をサポートしていない場合に発生する
導入されたバージョン:
DOM Level 2

createDocument

Document createDocument(String namespaceURI,
                        String qualifiedName,
                        DocumentType doctype)
                        throws DOMException
ドキュメント要素を使って指定された型の DOM Document オブジェクトを生成します。
ドキュメントの生成に指定された DocumentType に基づいて、実装では、HTML [DOM Level 2 HTML] などのコア以外の追加機能をサポートする特殊な Document オブジェクトをインスタンス化できます。それに対して、ドキュメントの生成後に DocumentType を設定すると、特殊な Document オブジェクトをインスタンス化するのはほとんど不可能です。代わりに、createHTMLDocument [DOM Level 2 HTML] などの特殊な Document 作成メソッドを使って特定の型の Document オブジェクトを得ることができます。

パラメータ:
namespaceURI - 作成するドキュメント要素の名前空間 URI または null
qualifiedName - 作成するドキュメント要素の修飾名 または null
doctype - 作成するドキュメントの型または null。この doctypenull でない場合、Node.ownerDocument 属性には作成したドキュメントが設定される
戻り値:
ドキュメント要素を含む新しい Document オブジェクト。NamespaceURIqualifiedName、および doctypenull の場合、Document は空であり、ドキュメント要素を含まない
例外:
DOMException - INVALID_CHARACTER_ERR: 指定された修飾名が [XML 1.0] に従う XML 名ではない場合に発生する
NAMESPACE_ERR: qualifiedName の形式が間違っている場合、qualifiedName が接頭辞を含むのに namespaceURInull の場合、qualifiedNamenull であるのに、namespaceURInull 以外の場合、qualifiedName が接頭辞「xml」を持つのに namespaceURI が「 http://www.w3.org/XML/1998/namespace」[XML Namespaces] ではない場合、DOM 実装が「XML」機能をサポートしていないのに、null 以外の名前空間 URI が指定された場合 (名前空間は XML で定義される) に発生する
WRONG_DOCUMENT_ERR: doctype がすでに別のドキュメントで使用されているか、別の実装により作成されている場合に発生する
NOT_SUPPORTED_ERR: 実装が XML 機能をサポートしていない場合および Document を通じて公開された言語が XML 名前空間 ([HTML 4.01]) など) をサポートしていない場合に発生する
導入されたバージョン:
DOM Level 2

getFeature

Object getFeature(String feature,
                  String version)
このメソッドは、指定された機能とバージョンを備えた特殊な API を実装する特殊なオブジェクトを指定されたとおりに返します。また、特殊なオブジェクトは、バインディング固有のキャストメソッドを使用することで取得することもできますが、必ずしもこのような操作が想定されているわけではありません。このメソッドを使用すると、DOMImplementation インタフェースをサポートしていない特殊なオブジェクトを実装で提供することもできます。

パラメータ:
feature - 要求された機能の名前。機能名の前に追加されたプラス記号「+」は無視されます。このメソッドのコンテキストではプラス記号は重要ではないためです。
version - テストする機能のバージョン番号
戻り値:
指定された機能とバージョンの特殊な API を実装するオブジェクト (存在する場合)。指定された機能に関連付けられたインタフェースを実装するオブジェクトがない場合は null。このメソッドが返した DOMObjectDOMImplementation インタフェースを実装する場合、インタフェースを一次コア DOMImplementation に委譲して、hasFeaturegetFeature などの一次コア DOMImplementation に矛盾する結果を返さないようにしなければならない
導入されたバージョン:
DOM Level 3

共通 DOM API

バグや機能要求の報告
Java は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 2004 Sun Microsystems, Inc. 4150 Network Circle
Santa Clara, California, 95054, U.S.A. All Rights Reserved.