ちょっとしたメモ

foaf:ChatChannelとirc:スキーム

IRCのログを取るのに、Dave BeckettによるIRC RDF Chat Loggerを用いると、テキスト版、HTML版と並んでRDF版のログファイルが生成される。このRDF版ログでは、チャットを記述するためにfoaf:ChatChannelなどの見慣れぬFOAF語彙が使われている。

昨日の#swigのログの一部をRDF版で拾ってみると、次のような具合だ。

(例)

<foaf:ChatChannel rdf:about="irc://irc.freenode.net/rdfig">
  <foaf:chatEventList>
    <rdf:Seq>
      <rdf:li>
       <foaf:chatEvent rdf:ID="T00-21-33">
        <dc:date>2004-04-18T00:21:33Z</dc:date>
        <dc:description>I see this channel is logged in RDF. 
         Where are foaf:ChatChannel and its friends specified?</dc:description>
        <dc:creator><wn:Person foaf:nick="sanxiyn"/></dc:creator>
       </foaf:chatEvent>
      </rdf:li>
      <rdf:li>
       <foaf:chatEvent rdf:ID="T00-32-18">
        <dc:date>2004-04-18T00:32:18Z</dc:date>
        <dc:description>foaf:ChatChannel ought to be acknowledged 
         in the foaf spec, but isn't, yet.</dc:description>
        <dc:creator><wn:Person foaf:nick="danbri"/></dc:creator>
       </foaf:chatEvent>
      </rdf:li>
      ...
    </rdf:Seq>
  </foaf:chatEventList>
</foaf:ChatChannel>

foaf:ChatChannelfoaf:chatEventListというプロパティを持ち、その目的語がRDFのリストになって、個々のアイテムfoaf:chatEventが、チャットの各発言に対応する。不思議なことに、発言者はfoaf:Personではなくwn:Personで示されているが、ニックネームはfoaf:nickだ。Chat Loggerプログラムは、このRDFからXSLT経由でHTML版ログを生成するらしい。

上記の引用でDan Brickley (danbri)が述べているように、これらのクラスやプロパティはFOAFの語彙定義にはいまのところ含まれていない(2001年のrdfweb-devメーリングリストでChatlogs in RDFというスレッドがあったが、踏み込んだ検討はなされていないようだ)。FOAFにおいては珍しくないことだけれど、どうするのかな。

ところで、foaf:ChatChannelの主語URIには、irc:スキームが用いられている。これまた未登録なのだが、Chat Loggerのソースを見ていたら、このスキームを提案する古いインターネットドラフト "irc: URL scheme" へのリンクがあった(irc://....というリンクは、IEでは機能しないが、MozillaだとChatzillaが起動する)。なるほど、一応正式な提案はなされていたんだ。なぜ放置されてしまったかは定かではないがと思っていたら、別の著者によるインターネットドラフト Uniform Resource Locator Schemes for Internet Relay Chat Entitiesが出されて、検討は続いているようだ