XML 入門 | DTD を使用して XML 構造を定義する | 要素の出現回数を指定する
DTD では要素が出現できる回数を指定できる。記号を付けない場合、要素は必ず 1 回だけ出現する。例えば次のモデルでは 商品 を 1 つだけ記述できる。
<!ELEMENT 在庫情報 (商品)>
1 つ以上の商品を記述できるようにするには + を付ける。
<!ELEMENT 在庫情報 (商品+)>
出現回数を表す記号
| 記号 | 出現可能回数 |
|---|---|
+ |
1 回以上 |
? |
0 回または 1 回 |
* |
0 回以上 |
| 指定なし | 1 回のみ |
記号は要素モデルの後ろに記述する。
<!ELEMENT 要素名 (要素名1記号)>
<!ELEMENT 要素名 (要素名1記号, 要素名2記号, ...)>
<!ELEMENT 要素名 (要素名1記号, 要素名2記号, ...)記号>
次の DTD では、商品を 1 つ以上、詳細情報を省略可能、色を 0 個以上として定義している。
<!DOCTYPE 在庫情報[
<!ELEMENT 在庫情報 (商品+)>
<!ELEMENT 商品 (名前, 個数, 詳細情報?)>
<!ELEMENT 名前 (#PCDATA)>
<!ELEMENT 個数 (#PCDATA)>
<!ELEMENT 詳細情報 (重さ, 色*)>
<!ELEMENT 重さ (#PCDATA)>
<!ELEMENT 色 (#PCDATA)>
]>
省略可能な要素には ? または * が必要である。記号がなければ必ず 1 回記述する。