昨日、Sethによる「ウェブログのメタデータ」のアイデアを紹介した際、「コメントとその作者に関するメタデータを記述する具体的方法は提案されていない」と書いたが、RSS 1.0 and 2.0 Blog Comments Moduleというものがあるらしい。あまり良い設計ではないし、使われている例も見かけたことはないが、参考までにこれも紹介しておくことにする。
このモジュールの名前空間URIはhttp://purl.org/net/rssmodules/blogcomments/
、接頭辞はblogcomments
とするようだ。rss:item
要素内に、次のようにしてコメントを記述する。
(例)
<blogcomments:comments> <blogcomments:comment> <blogcomments:name>コメント作者名</blogcomments:name> <blogcomments:email rdf:resource="mailto:commentauthor@mail"/> <blogcomments:ip>コメント元IPアドレス</blogcomments:ip> <blogcomments:url rdf:resource="http://commentauthor.homepage/"/> <blogcomments:date>2004-04-17T22:38:20</blogcomments:date> <blogcomments:body> <![CDATA[コメント本文]> </blogcomments:body> </blogcomments:comment> </blogcomments:comments>
comments
プロパティでitem
要素とcomment
ノードをつなぎ、その中にコメントに関するプロパティを記述しようというわけだが、comment
に対して直接name
やemail
を与えるのはモデルとして変だし(コメントがメールアドレスを持つのではなく、その作者がメールアドレスを持つはず)、IPアドレスをRSSで公開するというのも、オプションとはいえ、いささか乱暴かな。body
としてコメント本文まで埋め込むというのは、メタデータというよりシンジケーションの発想に近い(これが必須になっているのは泣ける)。
問題なのは、comments
プロパティ要素内に複数のcomment
ノードを書けるとうたっているところ。残念ながらこれはRDFでは不可能で、コメントそれぞれを個別のcomments
プロパティでitem要素につなぐか、<blogcomments:comments rdf:parseType="Collection">
としてコレクションにする必要がある。
全体的に、このモジュールそのものはあまり使い物にならない感じだが、枠組みだけを利用して、コメントのメタデータはDublin CoreやFOAFで記述するという形なら利用できるかも知れない。
(例)
<blogcomments:comments> <blogcomments:comment> <foaf:maker> <foaf:Person> <foaf:name>コメント作者名</foaf:name> <foaf:mbox rdf:resource="mailto:commentauthor@mail"/> <foaf:homepage rdf:resource="http://commentauthor.homepage/"/> </foaf:Person> </foaf:maker> <dc:date>2004-04-17T22:38:20</dc:date> <dc:description>コメント冒頭など</dc:description> </blogcomments:comment> </blogcomments:comments>
うーむ、やっぱりいまいちだな。トラックバックやdcterms:references
は1つのプロパティで示しているのだから、これももう少しシンプルにしたいところ。やはり、それぞれのコメントにきちんとIDを与えて、必要に応じて参照可能にするべきだろう。
(例)
<blogcomments:comments> <blogcomments:comment rdf:about="blog-uri#comment-id"> <foaf:maker rdf:parseType="Resource"> <foaf:mbox rdf:resource="mailto:commentauthor@mail"/> </foaf:maker> <dc:date>2004-04-17T22:38:20</dc:date> </blogcomments:comment> </blogcomments:comments>
ウェブログ間のつながりを示すという意味では、foaf:mbox
よりもfoaf:weblog
の方がいいかも。少しは使い道があるかな?
- ウェブログのメタデータ (2004-04-16)