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

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

ビギナーズコーナー:SGML再入門 (1)-3

2002年01月10日作成 

(株)日本ユニテック
青木秀起


目次

1.(1)イントロダクション
1.(2)SGML (Standard Generalized Markup Language)とは?
2.(3)SGMLの特徴
3.(4)SGML文書の構造
4.(5)SGMLの歴史
1.(6)終わりに

4 SGML文書の構造

SGML文書は、以下の3つの部分で構成されています。


図4 SGML文書の構造

4-1 文書インスタンス

文書インスタンスでは、各々の要素に「ここからここまではこの要素です」という表示を付けます。この要素の前後を囲む文字や記号のことをタグと呼び、文書にタグを付けることを「マークアップする」と言います。図2の文書3が文書インスタンスで、タグ付き文書のことを文書インスタンスと呼んでいます。SGMLでは任意のタグ名を付けることができるので、人間もタグ名を見てある程度文書要素の内容を理解することができます。

4-2 DTD(文書型定義)

DTD (Document Type Definition) は、文書型、つまり文書インスタンスをどように書けばよいかという「マークアップの決まり」を定義しています。SGMLでは、ユーザが自由に「マークアップの決まり」を変更することができます。たとえば、どんな名前の要素を使用するか、それぞれの要素をどんな順番で何回使用するか、要素を省略できるかどうか等を定義することができます。図2の文書3のDTDは次のように書くことができます。 「内容」のような要素名は、個々のテキストにではなく、要素をグループ化したものに付けた要素名です。このようにグループ化すれば文書の意味や論理構造をより明確にできます。


図5 DTDのサンプル

図5において、「- o」や「- -」は、タグを省略することができるかどうかを指定する部分です。最初の記号が開始タグを、2番目の記号が終了タグを表し、「-」は省略不可、「o」は省略可(omission)を表します。

4-3 SGML宣言

SGML宣言では、「DTDや文書インスタンスでどんな文字や機能を使うか」を宣言します。たとえば、日本語文字集合JIS X 0208を使用することを宣言します。
また、XMLではタグの区切り子は"<"と">"に決められていますが、SGMLの場合タグの区切り子に使う記号を任意に指定することもできます。たとえば、タグの区切り子としてシステムAでは"<>"を使用し、システムBでは":."を使用しているとします。このままでは情報の共有は困難ですが、SGML宣言で宣言しておけば、システム間でお互いの区切り子の対応付けができるのです。SGML宣言はSGML文書の標準化に重要な役割を果たすわけです。


図6 区切り子の指定

さらに、タグを省略してもよいか、タグを短縮してもよいか等のSGML機能を規定することもできます。





ページトップへ戻る