概要
文章型宣言がないとHTML文章とは言えません。文章の先頭には必ず文章型宣言を記述しましょう。
文書型宣言の意味については、The Web KANZAKI内の文書型宣言の意味を御覧になって下さい。大変解り易く書かれています。
現時点で、文章型宣言を記入していないHTMLファイルをWeb上で公開しても、閲覧に関しては問題は起きないと言えます。文章型宣言がないファイルでもブラウザが「HTML文章」と(エラー訂正機能によって)認識して表示してくれるからです。宣言するしないもユーザーサイドの自由ともいえます。しかし、HTMLはSGMLのアプリケーションですから本来なら省略する事は出来ないとまこっち@MacoHouseは考えます。
SGMLについてはたのしいXML内のコンテンツ「SGMLってなぁに?」を参考にしてみて下さい。もっと詳しく・・・という貴方は、HTMLのDTDを読んでみようをご覧になって下さい。
古い文章型宣言も資料的要素を踏まえて残してあります。宣言の記述のしかたは、以下の通りです。
W3C勧告のもの
HTML
既に古いDTD
- HTML 2.0
-
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
- HTML 2.x(i18n:internationalization)
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML i18n//EN">
- HTML 3.2
-
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
現行で使われているDTD
- HTML 4.01 Strict
-
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
- HTML 4.01 Transitional
-
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- HTML 4.01 Frameset
-
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
XHTML
XHTML(Extensible Hypertext Markup Language)とは、SGMLで定義されていたHTMLをXMLの文法で定義しなおしたマークアップ言語であり、HTMLと同じくW3Cによって仕様が勧告されている。
XML宣言
XML宣言は文字コードがUTF-8もしくはUTF-16でない場合は必ず先頭に記述しなければなりません。
XHTML文書の制作者は、すべての文書でXML宣言を使うよう強く奨励される。文書のキャラクタエンコーディングがデフォルトの UTF-8 か UTF-16 以外のものであるときは、そうした宣言は必須である。
- UTF-8
<?xml version="1.0" encoding="UTF-8"?>
- UTF-16
<?xml version="1.0" encoding="UTF-16"?>
- Shift-JIS
<?xml version="1.0" encoding="Shift-JIS"?>
- iso-2022-jp
<?xml version="1.0" encoding="iso-2022-jp"?>
- euc-jp
<?xml version="1.0" encoding="euc-jp"?>
DTD
- XHTML 1.0 Strict
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
- XHTML 1.0 Transitional
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- XHTML 1.0 Frameset
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
- XHTML 1.1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
- XHTML Basic(携帯電話用Web文章で用いられる)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN" "http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd">
ISOとIECとの合同会議(JTC)によって公開されたもの
- ISO/IEC 15445:2000 (ISO-HTML)
-
<!DOCTYPE HTML PUBLIC "ISO/IEC 15445:2000//DTD HTML//EN">
<!DOCTYPE HTML PUBLIC "ISO/IEC 15445:2000//DTD HyperText Markup Language//EN">
日本工業規格によって公開されたもの
- JIS X 4156:2000(JIS-HTML)
-
ISO/IEC 15445:2000と同じDTDです。
この規格は, 2000年に第1版として発行されたISO/IEC 15445 [Information Technology ― Document Description and Processing Languages ― HyperText Markup Language (HTML)]を翻訳し,技術的内容を変更することなく作成した日本工業規格である。
携帯電話用Web文章で用いられるもの
W3C勧告のもの
- Compact HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD Compact HTML 1.0 Draft//EN">
- XHTML Basic
- 既出
NTT DoCoMo
- NTT DoCoMo iモード XHTML 1.0
<!DOCTYPE html PUBLIC "-//i-mode group (ja)//DTD XHTML i-XHTML(Locale/Ver.=ja/1.0) 1.0//EN" "i-xhtml_4ja_10.dtd">
- NTT DoCoMo iモード XHTML 1.1
<!DOCTYPE html PUBLIC "-//i-mode group (ja)//DTD XHTML i-XHTML(Locale/Ver.=ja/1.1) 1.0//EN" "i-xhtml_4ja_10.dtd">
OMAが策定したもの
- XHTMLモバイル・プロファイル
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
今のところ、この仕様を最も忠実に公式に実装しているのはKDDIだけです。