ホーム > X-Plus > XML Square >  デベロッパーズコーナー  >  DOMプログラミング講座

この記事を送る はてなブックマークに追加する BuzzurlにブックマークBuzzurlにブックマーク Yahoo!ブックマークに登録
テキストリンクコードを取得する

デベロッパーズコーナー:DOMプログラミング講座 I(3)

2001年08月10日作成 

使って理解するDOMプログラミング
第1回:DOMの基本 「入門編」
(株)日本ユニテック
竹内 理


目次<全12ページ>

3.DOMとXML文書
        1.はじめる前に
    おわりに


DOMとXML文書

正しいXML文書は構造的には木構造とみなすことができます。それでパーサーはXML文書を読み込んだ後、メモリ上に木構造として展開します。展開した木構造にランダムにアクセスする手段がDOMで定義されているAPIです。木構造を構成する要素(Element)をDOMでは「ノード」と呼びます。ただ、一般的な木構造とは異なりDOMの木構造を構成するノードには「属性(Attribute)」「コメント」「テキスト」といったXML文書の構成要素、さらには「そのXML文書そのもの」も含まれます。このセクションではパーサーが展開したXMLツリーを「DOMツリー」と呼ぶことにします。

次のXML文書はどんなDOMツリーに展開されるでしょうか。
<xdoc>
<!-- comment -->
<?Taget1 PrcsInst?>
     <greeting id="1" ref="img1">Hello XML</greeting>
</xdoc>


次のように展開されます。


図2. 展開されたDOMツリー

上の図において四角で囲まれた部分は全て「ノード」です。例えば「XML文書」「要素」「属性」「コメント」「テキスト」「処理命令」などです。DOMではそれぞれのノードをオブジェクトとして表現しています。そして各オブジェクトはインターフェースとして定義しています。

XML文書そのものもノードとして扱うことに注意してください。

次にDOMのオブジェクトの一覧を示します。

分類 名前 内容
基礎データオブジェクト Node DOMツリーを構成する各ノード全ての基本オブジェクト。
全てのノードはこのオブジェクトを継承する。
NamedNodeMap 名前で操作するためのNodeのコレクション
NodeList Nodeの順次リスト
Document
関連オブジェクト
Document XML文書全体をあらわすオブジェクト
DocumentFlagment XML文書の特定の一部分を表すオブジェクト
DocumentType DOCTYPE宣言
Entity 実体
EntityReference 実体参照
Notaion 記法宣言
Element
関連オブジェクト
Attr 属性
Element 文書要素
文字列
関連オブジェクト
CDATASection CDATAセクション内の文字列データ
CharacterData PCDATAなどの文字データ
Comment コメント内の文字データ
Text 文書要素または属性の文字データ
その他のオブジェクト DOMImprementaion 特定のDOM実装に依存するメソッドへのアクセスを提供する
DOMException 処理中に発生する例外
表2. DOMのオブジェクト(イタリックはノードを表すオブジェクト)

ノードを表すクラスは全てNodeクラスを継承しています。ですからNodeクラスの持つプロパティ(W3Cの仕様書の表現では'Attribute')やメソッドを、DocumentやElementも持っています。Nodeクラスのプロパティとメソッドは別表1を参照してください。

次に各オブジェクトの継承関係を示します。



図3. DOMオブジェクト階層図(影付は基本データオブジェクト)




関連サービス

IT技術およびIT製品の可用性調査・検証業務





ページトップへ戻る