差分
ナビゲーションに移動
検索に移動
DOMは、XMLを平面的に読み込む[[SAX]]とは異なり、XMLデータを[[ツリー構造]]として扱う事ができる。ただし、通常の場合対象のXML文書を全て読み込んでからの扱いを前提とするため動作速度が遅かったり、[[メモリー]]の使用量が大きくなる欠点もある。
編集の要約なし
基本的には[[XML]]を[[ツリー構造]]として扱うためのAPI群であり、XMLに近いがXMLではない[[HTML]]の場合は[[Webブラウザ]]内でHTMLからXMLへ変換したのち利用できるようになっている。よって、DOM経由で[[HTML]]の[[ソースコード]]を取り出すと、HTMLのタグ閉じ忘れなどが修正されている状態となっている。このHTMLからXMLへの変換ルールがWebブラウザごとに異なることで、いわゆるHTMLのレイアウト崩れが発生する一因となっている。
大雑把に言えば、最近のWebブラウザに搭載されている開発モード([[Firefox]]の[[Firebug]]や[[Opera]]の[[Opera Dragonfly]]、[[IE]]の開発者ツールなど)で表示されるHTMLソースコードのHTMLツリー表示のことである。
DOMは、XMLを平面的に読み込む[[SAX]]とは異なり、XMLデータを[[ツリー構造]]として扱う事ができる。ただし、通常の場合対象のXML文書を全て読み込んでからの扱いを前提とするため動作速度が遅かったり、[[メモリー]]の使用量が大きくなる欠点もある。
[[XML]]の場合は(個人的に周囲では)[[DOM]]よりも[[XPath]]が使われることが多いが、[[HTML]]の場合は[[JavaScript]]から手軽に利用できるという関係でDOMが使われることが多い。