4.要素型宣言
前章では、XMLのスキーマ言語、DTDについて、説明しました。本章では、XMLの最も基本的な情報単位である、要素を定義する方法について説明します。
4.1 要素型宣言
要素型宣言では、要素の名前や階層構造を規定します。要素型宣言の構文は以下の通りです。
<!ELEMENT 要素名 内容モデル>
要素名には、ほとんどの文字が使用できます(詳細は、2章「要素と属性に使用できる文字 」を参照ください)。内容モデルでは、要素が含む内容の構造を定義します。内容モデルには以下のタイプがあります。
要素内容 |
子供となる内容が要素のみで成り立っている。テキストは直接の子供としては出てこない。 |
混在内容 |
子供となる内容にテキストが存在し、そのテキストに混在してこの要素が書かれることもある。 |
空要素 |
子供となる内容はない。この要素は空要素を表すタグで表現できる。 |
任意要素 |
DTDで宣言される要素であれば直下の子供要素として、それをどんな順序で書いてもよい。 |
以下に要素型宣言の例を示します。
<!ELEMENT ANIMAL ANY> <!ELEMENT elephant (african_elephant asian_elephant)*> <!ELEMENT p (#PCDATA|emph)* > <!ELEMENT br EMPTY >
当然ですが、DTDの中で、同じ名前の要素を複数宣言することはできません。