DOM (Document Object Model)
ドム
XMLパーサにアクセスするためのAPIの1つ。W3Cが公式に公開した唯一のAPIである。DOMには、Level 1、2、3などいくつかのレベルがある。レベルが大きい方が、より新しく高機能だ。
DOMは、XML文書を「DOMツリー」と呼ばれるツリー構造として扱う。そのため、XMLパーサがXML文書全体を読み込んだ後でなければ、文書内のデータにアクセスすることができない。また、DOMツリーは通常、メモリ上に展開されるため、大規模なXML文書を処理する場合には、その分メモリ容量も要求される。その代わり、DOMを利用すれば、XML文書内のデータの順番に関係なくアクセスできる。
DOMは公開された標準であるため、これに準拠したXMLパーサが複数公開されている。DOMを用いてアプリケーションソフトを記述すると、そのアプリケーションから利用可能なXMLパーサの選択の幅が広がると共に、不都合発生時に開発者がXMLパーサを入れ替えることも、それほど困難ではない。
以下は、WindowsのWSH(Windows Scripting Host)のVBS言語で記述されたサンプルである。DOMを用いてXML文書を読み込み、ツリー構造をトラバースしながらノードの内容をテキストとして出力する。
Dim objSrcDoc |
XMLのAPIとしては、DOMの他にSAX(Simple API for XML)があり、どちらも広く使用されている。
まれに、DOMを、W3CのDOMを示すのではなく、一般名詞として使用しているケースがある。この場合は、W3CのDOMとは仕様が異なる可能性がある。
関連記事
関連用語
リンク
■Document
Object Model (DOM) Level 1 Specification Version 1.0
■Document Object Model (DOM) Level 2 Specification Version 1.0
■Document Object Model (DOM) Level 3 Core Specification Version 1.0
■Document Object Model (DOM) Level 3 Events Specification Version 1.0
■Document Object Model (DOM) Level 3 Content Models and Load and Save Specification Version 1.0
■標準情報(TR) TR X 0019:1999 文書オブジェクトモデル(DOM)水準1 規定 (JIS TRの日本語訳)
■文書オブジェクトモデル(DOM)第1水準 仕様書 Version 1.0 (どら猫本舗による日本語訳)
■Document Object Model (DOM) Level 2 Specification Version 1.0
■Document Object Model (DOM) Level 3 Core Specification Version 1.0
■Document Object Model (DOM) Level 3 Events Specification Version 1.0
■Document Object Model (DOM) Level 3 Content Models and Load and Save Specification Version 1.0
■標準情報(TR) TR X 0019:1999 文書オブジェクトモデル(DOM)水準1 規定 (JIS TRの日本語訳)
■文書オブジェクトモデル(DOM)第1水準 仕様書 Version 1.0 (どら猫本舗による日本語訳)
XML & SOA フォーラム 新着記事
- QAフレームワーク:仕様ガイドラインが勧告に昇格 (2005/10/21)
データベースの急速なXML対応に後押しされてか、9月に入って「XQuery」や「XPath」に関係したドラフトが一気に11本も更新された - XML勧告を記述するXMLspecとは何か (2005/10/12)
「XML 1.0勧告」はXMLspec DTDで記述され、XSLTによって生成されている。これはXMLが本当に役立っている具体的な証である - 文字符号化方式にまつわるジレンマ (2005/9/13)
文字符号化方式(UTF-8、シフトJISなど)を自動検出するには、ニワトリと卵の関係にあるジレンマを解消する仕組みが必要となる - XMLキー管理仕様(XKMS 2.0)が勧告に昇格 (2005/8/16)
セキュリティ関連のXML仕様に進展あり。また、日本発の新しいXMLソフトウェアアーキテクチャ「xfy technology」の詳細も紹介する
|
|