Resource Description Framework

Resource Description Framework（リソース・ディスクリプション・フレームワーク、RDF、）は、元はメタデータのデータモデルを記述するための枠組みとしてデザインされたWorld Wide Web Consortium (W3C) の仕様の一つ。さまざまな文法やデータのシリアライズ形式を使って、ウェブのリソースに実装された情報を概念的に記述したり、モデリングしたりするための一般的な手法として使われるようになった。ナレッジマネジメントのアプリケーションでも使われている。RDFは、セマンティック・ウェブを実現するための技術的な構成要素の1つとなっており、代表例としてLinked Open Dataがある。RDF は1999年にW3C勧告となり、RDF 1.0 仕様が2004年に、RDF 1.1 仕様が 2014年に発行された。

1999年の勧告の邦訳は電子ネットワーク協議会より発行されている。

 構造 

 トリプル 

RDFのメタデータのモデルでは、主語（）述語（）目的語（）の3つの要素でリソースに関する関係情報を表現し、これをトリプル（）と呼ぶ。主語は記述対象のリソースである。述語は主語の特徴や主語と目的語との関係を示す。目的語は主語との関係のある物や述語の値である。通常(文法学上)の意味での、主語・述語・目的語の意味とは異なる使い方になる場合もあることに注意が必要である。例えば、RDFにおいて「空の色は青い」という情報を表現しようとした場合、「空は青という色を持つ」と情報を整理した後、「空」を主語、「（～という）色を持つ」を述語（述部）、「青」を目的語として扱う。

lang=ja|thumb|right|トリプルのRDFグラフ表現
このトリプルはグラフ理論におけるグラフで表現できる。通常リソースのノードを丸で示し、テキストのノードを四角で示す。トリプルの関係はこれらのノードを述語を重みとしたエッジで結ぶことで表現する。このグラフはRDFに記述される全てのトリプルを可視化して表現することになる。このグラフはRDF Validation Serviceといったバリデータなど描かせることができる。

RDFが定義しているのはこのトリプルに基づく抽象構文である。具象構文としてはXMLを利用したRDF/XMLが別に定義されている。

また、トリプルを表す簡易表記方法として、、などがある。

1行ごとに1つのトリプルを、主語・述語・目的語の順にスペースで区切って表記するフォーマット。

 を拡張し、XMLのような 接頭辞+ローカル名 に基づく表記や、実験的に推論規則なども可能としたフォーマット。

 に、 の便利な書式を取り入れたフォーマット。

 リソースの識別 

RDFにおける主語は、URIで示されたリソースか、URIを持たず直接参照できない空白ノードのどちらかである。述語はURIで示される。目的語はUnicodeの文字列か（URIで示された）リソースか空白ノードのいずれかである。

RDFを元としたRSS フレームなし|50x50ピクセル やFOAF フレームなし などにおいてはウェブ上に実際に存在しているデータを指し示すURIが使われることが普通である。一般にRDFにおいてはインターネットにおける参照可能なメタデータだけを扱うものに限らずにURIを扱うことができ、リソースのURIが参照が不能なものであっても問題はない。このリソースのURIが何らかの抽象的表現を表す場合もある。この参照不能なURIをRDFで用いる場合、予めその意味を決めておく必要がある。RDF自体はそのような語彙の共通に使える取り決めはしていないが、Dublin Coreなど共通に使える語彙も提供されている。

 例 

例文「門前仲町の略語は“モンナカ”である。」のトリプルはそれぞれ
 主語「門前仲町」 - 統一資源識別子，
 述語「略語である」- 統一資源識別子，
 目的語「モンナカ」- 文字列直値
となる。RDFで表現するときは、目的語は単なる文字列でも良いが、主語と述語はURIで表現されたリソースでなければならない。ここで仮に上のようにURIを対応すると、RDF/XMLで表記すると次のようになる。


もうひとつの例として、Wikipedia英語版の「」のページ「http://en.wikipedia.org/wiki/Tony_Benn」に関して、タイトルが「」、発行元が「」という情報があるとする。ここで、ひとつの主語に対して複数のトリプルが表現されているが、シンプルに次のようにRDF/XMLで表記する。

<rdf:RDF
 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 xmlns:dc="http://purl.org/dc/elements/1.1/">
  <rdf:Description rdf:about="http://en.wikipedia.org/wiki/Tony_Benn">
    <dc:title>Tony Benn</dc:title>
    <dc:publisher>Wikipedia</dc:publisher>
  </rdf:Description>
</rdf:RDF>


ここで、このリソースのタイトルが「」であることがRDFに記述されているのでコンピュータもそのように理解できる。特にDublin Coreの基本語彙であるhttp://purl.org/dc/elements/1.1/titleが理解できるソフトウェアならば、称号や権利といった意味ではなく、リソース自体の題名ということが認識できる。

 供給例 
 Open Directory Project

 脚注 

 注釈 

 出典 

 関連項目 

OWL
RSS
マイクロフォーマット
RDFクエリ言語 - SPARQL
トピックマップ

 外部リンク 
 資料
 W3C公式RDFサイト
 RDF Primer
 RDF Primer（和訳）
 What is RDF?
 RDF/XML構文の簡単な説明 - 神崎正英によるRDFの解説
 一般的な語彙
 Dublin Core Metadata Terms
 FOAF Vocabulary Specification

Category:W3C勧告
Category:XMLベースの技術
Category:メタデータ
Category:セマンティック・ウェブ
Category:モデリング言語
Category:知識表現