6.では,要素の内容又は属性の値として現われる基本データ型を規定する。
HTML DTDの読み方に関する導入情報については, SGMLの概説を参照されたい。
各属性定義は, その値の 大文字及び小文字の区別に関する情報を含む。大文字・小文字の情報は, 次のキーで表される。
属性値がリストの場合,特にそうでないと示されない限り,キーは,リストのすべての値に適用される。
文書型定義は,PCDATA,CDATA,NAME,IDなどの SGMLトークンを使用して,HTML要素の内容及び属性値の構文を指定する。 全規定については, [ISO8879]を参照のこと。キー情報の要約を 次に示す。
利用者エージェントは, CDATA属性値の冒頭及び末尾の空白を無視してよい。 例えば, " myval "は "myval"と解釈してよい。文書作成者は, 冒頭又は末尾に空白のある属性値を宣言しないほうがよい。
CDATAの属性値をもつHTML4.0属性のいくつかに関して,この規定は,DTDによって表現できない属性の正当な値の集合に, さらに制約を課す。
STYLE要素及びSCRIPT要素は,そのデータモデルにCDATAを用いるが, これらの要素については, 利用者エージェントは,CDATAを別の方法で扱わなければならない。マーク付け及び実体は, 生テキストとして扱われ,そのままアプリケーションに渡されなければならない。 文字シーケンス"</"(終了タグ開始の区切り子)の最初の出現は,要素内容の最後を終了させるものとして扱われる。 妥当な文書では,これは要素の終了タグになる。
多くの属性(DTDにおける %Text;)は, "人間可読"であることを意味するテキストをとる。属性に関する導入情報については, 属性の概説を参照のこと。
この規定は, [URI]で定義される用語URIを用いる。 ([RFC1630]も参照。)
URIは, [RFC1738]及び [RFC1808]で定義されるとおり,URLを含むことに 注意されたい。
相対URIは,基本URIを用いて完全URIに解決される。 [RFC1808]の第3節が, この処理の標準的なアルゴリズム を定義している。 基本URIに関する詳細情報は,linksの章の 基本URIの節を参照されたい。
URIは, DTDの中でパラメタ実体 %URI;によって表現される。
一般にURIは, 大文字及び小文字を区別する。 大文字及び小文字の区別が問題でない(マシンの名前など)URI又はURIの一部があってもよいが,これらを識別するのは容易ではない。 利用者は常に,安全側から,URIは大文字及び小文字を区別すると考えることが望ましい。
URI属性値における非ASCII文字 の情報については, 附属書を参照のこと。
属性値型"color"(%Color;)は, [SRGB]で指定される 色定義を参照する。 色の値は,番号記号('#'のこと。原規定では,hash mark。)の後の16進数又は次の16色名の一つのいずれかとする。 色名は, 大文字及び小文字を区別しない。
Black="#000000" | Green="#008000" | ||
Silver="#C0C0C0" | Lime="#00FF00" | ||
Gray="#808080" | Olive="#808000" | ||
White="#FFFFFF" | Yellow="#FFFF00" | ||
Maroon="#800000" | Navy="#000080" | ||
Red="#FF0000" | Blue="#0000FF" | ||
Purple="#800080" | Teal="#008080" | ||
Fuchsia="#FF00FF" | Aqua="#00FFFF" |
したがって, 色値の"#800080"及び"Purple"は, どちらも紫色を参照する。
色は, 文書に多くの情報量を付加でき,文書をさらに読み易くすること ができるが,文書に色を含める場合には,次の指針を考慮すること。
HTMLは, 属性に関する長さの値の三つの型を, 次のとおり指定する。
長さの値は, 大文字及び小文字を区別しない 。
備考 [RFC2045]及び[RFC2046]の中で定義される"メディア型"は, リンクされた資源の性質を規定する。この標準情報(TR)では, 現在の使用法に従って"メディア型"ではなく"内容型"という語を採用する。 さらに,この標準情報(TR)の"メディア型"は,利用者エージェントが文書をレンダリングするメディアのことを言ってもよい。
この型は,DTDの中で%ContentType; によって表現される。
内容型は, 大文字及び小文字を区別しない。
内容型の例は, "text/html", "image/png", "image/gif", "video/mpeg", "audio/basic", "text/tcl", "text/javascript"及び"text/vbscript"を含む。登録済みMIME型の現在のリストについては, [MIMETYPES] を参照されたい。
備考 内容型 "text/css"は, 現在IANAで登録されていないが, リンクされた資源が[CSS1]スタイルシートであるときに用いなければならない。
型が言語コード(DTDでは%LanguageCode)である属性の値は, [RFC1766]の第2節で指定されるとおり, 言語コードを参照する。HTMLでの言語コードの指定に関する情報については, 言語コードの節を参照されたい。 言語コードの中では, 空白を用いることはできない。
言語コードは, 大文字及び小文字を区別しない。
"charset"属性(DTDでは%Charset)は, 文字符号化の節で定義する文字符号化を参照する。 値は, IANA登録簿(完全リストについては[CHARSETS]を参照)からの文字列(例えば, "euc-jp")でなければならない。
文字符号化の名前は, 大文字及び小文字を区別しない。
利用者エージェントは,外部資源の文字符号化を決定するには, 文字符号化の指定の節で示すステップに従わなければならない。
文書文字集合から単一文字を呼び出す 属性もある。 これらの属性は, DTDの中で%Character型をとる。
"&"などの文字参照を用いて, 単一文字を指定してもよい。
[ISO8601]は, 日付及び時刻の表現における多くのオプション及び変形を許容している。現規定は, 正当な日時の文字列(DTDの中では, %Datetime)の定義のために,プロファイル[DATETIME]の中に規定される書式の一つを使用する。
その書式を次に示す。
YYYY-MM-DDThh:mm:ssTZDここで,
YYYY = 4桁の年 MM = 2桁の月 (01=1月 など) DD = 2桁の日 (01〜31) hh = 2桁の時 (00〜23) (am/pm は使わない。) mm = 2桁の分 (00〜59) ss = 2桁の秒 (00〜59) TZD = タイムゾーン指示子
タイムゾーン指示子は, 次の一つとする。
ここで示された構成要素は, 厳密にこの句読点を伴って存在しなければならない。[ISO8601]に規定されるとおり, 時間要素の開始を示すために, 文字列の中に"T"が現れる(必ず大文字)ことに注意されたい。
アプリケーションの生成が秒までの時間を知らなければ,秒(必要であれば, 分及び時)については値"00"を使用してもよい。
備考 [DATETIME] は, 閏秒の課題に言及しない。
文書作成者は, 次の認識された リンク型を 使用してよい。ここにリストされているリンク型は, 従来の解釈をもつ。 DTDの中では, %LinkTypesは, スペースで分離された, リンク型のリストを参照する。空白文字は, リンク型では使用できない。
これらのリンク型は, 大文字及び小文字を区別しない。つまり, "Alternate"は, "alternate"と同じ意味をもつ。
利用者エージェント, 検索エンジンなどは,さまざまな方法でこれらのリンク型を解釈してよい。例えば,利用者エージェントは, ナビゲーションバーによって, リンクされた文書へのアクセスを提供してよい。
文書作成者は,この標準情報(TR)で規定されない 付加的リンク型を定義することを望んでもよい。付加的リンク型を定義しようとする場合,文書作成者は, プロファイルを使用して, リンク型を定義するために使用する規約を引用するほうがよい。詳細については, HEAD要素のプロファイル属性を参照のこと。
リンク型に関する詳細については, HTML文書のリンクに関する節を参照されたい。
認識されたメディア記述子(DTDでは, %MediaDesc)のリストを次に示す。
HTMLの将来版は, 新しい値を導入し,パラメタ化した値を使用してよい。これらの拡張の導入を容易にするために, 適合する利用者エージェントは, media属性値を次のとおり構文解析できなければならない。
media="screen, 3d-glasses, print and resolution > 90dpi"
は, 次にマップされる。
"screen" "3d-glasses" "print and resolution > 90dpi"
"screen" "3d-glasses" "print"
備考 スタイルシートは, その中のメディア依存の変形(CSSの@media構成子など)を含む。 この場合, "media=all"の使用は, 適切であろう。
スクリプトデータ(DTDの中では, %Script; )は, SCRIPT要素の内容, 及び組込みイベント属性の値であり得る。 利用者エージェントは, HTMLマーク付けとしてスクリプトデータを評価してはならない が,その代わりデータとしてそれをスクリプトエンジンに渡さなければならない。
スクリプトデータの大文字及び小文字の区別は, スクリプト言語に依存する。
要素内容であるスクリプトデータは, 文字参照を含めないが, 属性の値であるスクリプトデータは, それらを含んでよいことに注意されたい。附属書は, 非HTMLデータの指定 について,さらに詳しい情報を提供する。
スタイルシートデータ(DTDでは, %StyleSheet;)は, STYLE要素の内容, 及びstyle属性の値であり得る。利用者エージェントは, スタイルデータをHTMLマーク付けとして評価してはならない。
スタイルデータの 大文字及び小文字の区別は, スタイルシート言語に依存する。
要素内容であるスタイルシートデータは, 文字参照を含めないが, 属性の値であるスタイルシートデータは, それらを含んでよいことに注意されたい。 附属書は, 非HTMLデータの指定 について, さらに詳しい情報を提供する。
次にリストする予約済みの名前を除き, フレームターゲット名(DTDでは, %FrameTarget;)は, アルファベット文字(a〜z A〜Z)で始まらなければならない。 利用者エージェントは, 他のターゲット名をすべて無視することが望ましい。
次のターゲット名は予約され, 特別の意味をもつ。