RDF ファイル形式とは?
.rdfファイルは、ウェブ上のリソースに関連するデータを定義するために使用されるドキュメントです。.rdfファイルには、オンラインリソースのページ説明、キーワード、更新ログなどのメタデータが含まれています。
.rdf形式の仕様はWorld Wide Web Consortium (W3C) によって作成され、RDF 1.0は1999年に勧告として批准され、2014年にRDF 1.1が続きました。RDFドキュメントファイルはResource Description Framework言語で記述されており、アプリケーションがマシン読み取り可能な方法で処理できるように情報を共有するために使用されます。これはセマンティック・ウェブとリンクトデータの基盤となっています。
.rdfドキュメントは、データを保存するためにXML構文を使用します。XMLはそのデータ表現の単純さから採用されています。このモデルは、3つのタイプの表現を使用してデータを記述します:
- 主語 (Subject) - リソースを定義(IRIまたは空白ノード)
- 述語 (Predicate) - そのリソースの特性や側面を定義
- 目的語 (Object) - 述語の値を保存(IRIまたはリテラル)
このような各ステートメントは「トリプル」と呼ばれ、トリプルの集合がRDFグラフを形成します。.rdfファイルは通常、<?xml version="1.0"?>と<rdf:RDF xmlns:rdf="...">ルート要素で始まります。
ウェブリソースに関する情報の表現以外に、.rdfファイルはMozilla Firefoxにおいて拡張機能のマニフェスト (install.rdf) やツールバー設定の保存などの目的で使用されていました。ただし、現代のFirefoxはこれをWebExtensions形式に置き換えました。標準のMIMEタイプはapplication/rdf+xmlです。同じRDFグラフは、Turtle (.ttl) や JSON-LD ファイルとしてシリアル化することもでき、OWL オントロジーは通常、主要なシリアル化形式としてRDF/XMLを再利用します。
セキュリティと安全性
リスク: LOW.rdfファイルはテキスト/XMLデータであり、実行コードは含まれていないため、開いて読み取ることは安全です。一般的なXMLに関する注意点のみが適用されます。非常に巨大な、または悪意を持って作成されたXMLは、不適切に設定されたパーサーにおいて「XML爆弾」(billion-laughs)や外部実体参照(XXE)の問題を引き起こす可能性があるため、信頼できないRDFを処理する場合は、実体展開が制限された堅牢なパーサーを使用してください。
形式の詳細
概要- RSS 1.0 (RDF Site Summary) ニュースフィード - RSS 1.0は.rdfを使用し、フィードリーダーで購読されるRDF/XMLフィードです。一般的なRSS 2.0 (.rss/.xml) とは異なり、現在は稀です。
- レガシーなMozilla設定ファイル - 古いMozilla/Firefox/Thunderbirdは、ブックマーク、ツールバーの状態、拡張機能のマニフェストに内部的に.rdfを使用していました。Mozillaは何年も前にRDFを削除したため、現代のFirefoxはこれを使用しません。
RDF ファイルを開くプログラム
技術的詳細
詳細仕様| MIMEタイプ | application/rdf+xml |
| 文字エンコーディング | XMLヘッダーで宣言されたUTF-8。XML仕様によりUTF-16も許可されます |
| データモデル | 有向RDFグラフを形成する主語-述語-目的語のトリプル |
| ルートXML要素 | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" を持つ <rdf:RDF> |
| リソース識別 | IRI (Internationalized Resource Identifiers) または匿名の空白ノード |
| リテラル値の型 | XSDデータ型を持つ型付きリテラル、またはxml:lang属性による言語タグ付き文字列 |
| 代替シリアル化形式 | Turtle (.ttl), N-Triples (.nt), JSON-LD (.jsonld), Notation3 (.n3) - 同じグラフデータで異なる構文 |
| 標準クエリ言語 | SPARQL (W3C勧告)。 .rdfファイルからロードされた、またはトリプルストアに保持されたRDFグラフのクエリに使用されます |
| 空白ノードのスコープ | 空白ノード識別子は単一のドキュメント内に限定され、グローバルに参照解除することはできません |
| 一般的な名前空間プレフィックス | rdf:, rdfs:, owl:, xsd:, dc: (Dublin Core), foaf: - それぞれxmlns属性として宣言されます |
| 典型的な構造要素 | rdf:RDFルート内にネストされたrdf:Descriptionまたは型付きノード要素(例:foaf:Person) |
| OWLとの関係 | OWLオントロジーファイル (.owl) は、デフォルトのディスク上シリアル化としてRDF/XMLを使用します |
| トリプルストアへのロード | Apache Jena Fuseki、Virtuoso、GraphDBなどのSPARQL対応トリプルストアと互換性があります |
| 典型的なユースケース | セマンティック・ウェブのメタデータ、リンクトデータの公開、ライブラリカタログ、FOAFソーシャルプロファイル、オントロジー交換 |
| パーサーライブラリ | Apache Jena (Java), RDFLib (Python), Redland/Raptor (C), EasyRDF (PHP) |
| リリース日 | RDF 1.0 W3C Recommendation 1999 (RDF 1.1 in 2014) |
| オープンスタンダード | はい · ロイヤリティフリー |
| 仕様書 | www.w3.org |
RDF の変換
コミュニティ Q&A
ユーザーからの質問まだ質問はありません。RDF ファイルについて最初の質問をしてみましょう。