CyberLibrarian

【注意】 このドキュメントは、W3CのRDF Schema 1.1 W3C Recommendation 25 February 2014の和訳です。
このドキュメントの正式版はW3Cのサイト上にある英語版であり、このドキュメントには翻訳に起因する誤りがありえます。誤訳、誤植などのご指摘は、訳者までお願い致します。

First Update: 2014年7月8日


要約

RDFスキーマはRDFデータのためのデータ・モデリング語彙を提供します。RDFスキーマは基礎的なRDF語彙を拡張したものす。

このドキュメントのステータス

この項は、このドキュメントの公開時のステータスについて記述しています。他のドキュメントがこのドキュメントに取って代わることがありえます。現行のW3Cの刊行物およびこの技術報告の最新の改訂版のリストは、http://www.w3.org/TR/のW3C技術報告インデックスにあります。

このドキュメントは、2004年のRDFスキーマ勧告を編集したバージョンです。この改訂の目的は、このドキュメントをRDF 1.1ドキュメント集合の一部として利用できるようにすることです。変更は、正誤表、参考文献の改訂、用語の更新、「はじめに」の調節に限定されます。ドキュメントのタイトルは「RDF語彙記述言語1.0: RDFスキーマ」から「RDFスキーマ1.1」に変更しました。ドキュメントの技術的な内容は変わっていません。変更の詳細は、更新の項に記載しています。このドキュメントへの編集による技術的な変更は生じないため、管理者は、新たな実装報告書は必要ないと決定しました。

このドキュメントは、RDFワーキンググループによって勧告として発表されました。このドキュメントに関してコメントを行いたい場合には、public-rdf-comments@w3.org購読アーカイブ)にお送りください。どのようなコメントでも歓迎します。

このドキュメントは、W3Cメンバー、ソフトウェア開発者、他のW3Cグループ、および他の利害関係者によりレビューされ、W3C勧告として管理者の協賛を得ました。これは確定済みドキュメントであり、参考資料として用いたり、別のドキュメントで引用することができます。勧告の作成におけるW3Cの役割は、仕様に注意を引き付け、広範囲な開発を促進することです。これによってウェブの機能性および相互運用性が増強されます。

このドキュメントは、2004年2月5日のW3C特許方針の下で活動しているグループによって作成されました。W3Cは、このグループの成果物に関連するあらゆる特許の開示の公開リストを維持し、このページには特許の開示に関する指示も含まれています。不可欠な請求権(Essential Claim(s))を含んでいると思われる特許に関して実際に知っている人は、W3C特許方針の6項に従って情報を開示しなければなりません。

目次

1. はじめに

RDFスキーマは、RDFデータのためのデータ・モデリング語彙を提供します。これは、RDFの基本概念および抽象構文[RDF11-CONCEPTS]、RDFの形式意味論[RDF11-MT]、およびTurtle[TURTLE]、TriG[TRIG]、JSON-LD[JSON-LD]などのRDFの様々な具象構文を記述したいくつかの関連ドキュメントによって補足されます。RDF入門[RDF11-PRIMER]は、このドキュメントで指定している概念の使用に関する非形式的な序論と例を提供します。

このドキュメントは、形式意味論の仕様[RDF11-MT]が難しいと考える人々に、RDFスキーマの明確な仕様を提供することを意図しています。したがって、このドキュメントでは、RDFセマンティクスの仕様で定められている部分も繰り返しています。このドキュメントとRDFセマンティクスの仕様に相違がある場合は、RDFセマンティクスの仕様が正しいと考えるべきです。

RDFスキーマはRDFのセマンティックの拡張です。これは、関連する資源のグループとこれらの資源間の関係を記述するメカニズムを提供します。RDFスキーマは、このドキュメントで記述されている用語を使用してRDFで記述されます。これらの資源は、プロパティーの 定義域値域などの他の資源の特性を決定するために使用されます。

RDFスキーマのクラスとプロパティーのシステムは、Javaなどのオブジェクト指向プログラミング言語の型システムに似ています。インスタンスが持つことができるプロパティーに関してクラスを定義するのではなく、RDFスキーマはそれらが適用する資源のクラスに関してRDFスキーマがプロパティーを記述するという点において、RDFスキーマはそのような多くのシステムと異なっています。これが、この仕様で述べている定義域および値域のメカニズムの役割です。例えば、eg:authorプロパティーを定義してeg:Documentの定義域とeg:Personの値域を持つことができますが、従来のオブジェクト指向システムでは、タイプeg:Personeg:authorという属性でクラスeg:Bookを定義できるのが一般的です。RDFのアプローチを用いると、他の人がのちにeg:Documentの定義域やeg:Personの値域を持つプロパティーを追加定義するのが容易になります。これは、これらのクラスの最初の記述を再定義する必要なく行えます。RDFのプロパティー中心のアプローチの1つの利点は、だれでもが既存の資源の記述を拡張できるということであり、これはウェブのアーキテクチャ原則[BERNERS-LEE98]の1つです。

この仕様では、RDFのクラスとプロパティーの意味の表現のありうる形式をすべて列挙しようとはしていません。その代わりに、RDFスキーマでは、クラスとプロパティーの意味を記述できる多くのテクニックがあるということを認めるという方針をとります。OWL[OWL2-OVERVIEW]、推論規則言語、および他の形式(例えば時相論理)などの、より豊かな語彙や「オントロジー」言語はそれぞれ、ウェブ上のデータに関する重要な概括を得るのに役立ちます。

この仕様に基づいて定義される言語は、アプリケーション固有のRDF語彙で他のRDF資源を記述するのに使用できるRDF資源の集まりで構成されています。コア語彙は、ここで非形式的にrdfsと呼んでいる名前空間で定義されています。その名前空間は、

http://www.w3.org/2000/01/rdf-schema#
というIRIで識別され、慣習上、接頭辞rdfs:で関連付けられます。この仕様では、RDF名前空間を参照するために接頭辞rdf:も使用します。

http://www.w3.org/1999/02/22-rdf-syntax-ns#

利便性と読み易さのために、この仕様では省略形を用いてIRIを表現しています。接頭辞:接尾辞の形式の名前は、接尾辞と連結した接頭辞を伴うIRIから成るIRIと解釈すべきです。

2. クラス

資源は、クラスと呼ばれるグループに分割できます。クラスのメンバーは、クラスのインスタンスとして知られています。クラスはそれ自身が資源です。これは、しばしばIRIで識別され、RDFプロパティーを用いて記述できます。rdf:typeプロパティーは、資源がクラスのインスタンスであると述べるために使用できます。

RDFは、クラスとそのインスタンスの集合を区別します。各クラスには、クラスのインスタンスの集合である、クラスのクラス外延と呼ばれる集合が関連付けられています。2つのクラスは、同じ集合のインスタンスを持ちながらも異なるクラスでありえます。例えば、税務署は、このドキュメントの編集者と同住所に暮らす人々のクラスを定義できます。郵政省は、著者の住所と同じ郵便番号の住所の人々のクラスを定義できます。これらのクラスは、全く同じインスタンスを持つことができ、さらに、異なるプロパティーを持つこともできます。クラスの一方のみが税務署によって定義されたプロパティーを持ち、もう片方のみが郵政省によって定義されたプロパティーを持ちます。

クラスは、自身のクラス外延のメンバーでありえ、自身のインスタンスでありえます。

RDFスキーマのクラスである資源のグループ自身は、rdfs:Classと呼ばれるクラスです。

クラスCがクラスC'のサブクラスである場合、CのすべてのインスタンスはC'のインスタンスでもあるでしょう。rdfs:subClassOfプロパティーは、1つのクラスが別のクラスのサブクラスであると述べるために使用できます。スーパークラスという用語は、サブクラスの逆として使用されます。クラスC'がクラスCのスーパークラスである場合、CのすべてのインスタンスはC'のインスタンスでもあります。

RDF概念および抽象構文[RDF11-CONCEPTS]仕様は、RDFデータ型のRDF概念を定義しています。すべてのデータ型はクラスです。データ型であるクラスのインスタンスは、データ型の値空間のメンバーです。

2.1 rdfs:Resource

RDFで記述されたすべての事物を資源といい、クラスrdfs:Resourceのインスタンスです。これは、すべてのもののクラスです。他のすべてのクラスは、このクラスのサブクラスです。rdfs:Resourcerdfs:Classのインスタンスです。

2.2 rdfs:Class

これは、RDFクラスである資源のクラスです。rdfs:Classrdfs:Classのインスタンスです。

2.3 rdfs:Literal

クラスrdfs:Literalは、文字列や整数などのリテラル値のクラスです。テキストの文字列などのプロパティー値がRDFリテラルの例です。

rdfs:Literalrdfs:Classのインスタンスです。rdfs:Literalはrdfs:Resourceサブクラスです。

2.4 rdfs:Datatype

rdfs:Datatypeは、データ型のクラスです。rdfs:Datatypeのすべてのインスタンスは、RDF概念仕様[RDF11-CONCEPTS]で記述されているデータ型のRDFモデルに相当します。rdfs:Datatypeは、rdfs:Classのインスタンスとサブクラスの両方です。rdfs:Datatypeの各インスタンスはrdfs:Literalのサブクラスです。

2.5 rdf:langString

クラスrdf:langStringは、言語タグ付き文字列値のクラスです。rdf:langStringは、rdfs:Datatypeのインスタンスであり、rdfs:Literalサブクラスです。

2.6 rdf:HTML

この項は非規範的です。

クラスrdf:HTMLは、HTMLリテラル値のクラスです。rdf:HTMLは、rdfs:Datatypeのインスタンスであり、rdfs:Literalサブクラスです。

2.7 rdf:XMLLiteral

この項は非規範的です。

クラスrdf:XMLLiteralは、XMLリテラル値のクラスです。rdf:XMLLiteralrdfs:Datatypeのインスタンスであり、rdfs:Literalサブクラスです。

2.8 rdf:Property

rdf:Propertyは、RDFプロパティーのクラスです。rdf:Propertyは、rdfs:Classのインスタンスです。

3. プロパティー

RDF概念および抽象構文仕様[RDF11-CONCEPTS]では、RDFプロパティーの概念を主語資源と目的語資源との関係として記述します。

この仕様では、サブプロパティーの概念を定義しています。rdfs:subPropertyOfプロパティーは、1つのプロパティーが別のプロパティーのサブプロパティーであると述べるために使用できます。プロパティーPがプロパティーP'のサブプロパティーである場合、Pによって関連付けられているすべての資源の対はP'によっても関連付けられています。スーパープロパティーという用語は、サブプロパティーの逆としてよく用いられます。プロパティーP'が'プロパティーPのスーパープロパティーである場合、Pによって関連付けられているすべての資源の対はP'によっても関連付けられています。この仕様では、すべてのプロパティーのスーパープロパティーであるトップ・プロパティーは定義していません。

rdfs:domainrdfs:rangeによって提供される基本機能では、クラスにローカルであるプロパティーの制限を示す直接的な方法は提供されません。rdfs:domainrdfs:rangeの使用をサブプロパティーの階層構造と結合することはできますが、このような宣言の直接的なサポートは、OWL[OWL2-OVERVIEW]などのより豊かなウェブ・オントロジー言語によって提供されます。

3.1 rdfs:range

rdfs:rangeは、プロパティーの値が1つ以上のクラスのインスタンスであると述べるために用いられるrdf:Propertyのインスタンスです。

以下のトリプル

P rdfs:range C

は、Pがクラスrdf:Propertyのインスタンスであり、Cがクラスrdfs:Classのインスタンスであり、述語がPであるトリプルの目的語によって示される資源がクラスCのインスタンスであると述べています。

Pが複数のrdfs:rangeプロパティーを持つ場合、述語Pを持つトリプルの目的語によって示される資源はrdfs:rangeプロパティーによって述べられるすべてのクラスのインスタンスです。

rdfs:rangeプロパティーは、自身に適用できます。rdfs:rangeのrdfs:rangeはクラスrdfs:Classです。これは、rdfs:rangeプロパティーの値である資源は、rdfs:Classのインスタンスであるということを示しています。

rdfs:rangeプロパティーは、プロパティーに適用されます。これは、rdfs:domainプロパティーを使用することでRDFで表現できます。rdfs:rangerdfs:domainはクラスrdf:Propertyです。これは、rdfs:rangeプロパティーを持つ資源はrdf:Propertyのインスタンスであるということを示しています。

3.2 rdfs:domain

rdfs:domainは、プロパティーを持っている資源は複数のクラスのインスタンスであると述べるために用いられるrdf:Propertyのインスタンスです。

以下の形式のトリプル

P rdfs:domain C

は、Pがクラスrdf:Propertyのインスタンスであり、Cがクラスrdfs:Classのインスタンスであり、述語がPであるトリプルの主語によって示される資源がクラスCのインスタンスであると述べています。

Pが複数のrdfs:domainプロパティーを持つ場合、述語Pを持つトリプルの主語によって示される資源はrdfs:domainプロパティーによって述べられるすべてのクラスのインスタンスです。

rdfs:domainプロパティーは自身に適用できます。rdfs:domainのrdfs:domainはクラスrdf:Propertyです。これは、rdfs:domainプロパティーを持つ資源は、rdf:Propertyのインスタンスであるということを示しています。

rdfs:domainrdfs:rangeはクラスrdfs:Classです。これは、rdfs:domainプロパティーの値である資源はrdfs:Classのインスタンスであるということを示しています。

3.3 rdf:type

rdf:typeは、資源がクラスのインスタンスであると述べるために用いられるrdf:Propertyのインスタンスです。

以下の形式のトリプル

R rdf:type C

は、Cがrdfs:Classのインスタンスであり、RがCのインスタンスであると述べています。

rdf:typerdfs:domainrdfs:Resourceです。rdf:typeのrdfs:rangerdfs:Classです。

3.4 rdfs:subClassOf

プロパティーrdfs:subClassOfは、1つのクラスのすべてのインスタンスが別のクラスのインスタンスであると述べるために用いられるrdf:Propertyのインスタンスです。

以下の形式のトリプル

C1 rdfs:subClassOf C2

は、C1がrdfs:Classのインスタンスであり、C2がrdfs:Classのインスタンスであり、C1がC2のサブクラスであると述べています。rdfs:subClassOfプロパティーは推移的です。

rdfs:subClassOfrdfs:domainrdfs:Classです。rdfs:subClassOfrdfs:rangerdfs:Classです。

3.5 rdfs:subPropertyOf

プロパティーrdfs:subPropertyOfは、1つのプロパティーによって関連付けられているすべての資源は別のものによっても関連付けられていると述べるために用いられるrdf:Propertyのインスタンスです。

以下の形式のトリプル

P1 rdfs:subPropertyOf P2

は、P1がrdf:Propertyのインスタンスであり、P2がrdf:Propertyのインスタンスであり、P1がP2のサブプロパティーであると述べています。rdfs:subPropertyOfプロパティーは推移的です。

rdfs:subPropertyOfrdfs:domainrdf:Propertyです。rdfs:subPropertyOfのrdfs:rangerdf:Propertyです。

3.6 rdfs:label

rdfs:labelは、人間が読めるバージョンの資源の名前を提供するために使用できるrdf:Propertyのインスタンスです。

以下の形式のトリプル

R rdfs:label L

は、Lが人間が読めるRに対するラベルであると述べています。

rdfs:labelrdfs:domainは、rdfs:Resourceです。rdfs:labelのrdfs:rangeは、rdfs:Literalです。

多言語のラベルは、RDFリテラルの言語タグ付け機能を使用することでサポートされます。

3.7 rdfs:comment

rdfs:commentは、人間が読める資源の記述を提供するために使用できるrdf:Propertyのインスタンスです。

以下の形式のトリプル

R rdfs:comment L

は、Lが人間が読めるRの記述であると述べています。

rdfs:commentrdfs:domainは、rdfs:Resourceです。rdfs:commentのrdfs:rangeは、rdfs:Literalです。

テキストのコメントは、RDFのクラスとプロパティーの意味を明確化するのに役立ちます。このようなインライン・ドキュメンテーションは、形式的なテクニック(オントロジーと規則言語)と非形式的なテクニック(散文的なドキュメンテーション、例、テストケース)の両方の使用を補完します。RDF語彙で記述されたクラスとプロパティーの意図された意味を示すために、様々なドキュメンテーションの形式を結合できます。RDF語彙はRDFグラフとして表現されるため、他の名前空間で定義された語彙は、より豊かなドキュメンテーションを提供するために使用できます。

多言語のドキュメンテーションは、RDFリテラルの言語タグ付け機能の使用でサポートされています。

4. 定義域および値域語彙の使用

この項は非規範的です。

この仕様では、RDFデータのプロパティーとクラスの重要な使用を記述するためのRDF語彙を紹介します。例えば、RDF語彙は、あるプロパティーに適した値のタイプにおける制限を記述できたり、そのようなプロパティーの原因になるのが当然であるクラスにおける制限を記述できたりします。

RDFスキーマは、この情報を記述するためのメカニズムを提供しますが、アプリケーションを使用すべきかどうかや、どのように使用すべきかについては述べません。例えば、RDF語彙では、authorプロパティーがクラスPersonのインスタンスである資源を示すために用いられていると言明できますが、その値域情報を処理する際に、アプリケーションが動作すべきかどうかや、どのように動作すべきかについては述べません。異なるアプリケーションが異なる方法でこの情報を使用するでしょう。例えば、データ検証ツールがこれを使用してデータ・セットの誤りを発見したり、インタラクティブなエディターが適切な値を提案してくれたり、推論アプリケーションがこれを使用してインスタンスのデータから追加情報を推論したりといったことが可能です。

RDF語彙では、複数の独自開発した語彙の語彙項目間の関係を記述できます。IRIはウェブでクラスとプロパティーを識別するために用いられるため、別の名前空間で定義されたクラスを値として持っているdomain(定義域)やrange(値域)を持つ新しいプロパティーを作成できます。

5. その他の語彙

この項では、コンテナとRDFステートメントを表現するための、そして、WWWでRDF語彙記述を配布するための構成子を含む、クラスとプロパティーを追加定義しています。

5.1 コンテナのクラスとプロパティー

この項は非規範的です。

RDFコンテナは、コレクションを表現するために用いられる資源です。同じ資源が1つのコンテナ内で複数回出現可能です。物理的な世界の容器と異なり、コンテナは自身の中に含むことができます。

異なる3種類のコンテナが定義されています。3つのコンテナのクラスの形式意味論[RDF11-MT]は、すべて全く同じですが、追加情報を非形式的に示すために異なるクラスを使用できます。rdf:Bagは、コンテナが順不同であるということを示すために使用します。rdf:Seqは、コンテナのコンテナ・メンバーシップ・プロパティーの番号によって示される順序が重要であるということを示すために使用します。rdf:Altコンテナは、コンテナの典型的な処理がメンバーのうちの1つを選択することであるということを示すために使用します。

鶏小屋は、それが木でできているというプロパティーを持っていても、その鶏小屋に収容されている鶏がすべて木でできているということを意味するのではないのとちょうど同じように、コンテナのプロパティーは必ずしもそのすべてのメンバーのプロパティーであるわけではありません。

RDFコンテナは、以下のクラスとプロパティーによって定義されています。

5.1.1 rdfs:Container

rdfs:Containerクラスは、rdf:Bagrdf:Seqrdf:AltなどのRDFコンテナ・クラスのスーパークラスです。

5.1.2 rdf:Bag

rdf:Bagクラスは、RDF「バッグ」コンテナのクラスです。これはrdfs:Containerサブクラスです。これは、形式的にはrdf:Seqrdf:Altと異りませんが、rdf:Bagクラスは、コンテナが順不同であることを人間の読者に示すために慣習上用いられます。

5.1.3 rdf:Seq

rdf:Seqクラスは、RDF「順序」コンテナのクラスです。これは、rdfs:Containerサブクラスです。これは、形式的にはrdf:Bagrdf:Altと異なりませんが、rdf:Seqクラスは、コンテナのコンテナ・メンバーシップ・プロパティーの数字上の順序が重要であることを人間の読者に示すために慣習上用いられます。

5.1.4 rdf:Alt

rdf:Altクラスは、RDF「代替」コンテナのクラスです。これは、rdfs:Containerサブクラスです。これは、形式的にはrdf:Seqrdf:Bagと異なりませんが、rdf:Altクラスは、その典型的な処理がコンテナのメンバーのうちの1つを選択することであるということを人間の読者に示すために慣習上用いられます。コンテナの最初のメンバー、すなわちrdf:_1プロパティーの値が、デフォルトの選択です。

5.1.5 rdfs:ContainerMembershipProperty

rdfs:ContainerMembershipPropertyクラスは、資源がコンテナのメンバーであると述べるために用いられるプロパティーrdf:_1, rdf:_2, rdf:_3 ...をインスタンスとして持っています。rdfs:ContainerMembershipPropertyrdf:Propertyサブクラスです。rdfs:ContainerMembershipPropertyのそれぞれのインスタンスは、rdfs:memberプロパティーのサブクラス(rdfs:subPropertyOf the rdfs:member property)です。

コンテナCの場合、以下の形式のトリプル

C rdf:_nnn O

は、nnnが0が先行しない0以上の整数の10進による表現である場合、OがコンテナCのメンバーであると述べています。

コンテナ・メンバーシップ・プロパティーは、コンテナ以外の資源に適用できます。

5.1.6 rdfs:member

rdfs:memberは、すべてのコンテナ・メンバーシップ・プロパティーのスーパープロパティーであるrdf:Propertyのインスタンスです。すなわち、それぞれのコンテナ・メンバーシップ・プロパティーは、プロパティーrdfs:memberに対してrdfs:subPropertyOf関係を持っています。

rdfs:memberrdfs:domainrdfs:Resourceです。rdfs:memberrdfs:rangerdfs:Resourceです。

5.2 RDFコレクション

この項は非規範的です。

RDFコンテナは、それ以上のメンバーが全く存在しないと述べるためのメカニズムをコアRDF仕様では定義していないという意味で開いています。クラスとプロパティーのRDFコレクション語彙では、閉じたコレクション、すなわち、それ以上のメンバーを持てないものを記述できます。

コレクションは、Lispやそれと類似したプログラミング言語に経験がある人々がよく知っていると思われる表現である、項目のリストとして表されます。Turtle構文仕様には、コレクションを表現するための省略表現法があります。

RDFSでは、リスト状の構造の最初の要素が1つのみ存在することや、リストのような構造が最初の要素を持つことすら要求されません。

5.2.1 rdf:List

rdf:Listは、リストやその他のリスト状の構造の記述を構築するために使用できるrdfs:Classのインスタンスです。

5.2.2 rdf:first

rdf:firstは、リストやその他のリスト状の構造の記述を構築するために使用できるrdf:Propertyのインスタンスです。

以下の形式のトリプル

L rdf:first O

は、LとOの間には最初の要素(first-element)の関係があると述べています。

rdf:firstrdfs:domainrdf:Listです。rdf:firstrdfs:rangerdfs:Resourceです。

5.2.3 rdf:rest

rdf:restは、リストやその他のリスト状の構造の記述を構築するために使用できるrdf:Propertyのインスタンスです。

以下の形式のトリプル

L rdf:rest O

は、LとOの間にはリストの残り(rest-of-list)の関係があると述べています。

rdf:restrdfs:domainrdf:Listです。rdf:restrdfs:rangerdf:Listです。

5.2.4 rdf:nil

資源rdf:nilは、空のリストやその他のリスト状の構造を表現するために使用できるrdf:Listのインスタンスです。

以下の形式のトリプル

L rdf:rest rdf:nil

は、Lは1つの項目を持っているrdf:Listのインスタンスであると述べており、その項目は、rdf:firstプロパティーを使用して示すことができます。

5.3 具体化語彙

この項は非規範的です。

5.3.1 rdf:Statement

rdf:Statementは、rdfs:Classのインスタンスです。これは、RDFステートメントのクラスを表現することを意図しています。RDFステートメントは、RDFトリプルのトークンによって作成されたステートメントです。RDFステートメントの主語は、トリプルの主語によって識別されるrdfs:Resourceのインスタンスです。RDFステートメントの述語は、トリプルの述語によって識別されるrdf:Propertyのインスタンスです。RDFステートメントの目的語は、トリプルの目的語によって識別されたrdfs:Resourceのインスタンスです。rdf:Statementは、プロパティーrdf:predicaterdf:subjectrdf:objectの定義域にあります。異なる個々のrdf:Statementインスタンスは、それらのrdf:predicaterdf:subjectrdf:objectプロパティーに対して同じ値を持つことができます。

5.3.2 rdf:subject

rdf:subjectは、ステートメントの主語を述べるために用いられるrdf:Propertyのインスタンスです。

以下の形式のトリプル

S rdf:subject R

は、Sがrdf:Statementのインスタンスであり、Sの主語がRであると述べています。

rdf:subjectrdfs:domainrdf:Statementです。rdf:subjectrdfs:rangerdfs:Resourceです。

5.3.3 rdf:predicate

rdf:predicateは、ステートメントの述語を述べるために用いられるrdf:Propertyのインスタンスです。

以下の形式のトリプル

S rdf:predicate P

は、Sがrdf:Statementのインスタンスであり、Pがrdf:Propertyのインスタンスであり、Sの述語がPであると述べています。

rdf:predicaterdfs:domainrdf:Statementであり、rdfs:rangerdfs:Resourceです。

5.3.4 rdf:object

rdf:objectは、ステートメントの目的語を述べるために用いられるrdf:Propertyのインスタンスです。

以下の形式のトリプル

S rdf:object O

は、Sがrdf:Statementのインスタンスであり、Sの目的語がOであると述べています。

rdf:objectrdfs:domainrdf:Statementです。rdf:objectrdfs:rangerdfs:Resourceです。

5.4 ユーティリティ・プロパティー

以下のユーティリティのクラスとプロパティーがRDFコア名前空間で定義されています。

5.4.1 rdfs:seeAlso

rdfs:seeAlsoは、主語資源に関する追加情報を提供できる資源を示すために用いられるrdf:Propertyのインスタンスです。

以下の形式のトリプル

S rdfs:seeAlso O

は、資源OがSに関する追加情報を提供できるということを述べています。ウェブからOの表現を検索できるかもしれませんが、これは必須ではありません。このような表現が検索されるときには、その表現の形式には制約が置かれません。

rdfs:seeAlsordfs:domainrdfs:Resourceです。rdfs:seeAlsordfs:rangerdfs:Resourceです。

5.4.2 rdfs:isDefinedBy

rdfs:isDefinedByは、主語資源を定義する資源を示すために用いられるrdf:Propertyのインスタンスです。このプロパティーは、資源が記述されるRDF語彙を示すために使用できます。

以下の形式のトリプル

S rdfs:isDefinedBy O

は、資源OがSを定義すると述べています。ウェブからOの表現を検索できるかもしれませんが、これは必須ではありません。このような表現が検索されるときには、その表現の形式には制約が置かれません。rdfs:isDefinedByは、rdfs:seeAlsoサブプロパティーです。

rdfs:isDefinedByrdfs:domainrdfs:Resourceです。rdfs:isDefinedByrdfs:rangerdfs:Resourceです。

5.4.3 rdf:value

rdf:valueは、構造化された値を記述する際に使用できるrdf:Propertyのインスタンスです。

rdf:valueは、単独では意味を持ちません。これは、下記の例で示されているような成句で使用できる1つの語彙として提供されます。

例1
<http://www.example.com/2002/04/products#item10245>
    <http://www.example.org/terms/weight> [
       rdf:value 2.4 ;
       <http://www.example.org/terms/units> <http://www.example.org/units/kilograms>
       ] .

このプロパティーの意味には形式的な仕様がないにもかかわらず、この種の例での一般的な成句の使用を促進するために定義する価値があります。

rdf:valuerdfs:domainrdfs:Resourceです。rdf:valuerdfs:rangerdfs:Resourceです。

6. RDFスキーマの要約

この項は非規範的です。

この項の表は、RDFスキーマ語彙の概要を示します。

6.1 RDFクラス

クラス名 説明
rdfs:Resource クラス資源、すべて
rdfs:Literal テキストの文字列や整数などのリテラル値のクラス
rdf:langString 言語タグ付き文字列リテラル値のクラス
rdf:HTML HTMLリテラル値のクラス
rdf:XMLLiteral XMLリテラル値のクラス
rdfs:Class クラスのクラス
rdf:Property RDFプロパティーのクラス
rdfs:Datatype RDFデータ型のクラス
rdf:Statement RDFステートメントのクラス
rdf:Bag 順不同コンテナのクラス
rdf:Seq 順序付きコンテナのクラス
rdf:Alt 代替コンテナのクラス
rdfs:Container RDFコンテナのクラス
rdfs:ContainerMembershipProperty rdf:_1、rdf:_2、...などのコンテナ・メンバーシップ・プロパティーで、そのすべてが「メンバー」のサブプロパティー
rdf:List RDFリストのクラス

6.2 RDFプロパティー

プロパティー名 説明 定義域 値域
rdf:type 主語はクラスのインスタンス rdfs:Resource rdfs:Class
rdfs:subClassOf 主語はクラスのサブクラス rdfs:Class rdfs:Class
rdfs:subPropertyOf 主語はプロパティーのサブプロパティー rdf:Property rdf:Property
rdfs:domain 主語プロパティーの定義域 rdf:Property rdfs:Class
rdfs:range 主語プロパティーの値域 rdf:Property rdfs:Class
rdfs:label 主語に対する人間が読める名前 rdfs:Resource rdfs:Literal
rdfs:comment 主語資源の記述 rdfs:Resource rdfs:Literal
rdfs:member 主語資源のメンバー rdfs:Resource rdfs:Resource
rdf:first 主語RDFリストの最初の項目 rdf:List rdfs:Resource
rdf:rest 主語RDFリストの最初の項目以外の残り rdf:List rdf:List
rdfs:seeAlso 主語資源に関する詳細 rdfs:Resource rdfs:Resource
rdfs:isDefinedBy 主語資源の定義 rdfs:Resource rdfs:Resource
rdf:value 構造化された値に用いられる成句的なプロパティー rdfs:Resource rdfs:Resource
rdf:subject 主語RDFステートメントの主語 rdf:Statement rdfs:Resource
rdf:predicate 主語RDFステートメントの述語 rdf:Statement rdfs:Resource
rdf:object 主語RDFステートメントの目的語 rdf:Statement rdfs:Resource

これらのクラスとプロパティーに加え、RDFでは、rdf:_1rdf:_2rdf:_3...などというプロパティーも使用し、それぞれがrdfs:memberのサブプロパティーとクラスrdfs:ContainerMembershipPropertyのインスタンスの両方です。空のrdf:Listであるrdf:nilと呼ばれるrdf:Listのインスタンスもあります。

A. 謝辞

この項は非規範的です。

最初のRDFスキーマの設計は、RDFスキーマ・ワーキンググループ(1997年-2000年)によって作成されました。現在の仕様は、主にその設計を編集上明確化したものであり、RDFコア・ワーキンググループメンバーの努力と、RDF利害団体の多くのメンバーからの実装に関するフィードバックの大いなる恩恵を受けています。2013-2014年に、RDF 1.1仕様に沿ったものとするために、Guus Schreiberは、RDFワーキンググループを代表してこのドキュメントを編集しました。

IBMのDavid Singerは、この仕様の開発のほとんどの期間中において最初のRDFスキーマ・グループの議長でした。Davidの尽力に感謝し、この活動における彼と我々に対するサポートに関してIBMに感謝申し上げます。この仕様の早期バージョンに対するAndrew Laymanの編集作業に対しても特に感謝申し上げます。

最初のRDFスキーマ・ワーキンググループのメンバには、以下の方々が含まれています。

Nick Arnett (Verity)、Dan Brickley (ILRT / University of Bristol)、Walter Chang (Adobe)、Sailesh Chutani (Oracle)、Ron Daniel (DATAFUSION)、Charles Frankston (Microsoft)、Joe Lapp (webMethods Inc.)、Patrick Gannon (CommerceNet)、RV Guha (Epinions、前Netscape Communications)、Tom Hill (Apple Computer)、Renato Iannella (DSTC)、Sandeep Jain (Oracle)、Kevin Jones、(InterMind)、Emiko Kezuka (Digital Vision Laboratories)、Ora Lassila (Nokia Research Center)、Andrew Layman (Microsoft)、John McCarthy (Lawrence Berkeley National Laboratory)、Michael Mealling (Network Solutions)、Norbert Mikula (DataChannel)、Eric Miller (OCLC)、Frank Olken (Lawrence Berkeley National Laboratory)、Sri Raghavan (Digital/Compaq)、Lisa Rein (webMethods Inc.)、Tsuyoshi Sakata (Digital Vision Laboratories)、Leon Shklar (Pencom Web Works)、David Singer (IBM)、Wei (William) Song (SISU)、Neel Sundaresan (IBM)、Ralph Swick (W3C)、Naohiko Uramoto (IBM)、Charles Wicksteed (Reuters Ltd.)、Misha Wolf (Reuters Ltd.)

B. 2004年勧告以後の更新

この項は非規範的です。

RDF 1.1勧告の更新

RDF 1.1勧告編集案の更新

C. 参考情報

C.1 規範的な参考情報

[JSON-LD]
Manu Sporny, Gregg Kellogg, Markus Lanthaler, Editors. JSON-LD 1.0. 16 January 2014. W3C Recommendation. URL: http://www.w3.org/TR/json-ld/
[RDF11-CONCEPTS]
Richard Cyganiak, David Wood, Markus Lanthaler. RDF 1.1 Concepts and Abstract Syntax. W3C Recommendation, 25 February 2014. URL: http://www.w3.org/TR/2014/REC-rdf11-concepts-20140225/. The latest edition is available at http://www.w3.org/TR/rdf11-concepts/
[RDF11-MT]
Patrick J. Hayes, Peter F. Patel-Schneider. RDF 1.1 Semantics. W3C Recommendation, 25 February 2014. URL: http://www.w3.org/TR/2014/REC-rdf11-mt-20140225/. The latest edition is available at http://www.w3.org/TR/rdf11-mt/
[TRIG]
Gavin Carothers, Andy Seaborne. TriG: RDF Dataset Language. W3C Recommendation, 25 February 2014. URL: http://www.w3.org/TR/2014/REC-trig-20140225/. The latest edition is available at http://www.w3.org/TR/trig/
[TURTLE]
Eric Prud'hommeaux, Gavin Carothers. RDF 1.1 Turtle: Terse RDF Triple Language. W3C Recommendation, 25 February 2014. URL: http://www.w3.org/TR/2014/REC-turtle-20140225/. The latest edition is available at http://www.w3.org/TR/turtle/

C.2 参考情報の参考情報

[BERNERS-LEE98]
Tim Berners-Lee. What the Semantic Web can represent. 1998. URI: http://www.w3.org/DesignIssues/RDFnot.html.
[OWL2-OVERVIEW]
W3C OWL Working Group. OWL 2 Web Ontology Language Document Overview (Second Edition). 11 December 2012. W3C Recommendation. URL: http://www.w3.org/TR/owl2-overview/
[RDF11-PRIMER]
Guus Schreiber, Yves Raimond. RDF 1.1 Primer. W3C Working Group Note, 25 February 2014. The latest version is available at http://www.w3.org/TR/rdf11-primer/.