ちょっとしたメモ

XHTMLとメタデータ:汎用的な方法

新しいページ「Metadata in XHTML - XSLTによる抽出」を作成しました。さまざまな「lower case semanticweb」型方法論を一般化し、class="dc.title"といったごくシンプルな手段でXHTMLにメタデータを埋め込もうという試み。多様なケースを検討したために長い文書になっていますが、内容は誰でも簡単に実行できるものです。

基本は、XHTMLの属性値に"dc."などの接頭辞を加え、それをlink要素を使って名前空間URIとマップすることで、XSLT経由でRDFを生成できるようにするというもの。たとえば、address要素に文書の作成日と更新日を記述していたら、そこにちょっとだけ接頭辞付きclassを加えておきます。

<address>Original: <em class="dcterms.created">2003-12-15</em>; Last-modified: <em class="dcterms.modified">2004-03-14</em></address>

このdcterms.という接頭辞を、link要素でURIに結びつけます(RFC2731で定義されている、Dublin CoreをHTMLに埋め込む時のマッピングと同じ方法)。

<link rel="schema.dcterms" href="http://purl.org/dc/terms/" />

これらのデータを使って、XSLTは次のようなRDFを生成できます。

(例)

<rdf:Description rdf:about="">
 <dcterms:created xmlns:dcterms="...">2004-03-13</dcterms:created>
 <dcterms:modified xmlns:dcterms="...">2004-03-15</dcterms:modified>
</rdf:Description>

この方法は、簡単でしかも既存のXHTMLの文法の範囲内に収まる上、CSSを使ってこれらのメタデータを人間の読者にもわかりやすく表現することも可能です。本文に直接メタデータを与えるので、別のRDFファイルをメンテナンスする必要もありません。

そのほか、書評や演奏会評を書いたページにメタデータを与える方法など、いろんなケースを検討していますので、興味があればぜひご一読のうえお試しください。

関連メモ: