HTML4文書の基本構造

HTML4について、HTML 4.01 仕様書邦訳からの引用ベースで、今更ながら整理しておく。

1つのHTML 4文書は、次の3つの部分から構成される。

  1. HTMLバージョン情報を含む行。
  2. 宣言的ヘッダの部分 (HEAD要素として区切られる)。
  3. 文書の実際のコンテンツを含む、本体。本体は、BODY要素か FRAMESET要素のどちらで実装されてもよい。

空白類(space、new line、tab、及びコメント)は、上記3部分の前後どちらに出現してもよい。 2番目と3番目の部分は、 HTML要素として区切られる。

簡単なHTML文書の例を示す。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
   "http://www.w3.org/TR/html4/strict.dtd">
<HTML>
   <HEAD>
      <TITLE>はじめてのHTML文書</TITLE>
   </HEAD>
   <BODY>
      <P>Hello world!
   </BODY>
</HTML>
7.1 HTML文書の構造の概説

ヘッダには下記の要素を記述可能である。

メタデータについて、以下に引用する。

一般に、メタデータの指定には次の2つの手法が取られる。

  1. プロパティとその値を宣言する。これには2通りのやり方がある。
    1. 文書中での、META要素による宣言。
    2. 文書外のメタデータへLINK要素でリンクする(リンク形式の項を参照のこと)。
  2. プロパティとその正当な値を定義しているプロファイルを参照する。プロファイルを指し示すのには、HEAD要素の profile属性を用いる。

プロファイルがHEAD要素について設定されるため、ここに含まれるすべてのMETA要素及びLINK要素において同じプロファイルが適用されるという点に注意されたい。

ユーザエージェントは、メタデータ機構のサポートは要求されない。メタデータをサポートしようとするユーザエージェントに対して、本仕様はメタデータをどう解釈すべきかを定義しない。

META要素

<!ELEMENT META - O EMPTY               -- generic metainformation -->
<!ATTLIST META
  %i18n;                               -- lang, dir, for use with content --
  http-equiv  NAME           #IMPLIED  -- HTTP response header name  --
  name        NAME           #IMPLIED  -- metainformation name --
  content     CDATA          #REQUIRED -- associated information --
  scheme      CDATA          #IMPLIED  -- select form of content --
  >

開始タグ: 必須、終了タグ: なし

属性定義

以下の属性に関して、許容される値及び解釈は、プロファイルに依存する。

name = name [CS]
この属性は、プロパティの名前を識別させる。本仕様は、当該属性の正当な値集合を列挙しない。
content = cdata [CS]
この属性は、プロパティの値を指定する。本仕様は、当該属性の正当な値集合を列挙しない。
scheme = cdata [CS]
この属性は、プロパティ値の解釈に用いるべきスキームの名前を示す (詳しくはプロファイルの項を参照されたい)。
http-equiv = name [CI]
この属性はnameと置き換えて用いられ得る。HTTPサーバは、この属性を、HTTP応答メッセージヘッダに用いる情報を収集するために用いる。

別途定義がある属性

  • lang (言語情報)、dir (テキスト方向)
メタデータの指定

なお、SCRIPT要素は下記の通り定義されている。

SCRIPT要素は、HTML文書にスクリプトを組み込むもので、 HEAD要素あるいは BODY要素に、何回出現してもよい。

Scripts in HTML documents (ja)