Hop step XHTML―ホップ ステップ XHTML

Section 19:メタ情報モジュール(1)

 メタ情報の“メタ”とは,“高次の”のという意味である。ここでは,(文書)情報の高次の情報,“情報に関する情報”程度に理解すればよいだろう。

メタ情報:meta 要素

 meta 要素は,head 要素の内容として,どこにでも,いくつでも現れることができ,文書に関する情報を記述するのに用いる。要素の内容は持たない

内容モデル
EMPTY
meta 要素の属性
属性名属性値備考
国際化に関する属性
http-equiv名前トークンHTTP サーバがレスポンスヘッダを作成するときに使用される
name名前トークン情報の項目の名前
content文字列必須:情報の項目に対する値
scheme文字列挿入した日時

 ここで,名前トークンとは,「.」「-」「_」「:」以外のほとんどの記号を含まない文字列である。http-equiv 属性および name 属性には,通常,定められた値を与えるので,ふつうに利用する分にはそれほど気にしなくてもよいだろう。

 meta 要素は,次のいずれかの書式で利用される。

<meta name="..." content="..." />
<meta http-equiv="
..." content="..." />

うち,後者の書式は,通常 XHTML 1.1 では使用しない(詳細は Section 21 で述べる)。

 また,scheme 属性は,content 属性の値の書式を明示する。head 要素profile 属性と組み合わせて使用されることが多い。詳細は,Section 20 で例とともに示す。

文書情報の記述

 meta 要素のもっともポピュラーな使い方は,文書情報を与えることであろう。これは,Let's begin XHTML の Section 14 でも触れた。

 復習すると,name 属性と content 属性の組で文書情報を設定する。name 属性に与える値としては,次のようなものがある。

title
ページのタイトル。
author
ページの筆者。
keywords
ページのキーワード。半角カンマ「,」で区切って並べる。“keywords”と複数形になっていることに注意。
description
ページの概要。
copyright
ページの著作権情報。

 次のように文書情報を記述する。

<meta name="title" content="Let's begin XHTML" />
<meta name="copyright" content="Copyright (C) 2004, 2005 Studio HEXANE, Japan" />
<meta name="keywords" content="XHTML, XHTML 1.1, HTML, ホームページ作成, WWW パブリッシング" />
<meta name="description" content="XHTML 1.1 tutorial: XHTML 1.1 チュートリアル,中級編。" />

 ここで,キーワード(keywords)および概要(description)は,検索エンジンが参考にする場合がある。ただし,キーワードにページの内容とは無関係な語を大量に入れて,ヒットさせようとする行為(サーチエンジンスパム)が目立ったため,総じて重要視はされない。2005 年 7 月現在,Googlegooinfoseek では,検索結果に対するスニペット(抜粋)の代わりに,ページで指定した概要が出力される。

 また,WWW ページ作成ソフトウェアの中には,次のような記述を加えることがある。

<meta name="generator" content="作成ソフトウェアの名称" />

検索エンジンの巡回

 meta 要素を用いて,検索エンジンの情報収集プログラム(ロボット,スパイダー)の巡回とインデクシング(ここでは,データベースに登録して検索結果として掲載できるようにすること)に関して指示することができる。まっとうな検索エンジンでは,この指示に従う(行儀の悪いサーチエンジンは,これに従わないことがある)。

 これらは定型なので,以下に列挙しておく。name 属性に与えるのが,“robots”と複数形になっている点に注意。

 そのページをインデックスさせない,そのページにあるリンクをたどらせない

<meta name="robots" content="noindex,nofollow" />

 そのページはインデックスさせるが,そのページからのリンクはたどらせない

<meta name="robots" content="index,nofollow" />

 そのページはインデックスさせないが,そのページからのリンクはたどらせる

<meta name="robots" content="noindex,follow" />

 そのページをインデックスさせ,そのページからのリンクもたどらせる(一般的に,無指定の場合はこれが指定されているものとみなされる):

<meta name="robots" content="index,follow" />

 content 属性に 1 つだけ値を与えたり,all または none を与えたりもできるが,上記の 4 つの記述で尽くせるので,これらについては本チュートリアルでは詳しく説明しない。

メタ情報のスキーム

 meta 要素には,scheme 属性があり,メタ情報をどのように解釈するかを与える。詳細は本稿の範囲外なので,ここでは簡単な例をいくつかあげておくことにする。

 たとえば,日付について,“08/01/05”とあったとする。さてこれは,どのように解釈するのか。たとえば,次のような可能性がある。

  • 08 年 01 月 05 日(日本式)
  • 05 年 08 月 01 日(米国式)
  • 05 年 01 月 08 日(欧州式)

実際これはアガサ・クリスティの推理小説に出てくるほどややこしい問題であるので,ぱっと見てわかれというほうが難しい。そこで,この解釈が米国式,つまり“05 年 08 月 01 日”であれば,

<meta name="date" content="08/01/05" scheme="Month/Date/Year" />

と書くことになる。もっとも,これは,エディットモジュールの節で説明したように,

<meta name="date" content="2005-08-01T00:00:00Z" />

と書けばよい話ではある。

 また,次のような例もある。ISBN コードを示すのに,次のように記述できる。

<meta name="identifier" content="4-86066-235-0" scheme="ISBN" />

 メタ情報のスキームは,次に説明するプロファイルの範囲内で定められることが多い。