RDF
Resource Description Framework
すべてのデータを「主語-述語-目的語」の3つ組(トリプル)で表現するというデータモデル Claude Code.icon
RDFのすべては トリプル という最小単位でできている code:_
主語 (Subject) — 述語 (Predicate) — 目的語 (Object)
自然言語の単文と同じ構造です。
code:_
夏目漱石 —— 著者である —— こころ
(主語) (述語) (目的語)
このトリプルを大量に積み重ねると、自然にグラフ構造ができあがります
code:_
生年
夏目漱石 ────→ 1867
│
│ 著者
↓
こころ ──── 出版年 ────→ 1914
│
│ ジャンル
↓
小説
ノード(主語・目的語)を述語(エッジ)が結ぶ。これがRDFが「グラフ」と呼ばれる理由です。
なぜURIを使うのか(RDFの肝)
ここがRDFの一番重要なポイントです。RDFでは主語・述語・目的語を、ただの文字列ではなく URI(IRI) で識別します。
code:_
なぜこんな面倒なことをするのか:
1. グローバルに一意: 「夏目漱石」という同名異人の混同を防げる。世界中のどのデータベースでも同じURIなら同じものを指す。
2. データの結合(リンク)が可能: 別々の組織が作ったデータでも、同じURIを使っていれば自動的に繋がる。これが Linked Data の思想。
3. 曖昧さの排除: 「creator」が「著者」なのか「制作者」なのか、URIで定義されているので機械が一意に解釈できる。
RDFの表現形式(シリアライゼーション)
RDFは抽象的なデータモデルで、書き方は複数あります。
table:_
形式 特徴
Turtle 人間が読みやすい。実務で最もよく使う
RDF/XML 古い標準。冗長で読みにくい
N-Triples 1行1トリプル。機械処理・大規模向け
JSON-LD JSON形式。Web開発者向け、SEO(schema.org)でも使われる
Turtleの例:
code:turtle
ex:こころ
dc:creator ex:夏目漱石 ;
dc:date "1914" ;
a ex:Novel .
関連する重要概念
RDFは単体ではなく、エコシステムの一部です。
RDFS / OWL: スキーマやオントロジー(語彙・クラス・関係の定義)を記述する。「小説は本の一種」「著者は人である」といった意味の体系を定義する層。