最近流行りの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"/>

てな感じ(termlabelは適当ですよ)。termがTagとして機能する文字列で、URLにそのまま利用できる必要があるものに対して、labelはHuman-Readableな文字列、すなわち一見でわかる文字列である必要があるみたいです。schemeは、そのTagを定義するURLとのこと。termschemeを機械的に連結させて、あるTagがつけられているエントリ(とは限らない何か)をリストアップできるとかそういうことなのかなと思ったんですけど、XMLにおけるnamespace的なモノな気もする。

元々Tagはグローバルに働くこと(怪しい表現)を目的としている気がするので、blogツールやあるサービスでリストアップする手段がわからなくても良いものなのかもしれないですね。例えば・・・上手い例が思いつかないですけど。

てか、Atom 0.4が出たことについさっき気づいたりした罠。