属性リスト宣言

1月 1, 2003 · Posted in XML · Comment 

書式

<!ATTLIST 要素名 属性名 (属性値の候補|属性値のデータ型) デフォルト属性 "デフォルト値">

データ型

データ型 意味
CDATA 文字データを表すデータ型
ID 一意識別子
IDREF 一意識別子への参照
IDREFS 複数のIDREF
NMTOKEN 名前として使用できる文字を記述するためのデータ型
NMTOKENS 複数のNMTOKEN
ENTITY 外部実態
ENTITIES 複数のENTITY
列挙 ユーザ指定の属性値リスト

例:CDATA

<!ATTLIST profile name CDATA #IMPLIED>

例:ID, IDREF, IDREFS

<!ATTLIST profile snum (ID|IDREF) #REQUIRED>

例:NMTOKEN, NMTOKENS

<!ATTLIST profile name NMTOKEN #IMPLIED>

デフォルト宣言

デフォルト値 説明
デフォルト値として設定される
#REQUIRED 省略を許可しない
#IMPLIED 省略可能
#FIXED “値” 固定値

<!ATTLIST profile name CDATA "MAME">

省略不可

<!ATTLIST profile name CDATA #REQUIRED>

省略可

<!ATTLIST profile name CDATA #IMPLIED>

固定値

<!ATTLIST profile name CDATA #FIXED "MAME">

メモ書き

ひとつの要素に複数の属性を定義する場合、以下の2通りの方法がある。

<!ATTLIST 要素名 属性名1 候補値 "デフォルト値">
<!ATTLIST 要素名 属性名2 候補値 "デフォルト値">
<!ATTLIST 要素名 属性名1 候補値 "デフォルト値"
          要素名 属性名2 候補値 "デフォルト値">

文章型宣言 (DOCTYPE宣言)

1月 1, 2003 · Posted in XML · Comment 

書式

<!DOCTYPE 要素名 []>

[ と ] の中に DTD を記述する。

要素型宣言

1月 1, 2003 · Posted in XML · Comment 

書式

<!ELEMENT 要素名 (内容定義)>

内容定義

パターン一覧

パターン 解説
(#PCDATA) 内容は文字データのみ
(子要素1, 子要素2 … 子要素n) 子要素を持つ
(#PCDATA|子要素1…子要素n) 上記2つのデータが混合する
EMPTY 空要素

出現回数指定一覧

指定記号 解説
? 要素は0個か、または1個だけ出現。
* 要素は0個以上、いくつでも出現。
+ 要素は最低1個以上出現。
, 要素は指定された順番どおりに出現。
| 区切られたようそのうち、どれか1個出現。
() ひとまとまり

例:要素内には子要素が 1 個だけ出現する。

<!ELEMENT 要素 (子要素)>

例:要素内の子要素は 子要素 1, 2, 3 の順番で出現する。

<!ELEMENT 要素 (子要素1, 子要素2, 子要素3)>

例:要素内には 子要素1 か 子要素2 のどちらかひとつが出現する。

<!ELEMENT 要素 (子要素1 | 子要素2)>

例:要素内には子要素が0個か、または1個出現する。

<!ELEMENT 要素 (子要素?)>

例:要素内には子要素が1個以上出現する。

<!ELEMENT 要素 (子要素+)>

例:要素内には子要素が0個以上、いくつでも出現する。

<!ELEMENT 要素 (子要素*)>

例:空要素の宣言

<!ELEMENT 要素 EMPTY>

次ページへ »