ホーム > X-Plus > XML Square >  ビギナーズコーナー  >  XML入門

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

ビギナーズコーナー:XML入門(5)

2001年05月31日作成 

(株)日本ユニテック 野田 俊太郎
1.XMLとは
    XML仕様制定までの歴史
2.XMLの長所
    「拡張可能」と「意味情報」
3.文書における「内容」「構造」「体裁」の分離
    XML文書の記述方法
4.XML宣言( XML declaration )
    XMLインスタンス
5.DTD ( Document Type Definition ) の記述方法
6.検証済みXML文書と整形式XML文書
7.XML関連規格
    まとめ

DTD ( Document Type Definition ) の記述方法

DTDは文書型定義と訳される。 DTDの中で、XML文書中で使用するタグ名や属性名、またその入れ構造を定義する。
図3のXML文書のサンプルに対するDTDを下に示す。<会社> 要素の中では、<名称>を最初に書き、その後に<連絡先>、そして更にその後にという順序で要素が出現しなければならないという指定が1行目でなされている。



DTDに記述する宣言は、次の4つである。
  • ・要素型宣言
  • ・属性リスト宣言
  • ・エンティティ宣言
  • ・記法宣言

  • 本稿では、このうち要素型宣言と属性リスト宣言についてのみ説明する。

    ①要素型宣言

    要素型宣言は、XML文書中で使用できる文書要素を定義する。
    要素型宣言では要素に関して、要素名、要素の親子関係、要素の内容モデル(子供の要素の出現の仕方)をそれぞれ指定する。
    要素型宣言は次のように書く。

    <!ELEMENT 要素名 内容モデル>

    例えばテキストを内容として持つ「名称」という要素は次のように宣言する。

    <!ELEMENT 名称 (#PCDATA)>

    ここで、#PCDATAはテキストを表すキーワードである。
    1つの要素型宣言は、複数のレベルにわたる階層構造の1つのレベルを定める局所的なものである。これらを順に積み重ねることによって、文書(データ)全体の階層構造を作る。階層構造は何世代にもわたる親子関係で成り立っているので、最上位の要素からはじめて、子供と孫の関係、孫と曾孫の関係・・・というように要素型宣言を重ねていく。
    内容モデルには、子供の要素としてどのようなものの出現を許すかという指定を書く。このとき、子供として出現する要素に関する情報は、出現順序と出現回数の2つである。

    ②属性リスト宣言

    属性リスト宣言は次のように書く。

    <!ATTLIST 要素名 属性名 属性値の候補 "デフォルト値">
    前述のDTDの例では、次のような属性リスト宣言が書かれていた。

    <!ATTLIST 会社 登録番号 CDATA #REQUIRED>

    これは、「<会社> 要素には、登録番号という属性があり、その値は任意の文字列(CDATA)である。この属性は省略してはならない(#REQUIRED)」ということを表している。


    >>「検証済みXML文書と整形式XML文書」について
    <<前の記事へ



    関連サービス

    XMLを使ったシステム構築への支援業務



    この記事と関連の高い記事

    関連キーワード:DTD


    関連キーワード:XML入門




    ページトップへ戻る