ビギナーズコーナー:SGML再入門 (1)-2
2002年01月10日作成
青木秀起
目次
1.(1)イントロダクション1.(2)SGML (Standard Generalized Markup Language)とは?
2.(3)SGMLの特徴
3.(4)SGML文書の構造
4.(5)SGMLの歴史
1.(6)終わりに
3 SGMLの特徴
3-1 文書の論理構造とは何か?
SGMLの最大の特徴は、あらゆる文書を物理的な構造(レイアウト)ではなく、論理的な構造という視点からとらえるという点にあります。では、文書の論理的な構造とは何でしょうか?
まず、次の3つの文書を比較してください。
図2 ワープロ文書とSGML文書のイメージ比較
文書1は、通常のワープロで書いた注文書で、文書内容とレイアウト情報が入っています。文書1を電子的にやり取りしようとすると、既述のようにレイアウト情報が障壁となります。そこで、文書1からレイアウト情報を取り除いてしまうと文書2のようになります。確かに文書2は純粋な文書の内容だけのプレーン・テキストなので互換性は高まりますが、コンピュータがデータを処理する際に理解できずに困ってしまいます。そこで、文書の内容に意味を付して構造化したものが文書3です。どこからどこまでが日付で、どこからどこまでが商品名か等を指定しています。このようにすれば、人間もコンピュータも理解することができます。文書の物理構造(レイアウト)よりも論理構造の方が文書にとってより本質的かつ普遍的な情報なのです。実は、この文書3がSGML文書です。
文書の論理構造に注目すると、文書をいくつかの文書要素に分類することができます。たとえば、文書1の注文書は、日付、注文先、見出し、段落、内容・・・と分類し、図3のようにツリー構造で表現することができます。
図3 文書3の論理構造
つまり、文書の論理構造とは、「一つの文書がどのような要素から成り立っており、各々の要素同士はどんな関係にあるのか」ということを指します。図3のツリー構造に基づいて書いたSGML文書が図2の文書3になります。
3-2 文書の論理構造を記述するには?
前節でご説明したように、文書の論理構造は、要素名を文書中にマークとして付けることによって表されます。主に以下の点で表現されます。
■要素の出現する順番
例)「日付」、「注文先」、「見出し」、「段落」、「内容」、「注文主」の順で出現する
■要素の相互関係
例)「住所」要素は「注文主」要素の子要素である
■要素の出現する回数
例)「日付」は文書中1回だけ出現する
「内容」のような要素名は、個々のテキストにではなく、要素をグループ化したものに付けた要素名です。このようにグループ化すれば文書の意味や論理構造をより明確にできます。