2005-03-07

正しいHTMLとは?(其の弐)

結局のところ、正しいHTMLとは何なのでしょうか?その前に、そもそもHTMLとは何なのでしょうか?

多くの人々(私自身も含めて)は、何を今更と思われるかも知れないが、本日はその点について簡単におさらいしてみることにしよう。

HTMLとは?

W3Cによる HTML 4.01 仕様書(原典)には、次の様な記載があります。

To publish information for global distribution, one needs a universally understood language, a kind of publishing mother tongue that all computers may potentially understand. The publishing language used by the World Wide Web is HTML (from HyperText Markup Language).

[引用: HTML 4.01 Specification: 2.2 What is HTML? より]

つまり、WWWという仕組みの情報網を利用した世界的な規模で情報の公開を行う為に、全てのコンピュータが理解でき、且つ世界中で理解されうる言語として、HTMLが考案されその役割を担うことになったのです。

さて、このHTMLを利用した情報資源(HTML文書)の作成は、HTMLのマーク付け構造物(要素や属性等)の構文がDTD(文書型定義)にて定義されているので、文書型定義に基いて記述を行うだけで、世界中の誰もが世界的な規模で利用可能な情報資源を作成することができます。そして、そうして作成されるHTML文書には、どの仕様のHTMLであるかの宣言(文書型宣言)が文書冒頭に示されます。即ち、文書型宣言があるHTML文書のみが適正なHTML文書(valid HTML)になり得るのです。

validinvalid

前述した適正なHTML文書になり得るHTML文書は、妥当(valid)なHTMLと不当(invalid)なHTMLとに分別されます。つまり、妥当なHTMLは、文書型宣言で示される文書型定義の内容に準じた構文で記述されたHTML文書を指し、逆に妥当では無い(不当な)HTMLは、HTMLの構文に問題がある為にUAがHTMLを解釈(例えば、ブラウザが表示)する際に不具合等の問題を生じる恐れがあるHTML文書を指します。

例えば、UAがHTMLを解釈(例えば、ブラウザが表示)する際には、妥当なHTMLならば、HTMLの規則(文書型定義)に従って正しく解釈(表示)することができます。一方、妥当では無いHTMLは、UA側でエラーを補正して解釈(表示)する為の余計な処理を要するか、或いは解釈不能に陥ります。もしも、UA側でエラーを補正できる場合であっても、それが適切に補正されるかどうかはUA次第なのです。

即ち、HTML作成者の意図を正確に伝達する第一歩として、妥当なHTMLの記述を心掛ける必要があるのです。

連絡事項

さて、この話題は一度で纏めきれる内容ではないので、今後幾度かに渡り簡単に記載しようと思います。一応次回は、「validで十分なのか?」を予定しています。

正しいHTMLとは?(其の参)に続く。