2005 年 6 月の履歴(もしくは日誌)


2005 年 6 月

6 月 25 日

RSS を特定の条件でソートする

RSS の item をある特定の条件でソートできるように,順番の情報を追加する方法をマイクロソフトが提案しているそうです.RSS 1.0 なら RDF/XML として,とても柔軟に拡張できます.RDF/XML ではない場合は,ソートする為の順番の情報はさまざまな種類が必要になるのでは無いでしょうか.RDF なら他の目的で用意された語彙がそのまま流用できます.

CNET Japan の記事を引用します:

現在のRSSフィードは、単なるメッセージの流れとして送受信されており、その順番はメッセージが送信された時間によって決まる。Microsoftは、これに順番情報を追加する方法を提案しており、電子商取引サイトのベストセラーリストや、予定の作成順ではなくイベントの日付順に並んだカレンダー情報などを、RSSフィードがもっとうまく処理できるようにしたいと考えている。

引用終わり.

ここでの RSS は RSS/XML である RSS 1.0 のことではないだろうと思います.

RSS 1.0 の場合は,イベントのカレンダー情報なら,foaf:topic と http://www.w3.org/2002/12/cal/ical#Vevent を使うっていう手があります.

そうすれば rss:item の中では予定の作成日は dc:date で表現し,イベントの日付は dtstart/date で表現する事になるでしょう.

例えばこんな感じ:

<item rdf:about="http://onohiroki.cycling.jp/calendar/cal2005-06.html#d20050625">
  <title>2005-06-25 ツール・ド・美ケ原</title>
  <link>http://onohiroki.cycling.jp/calendar/cal2005-06.html#d20050625</link>
  <dc:date>2005-04-19T13:40:33Z</dc:date>
  <foaf:topic xmlns="http://www.w3.org/2002/12/cal/ical#">
    <Vevent>
      <dtstart rdf:parseType="Resource">
        <date>2005-06-25</date>
      </dtstart>
      <dtend rdf:parseType="Resource">
        <date>2005-06-27</date>
      </dtend>
      <summary>ツール・ド・美ケ原</summary>
      <uid>496B790F-660A-11D9-AF83-0003937B6ADA</uid>
      <dtstamp rdf:parseType="Resource">
        <dateTime>2005-04-19T13:40:33Z</dateTime>
      </dtstamp>
    </Vevent>
  </foaf:topic>
</item>

dc:date の 2005-04-19 はイベント情報を iCal に入力した日付で,イベントの日付は 開始 (dtstart/date) が 2005-06-25 で 2005-06-26 までです.iCalender の仕様により終了日 (dtend/date) は 2005-06-27 って表現されます.

これならイベントの日付でソートする事もできますよね.

RDF/XML で記述すると,けっこう複雑に見えますが,普通は手書きで書く訳ではないですから.

ぼくは iCal を使ってスケジュール管理しています.その中でも公開するサイクリングの情報は,iCalender の .ics ファイルを XML に変換し,さらに RDF Calender や RSS に変換しています.それがさらに XHTML に変換されて,カレンダーのページになったり,Welcome ページのイベント情報一覧になったりしています.

その作業は Mac OS X でスクリプトを起動すれば,Web の更新まで全自動です.

きっと RSS 2.0 用に Really Simple な規格を考えて普及させようって事なんだろうなぁ.RDF をベースに Semantic Web を考えている側からは,それを RDF に変換する方法だけ確立しておけばいいのかな.

これから寝て,起きたら松本に向けて出発です.ツール・ド・美ケ原という自転車でのヒルクライムレースに参加して来ます.今回はタンデム自転車で参戦です.さてはて.

http://onohiroki.cycling.jp/tb/tb.cgi/weblog_d20050625n1 TrackBack