Contents
このページから、HTML 4仕様の記述を始める。まず、HTML文書の著者、HTML文書、HTML文書のユーザ、そしてユーザエージェントの4者が守るべき約束事を記す。
本書のキーワード、「MUST」「MUST NOT」 「REQUIRED」「SHALL」「SHALL NOT」「SHOULD」「SHOULD NOT」 「RECOMMENDED」「MAY」「OPTIONAL」は、 [RFC2119] の記述に従って解釈されるものとする。 ただし読みやすくするため、本書はこれらのキーワードを「すべて大文字」の形では記さない。
本書が、HTML文書の著者やユーザエージェントに対して望ましい振る舞いを記述しこれを勧める場合がある。この推奨は規範的なものではなく、推奨事項を満たしていなくとも本書の仕様には適合する。こうした推奨事項は、「……を勧める。」や「本仕様が推奨する……」あるいは類似の語句によって示す。
HTML文書を作る場合には、この仕様における、他のDTDセットではなく strict DTD に適合する文書を作るよう推奨する。 HTML 4仕様が定める各DTDの詳細については バージョン情報の項を参照のこと。
HTML 4仕様に適合するユーザエージェントとは、この仕様の必須事項と下記の3点とを遵守するもののことを指す。
しかし、推奨されるエラー処理動作については、 無効文書に関する注記を参照のこと。
ユーザエージェントは、過去との互換性のため、 推奨しない要素をもサポートすべきである。
推奨しない要素・属性の定義には、「推奨しない」と明記してある。
この仕様書には、推奨しない要素の使用を避ける方法も記してある。多くの場合、ユーザエージェントがスタイルシートをサポートしていることが前提となる。 一般的に言って、スタイルやフォーマットを整えるためには、HTMLのプレゼンテーション属性ではなくスタイルシートを使用すべきである。スタイルシートによる代替が可能なHTMLのプレゼンテーション属性は、推奨しないこととなった。 (例えば[CSS1]を参照のこと。)
HTML 4は、国際規格ISO 8879「Standard Generalized Markup Language (標準汎用マーク付け言語) SGML」に適合するSGMLアプリケーションである。(SGMLの定義は[ISO8879]を参照のこと。)
本書で用いる例文は、 厳密型の文書型定義 (strict DTD)に従い、移行型の文書型定義 (transitional DTD)や フレーム設定型の文書型定義 (frameset DTD)にしか定義がない要素・属性の例示が必要な場合のみ、これらに従う。記述を簡素化するため、多くの例文において、本来はHTML文書の冒頭に不可欠である 文書型宣言を省いている。
要素の定義箇所に示すDTD断片は、フレーム関連の要素を除き、 厳密型の文書型定義に基づく。
どういう場合に厳密型DTD、移行型DTD、フレーム設定型DTDを用いるかについては、 HTMLバージョン情報の項を参照のこと。
HTML 4 DTD中のコメントは、何らの規範を与えるものではなく、参考情報であるに過ぎない。
ユーザエージェントは、<?full volume>等のSGML処理命令や、コメント等をレンダリングしてはならない。この点に関する詳細、並びにHTML仕様で正当だがHTMLユーザエージェントがあまりサポートしていない他のSGML機能については、 サポート制限のあるSGML機能の項を参照のこと。
HTML文書は、インターネットを通じて、符号化情報を伴うバイト列として伝送される。 (文字符号化方法の項で解説する。) メッセージ実体と呼称される伝送の構造は、 [RFC2045]と[RFC2616]で定義されている。 MIMEタイプが text/htmlであるメッセージ実体が、HTML文書を表現する。
HTML文書のMIMEタイプは、次の通り定義される。
オプションのパラメータであるcharsetは、当該HTML文書をバイト列として表現するために用いた文字符号化方法を示す。 このパラメータの正当な値は、 文字符号化方法の項で定義する。 オプションのパラメータではあるが、常に存在させておくことを推奨する。