2)RSS 1.0(RDF Site Summary、仕様関連リンク)
RSS 1.0は、RDF(Resource Description Framework)という仕様に基づくXML形式ファイルで構成するRSSだ。RDFとは、Webに存在するメタデータの意味を定義付けするためのフォーマットであり、W3Cで提唱されている(http://www.w3.org/RDF/を参照)。
RSS 1.0の書式では、ルート要素が<rdf:RDF>となる(図3)。コンテンツの一覧は、<rdf:Seq>の中に<rdf:li>という要素で表現される。また、コンテンツの実体(文字列)は、<rdf:li>部には記さず、別に<item>で示し、<rdf:li>からURIを用いて参照するリンク構造となる。
図3に示したように、RSS 1.0では、<rdf:li>から<item>へと参照設定がされるため、RSS 0.9xに比べて多少複雑な構造となっている。
RSS 1.0では、全体的なツリー構造を構成する要素しか定義されていない(表2)。それぞれの値(メタデータ)がどのような意味を持つのかは、別途「モジュール」と呼ばれるもので定義する。モジュールは、XMLの名前空間ごとに定義し、利用者が好きなものを追加設定できる。代表的なモジュールを表3に示した。
表2■RSS 1.0で定義される主な要素
要素名 | 意味 |
---|---|
rdf:RDF | ルート要素。<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/">のように記述する |
channel | チャンネル(このサイトのこと)を定義する要素。rdf:about属性で、このRSS自身のURLを指定する |
title | タイトル(40文字以内を推奨) |
link | URL(500文字以内を推奨) |
description | 概要(500文字以内を推奨) |
image | アイコンなどの画像 |
items | 各コンテンツの一覧を示す要素。内部に<rdf:Seq>と<rdf:li>が入り、コンテンツ一覧を定義していく |
ref:Seq | items内に存在する要素。内部のrdf:liでコンテンツ一覧を定義する |
ref:li | コンテンツ定義。別に用意したitem要素のref:about属性で指定したURIと同じ値をresource属性に指定することで、ref:liとitemとを関連付ける |
textinput | 検索機能を使うとき、テキストボックスのSubmitボタンが押されたときに呼び出すWebアプリケーションのURLなどを指定する |
表3■RSS 1.0で使われる代表的なモジュール
モジュール | 名前空間定義 | 意味 |
---|---|---|
Dublin Core | xmlns:dc=" http://purl.org/dc/elements/1.1/" | データのタイトル、作成者、作成日などを意味付ける。http://web.resource.org/rss/1.0/ modules/dc/を参照 |
Syndication | xmlns:sy=" http://purl.org/rss/1.0/ modules/syndication/" | コンテンツの更新予定間隔を意味づける。http://web.resource.org/rss/1.0/ modules/syndication/を参照 |
上記のモジュールを使うためには、表3に示した名前空間を<rdf:RDF>で定義する必要がある。たとえば、Dublin Coreモジュールを使う場合には、次の通りだ。
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:dc="http://purl.org/dc/elements/1.1/"> |
上記の記述により、「dc:」という接頭辞でDublin Coreモジュールで定義された「意味付け」を利用可能だ。Dublin Coreモジュールでは、表4に示す意味付けが定義されており、たとえば、次のようにするとコンテンツの作成日を示すことができる。
<dc:date>2005-03-21T19:00:00+09:00</dc:date> |
なお、dc:dateで使われる日付書式は、W3CDTFと呼ばれるもので、ISO8601として標準化されているものだ(仕様、関連リンク)。
Copyright © ITmedia, Inc. All Rights Reserved.