
要素の内容や属性の値として使用されるデータ型は以下のとおりです。
大文字・小文字の扱いは、次のキーワードで示されます。
属性の値がリスト形式のときには、他に特記されていない限りリスト中の全ての値に適用されます。
文書型定義(DTD)
は、HTMLの要素内容や属性値のシンタクスについて、PCDATA、CDATA、NAME、ID等のSGMLトークンを用いて定めます。トークンの完全な定義は[ISO8879]
を参照してください。
CDATA型属性値の、冒頭あるいは末尾の空白文字を無視します。
style要素とscript要素はCDATA型の内容モデルを持っていますが、両要素についてはCDATAを以上とは異なる方法で処理します。マーク付けと実体は生のテキストとして扱い、あるがままでアプリケーションに渡します。最初に現れる文字列「</」(終了タグ開始区切り子)は、そこで要素の内容が終わるものとして扱います。
DTDで %Text; と示される多くの属性値は、「人間が読んで解る」という意味の普通のテキストを示します。
URI(%URI;)は、[URI]
が定義する通りの意味で用います。
URIにはURLも含まれます。([RFC1738]
と[RFC1808]
で定義されています。)
相対URIは、基底URIを用いてフルURIへと解決されます。基底URIについては、base要素の解説を参照してください。
URIは基本的に大文字小文字の区別があります。コンピュータ名など、URIあるいはURIの一部分において大文字小文字が区別されない場合もありますが、安全性の面からURIは常に大文字小文字を区別すると覚えたほうがいいです。
属性値形式「色」(%Color;)は、[SRGB]
モデルで定義される色指定を表します。
色の値は、#記号を冒頭につけた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" |
カラー化によって、文書はより多くの情報を表すようになり、また読みやすくもなりますが、カラー化については以下の指針を考慮に入れることを勧めます。
HTMLには、属性値となる長さの形式に、3つの形式があります。
を参照してください。
なお、長さの値は大文字小文字の区別に無関係です。
MIMEタイプ(%ContentType;)は大文字小文字を区別しません。
MIMEタイプの例には、以下のようなものがあります。現在登録されているMIMEタイプの一覧は、[MIMETYPES]
を参照してください。
| text/html | HTMLファイル |
| text/css | CSSファイル |
| text/javascript | JavaScriptファイル |
| image/gif | GIF画像ファイル |
| image/jpeg | JPEG画像ファイル |
| image/png | PNG画像ファイル |
| audio/midi | MIDIサウンドファイル |
| video/mpeg | MPEG映像ファイル |
| application/pdf | Adobe PDFファイル |
| application/java | JAVAアプレットファイル |
属性値が言語コード(%LanguageCode;)の場合、[RFC1766]
の2が定義する内容を指します。
言語コードは大文字小文字を区別しません。また、空白文字を含めることはできません。
言語コードの例には、以下のようなものがあります。
| ar | アラビア語 |
| de | ドイツ語 |
| en | 英語 |
| es | スペイン語 |
| fr | フランス語 |
| it | イタリア語 |
| ja | 日本語 |
| ko | 韓国語 |
| la | ラテン語 |
| pt | ポルトガル語 |
| ru | ロシア語 |
| zh | 中国語 |
「charset属性」(%Charset;)は、文字符号化方法を指し、「euc-jp」等のように、[IANA]
に登録された文字列でなければいけません。登録されている全一覧は、[CHARSETS]
を参照してください。
文字符号化方法の名称は、大文字小文字を区別しません。
ユーザエージェントは、次の優先順位で文字符号化方法を決定します。
また、ユーザエージェントは一般的に、文字符号化方法の情報が得られない場合に利用するローカルなデフォルト文字符号化方法を、ユーザが設定できるようになっています。
日本語の文字符号化方法の例には、「Shift_JIS」「EUC-JP」「UTF-8」などがあります。
%Character;は、任意の1文字(単一文字)を指します。
この単一文字は、「&」のように、文字参照で指定することもできます。
[ISO8601]
では、日付と時刻(%Datetime;)の表現に関して、多くのオプションとバリエーションが認められていますが、HTML4.01では、プロファイル[DATETIME]
で記述される1つの形式のみを正当な日付/時刻文字列として採用しています。
[DATETIME]
は閏秒を指定することができません。
YYYY-MM-DDThh:mm:ssTZD
| YYYY | 年 (4桁) | |
| MM | 月 (2桁) | |
| DD | 日 (2桁) | |
| hh | 時 (2桁/00〜23) | |
| mm | 分 (2桁/00〜59) | |
| ss | 秒 (2桁/00〜59) | |
| TZD | タイムゾーン | |
| Z | UTC (協定標準時) | |
| +hh:mm | UTCよりhh時間mm分進んでいる現地時間 | |
| -hh:mm | UTCよりhh時間mm分遅れている現地時間 | |
年は4桁、それ以外は2桁で指定します。
区切り「T」を含めて、全ての文字を指定どおりに書く必要があります。
たとえば、日本(+09:00)で、2002年8月27日22時33分44秒の場合は、以下のように記述します。
2002-08-27T22:33:44+09:00

リンクタイプ(%LinkTypes;)は、スペースで区切って複数の値を指定をすることができます。個々のリンクタイプ自体には、スペースの存在は許されません。
リンクタイプは大文字小文字を区別しません。
下記は、認定された出力メディア(%MediaDesc;)の一覧です。
スクリプトデータ(%Script;)は、script要素の内容及び組込みイベント属性の値であり得ます。
スクリプトデータが大文字小文字を区別するかどうかは、スクリプト言語に依存します。
要素の内容であるスクリプトデータには文字参照を含むことができませんが、属性の値には文字参照を含むことができます。
スタイルシートデータ(%StyleSheet;)は、style要素の内容、及びstyle属性の値であり得ます。
スタイルデータが大文字小文字を区別するかどうかはスタイル言語に依存します。
要素の内容であるスタイルデータには文字参照を含むことができませんが、属性の値には文字参照を含むことができます。
下に示す予約済みのフレーム・ターゲット名(%FrameTarget;)を除いて、フレーム・ターゲット名は、アルファベット(小文字・大文字)で始めなければなりません。ユーザエージェントは、それ以外の名称を無視します。
特別な意味を持つ、予約済みのフレーム・ターゲット名は以下のとおりです。