最近流行りのTagをRSSなどのフィードでどう表現するのかみたいな論議がrss-devでされてました。RSS 1.0ではdc:subject
を利用し半角スペースで区切って列記、RSS 2.0ではcategory
要素自体を列記ということみたい。del.icio.usではtaxo:topics
使ってたりしますが、こちらは対応しているもの(Taxonomyモジュールをきちんと解釈する何か)が少ないっぽいとのこと。
で、Atomではどうかということなんですが、Atom 0.4(2005/01/11に出たっぽいです)では、category
要素の列記で表現するということに決まったようです。
<category term="cooking" label="料理" scheme="http://example.com/blog/tags"/>
<category term="japan" label="日本" scheme="http://example.com/blog/tags"/>
<category term="pork" label="豚肉" scheme="http://example.com/blog/tags"/>
<category term="rice" label="米" scheme="http://example.com/blog/tags"/>
てな感じ(term
とlabel
は適当ですよ)。term
がTagとして機能する文字列で、URLにそのまま利用できる必要があるものに対して、label
はHuman-Readableな文字列、すなわち一見でわかる文字列である必要があるみたいです。scheme
は、そのTagを定義するURLとのこと。term
とscheme
を機械的に連結させて、あるTagがつけられているエントリ(とは限らない何か)をリストアップできるとかそういうことなのかなと思ったんですけど、XMLにおけるnamespace的なモノな気もする。
元々Tagはグローバルに働くこと(怪しい表現)を目的としている気がするので、blogツールやあるサービスでリストアップする手段がわからなくても良いものなのかもしれないですね。例えば・・・上手い例が思いつかないですけど。
てか、Atom 0.4が出たことについさっき気づいたりした罠。