contents

HTMLのDTDの読み方

実体の定義(Entity definitions)

実体の定義は、大きく「パラメータ実体」と「一般実体」の2つにに分類することができます。

パラメータ実体の定義

文字列(実体)に名前(実体名)をつけて定義し、DTDの中でその文字列を名前で参照できるようにします。これによって、DTDを簡略化して記述できます。この定義はDTDの中でのみ有効となります。

パラメータ実体の定義方法

 <!ENTITY % 実体名 "実体">

参照の方法

 %実体名;

パラメータ実体を定義する場合には「%」と「実体名」の間に半角のスペースを入れます。参照する場合には、スペースを入れずに続けて記述されます。また、実体としてさらに他の実体名を指定することもできます。

【 例 】

<!ENTITY % fontstyle "TT | I | B | BIG | SMALL">
<!ENTITY % inline "#PCDATA | %fontstyle; | %phrase; | %special; | %fontctrl;">

2行目の「%fontstyle;」は、1行目の実体を参照しています。したがって、この部分は「TT | I | B | BIG | SMALL」と書いたのと同じことになります。


また、参照するパラメータ実体が広く一般に公開されているものである場合には、以下のように指定されます。

<!ENTITY % 実体名 PUBLIC "公開識別子">

【 例 】

<!ENTITY % HTMLlat1 PUBLIC
"-//W3C//ENTITIES Latin1//EN//HTML"
"http://www.w3.org/TR/REC-html40-971218/HTMLlat1.ent">


一般実体の定義

特殊文字などを文書インスタンス(HTML)の中で「&○○;」などと参照できるように定義します。実体名(○○の部分)は大文字と小文字が区別されますので注意してください。

<!ENTITY 実体名 "実体">

<!ENTITY 実体名 データ型 "実体">

【 例 】

<!ENTITY yen CDATA "&#165;">
<!ENTITY copy CDATA "&#169;">