XML (eXtensible Markup Language)

$Date: 2002/12/21 22:13:01 $

XML

XML とはなにか

その名 (eXtesible Markup Language) の通り, 拡張可能なマークアップ言語.

SGMLを簡略化したもので, あらかじめ用意されたものしか利用できない HTML と異なり, XML は自分で好みに応じて追加・修正・編集・拡張することが可能.

XML の設計目標から特徴的なものをいくつか:

  1. XML は, インターネット上でそのまま利用可能であること
  2. XML は, 広範多様なアプリケーションをサポートすること
  3. XML は, SGML と互換的であること

SGML

SGML とは

1980 年台に ISO (International Organization for Standardization) によって標準化されたもの. 他のマークアップ言語を記述するためのマークアップ言語.

SGML 文書の構造

  1. SGML 宣言
  2. DTD (Document Type Definition)
  3. 文書インスタンス

SGML の応用

SGML はなぜ難しいのか

  1. 目的に応じた DTD を利用するが, その DTD に定義されている要素がたくさんありすぎて習得が困難
  2. 規格書の文法定義が複雑かつ難しい
  3. 十分なツールや周辺技術が出そろわなかった

HTML

おいたち

web 用途に HTML が生まれる.

処理系

当初は文書構造とレイアウト情報が混在していたものだったが, CSS の登場によりレイアウト情報 (見ための情報) が分離され, 近年では HTML の処理系は以下のようになっていると考えられる.

[HTML Processor]

大まかな処理は;

  1. parser (構文解析器)であり, 入力された文書を読み込んで, renderer に解釈可能な形式でデータを渡す. parser はどの要素がどの位置に現れるか, その属性はなにかなどを判定し, 要素が省略されていればそれを補うなどし, HTML を完全な木構造にする.
  2. stylesheet engine はスタイル情報を適宜解釈して, renderer に渡す.
  3. renderer は parser と stylesheet engine からのデータを受けとり, ディスプレイに表示する.

といった具合である.

HTML をこれ以上拡張することはなぜまずいのか

SGML のサブセットとして定義されたため, そもそもの拡張性が乏しい.

また, 新しい要素を追加したとすると, そのために…,

などが必要になる.


ふたたび XML

XML のきまりごと

これらを満たすことにより, `well-formed (整形式; 整った形式)' となり, 解析可能 (parsable) となる.

また, DTD に沿ったマークアップをすると `valid (妥当)' となる.

XML のメリット

XML でなにができるのか

XML アプリケーション:

そのほかのもの:


参考

Extensible Markup Language (XML) 1.0
World Wide Web Consortium, http://www.w3.org/TR/REC-xml
XHTML による Web 開発
著: Ian S. Graham, 訳: 吉川 邦夫, 版: ASCII
XML と SGML の公開 DTD 集
アンテナハウス, http://www.antenna.co.jp/XML/dtdlist.htm

Copyright (C) 2001-2003 Hideyuki KURASHINA. <kura@nisoc.or.jp>