CyberLibrarian

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

First Update: 2005年11月23日


W3C

RDF語彙記述言語1.0: RDFスキーマ

W3C 勧告 2004年2月10日

本バージョン:
http://www.w3.org/TR/2004/REC-rdf-schema-20040210/
最新バージョン:
http://www.w3.org/TR/rdf-schema/
旧バージョン:
http://www.w3.org/TR/2003/PR-rdf-schema-20031215/
編集者:
Dan Brickley, W3C <danbri@w3.org>
R.V. Guha, IBM <rguha@us.ibm.com>
シリーズ編集者:
Brian McBride (Hewlett Packard Labs) <bwm@hplb.hpl.hp.com>
謝辞

このドキュメントに対する正誤表を参照してください。いくつかの規範的な修正が含まれているかもしれません。

翻訳版も参照してください。


要約

RDF(Resource Description Framework)は、ウェブで情報を表現するための汎用言語です。この仕様では、RDFを使用してRDF語彙を記述する方法を説明しています。この仕様では、この目的のための語彙を定義し、RDFモデルおよび構文仕様で当初定められていた他の組み込みRDF語彙を定義しています。

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

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

本ドキュメントは、以前のRDF仕様、RDFモデルおよび構文(1999年勧告)RDFスキーマ(2000年勧告候補)を同時に置き換えることを目的とする一連の6つのドキュメント(入門概念構文セマンティクス語彙、およびテストケース)のうちの1つです。これは、2004年2月10日の公開に向けてW3Cセマンティック・ウェブ・アクティビティアクティビティ声明グループ憲章)の一部としてRDFコア・ワーキンググループによって開発されてきたものです。

勧告案草案以後のこのドキュメントに対する変更の詳細は、変更履歴に記述されています。

一般の方々はコメントをwww-rdf-comments@w3.orgアーカイブ)に送り、www-rdf-interest@w3.orgアーカイブ)における関連技術の一般的な議論に参加してください。

実装のリストが利用可能です。

W3Cは、この事業に関するあらゆる特許の開示のリストを維持します。

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

目次

1. はじめに
2. クラス
    2.1 rdfs:Resource
    2.2 rdfs:Class
    2.3 rdfs:Literal
    2.4 rdfs:Datatype
    2.5 rdf:XMLLiteral
    2.6 rdf:Property
3. プロパティー
    3.1 rdfs:range
    3.2 rdfs:domain
    3.3 rdf:type
    3.4 rdfs:subClassOf
    3.5 rdfs:subPropertyOf
    3.6 rdfs:label
    3.7 rdfs:comment
4. 定義域および値域語彙の使用(参考情報)
5. その他の語彙
    5.1 コンテナのクラスとプロパティー
       5.1.1 rdfs:Container
       5.1.2 rdf:Bag
       5.1.3 rdf:Seq
       5.1.4 rdf:Alt
       5.1.5 rdfs:ContainerMembershipProperty
       5.1.6 rdfs:member
    5.2 RDFコレクション
       5.2.1 rdf:List
       5.2.2 rdf:first
       5.2.3 rdf:rest
       5.2.4 rdf:nil
    5.3 具体化語彙
       5.3.1 rdf:Statement
       5.3.2 rdf:subject
       5.3.3 rdf:predicate
       5.3.4 rdf:object
    5.4 ユーティリティ・プロパティー
       5.4.1 rdfs:seeAlso
       5.4.2 rdfs:isDefinedBy
       5.4.3 rdf:value
6. RDFスキーマの要約(参考情報)
    6.1 クラス
    6.2 プロパティー
7. 参考文献
    7.1 規範的な参考文献
    7.2 参考情報の参考文献
8. 謝辞
付録A RDF/XMLとしてのRDFスキーマ

1. はじめに

RDF(Resource Description Framework)は、ウェブで情報を表現するための汎用言語です。

この仕様は、数個のRDFに関するもの[RDF-PRIMER] [RDF-SYNTAX] [RDF-CONCEPTS] [RDF-SEMANTICS] [RDF-TESTS]のうちの1つです。非形式的な概論およびこのドキュメントで定められている概念の使用例に関しては、RDF入門[RDF-PRIMER]のRDFスキーマの章を参照してください。

この仕様では、RDFの語彙記述言語であるRDFスキーマを紹介しています。これは、RDFのXMLコード化[RDF-SYNTAX]、数学的基礎[RDF-SEMANTICS]、およびRDF(Resource Description Framework): 概念および抽象構文[RDF-CONCEPTS]を記述したいくつかの関連ドキュメントで補完されます。RDF入門[RDF-PRIMER]では、非形式的な概論およびこのドキュメントで定められている概念の使用例を提供しています。

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

RDFプロパティーは資源の属性であると見なすことができ、その意味で、従来の属性-値の対に相当します。RDFプロパティーは、資源間の関係も表現します。

しかし、RDFはこれらのプロパティーを記述するためのメカニズムを提供しませんし、これらのプロパティーと他の資源との関係を記述するためのメカニズムも提供しません。これらが、RDF語彙記述言語であるRDFスキーマの役割です。RDFスキーマは、クラス、プロパティー、および他の資源を記述するために使用できるクラスやプロパティーを定義しています。

このドキュメントでは、「作者」(author)などの記述プロパティーの語彙は定めていません。その代わりに、記述する資源のプロパティーとクラスを名前付けして記述するために使用できるメカニズムを定めています。

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

RDF語彙記述言語のクラスとプロパティーのシステムは、Javaなどのオブジェクト指向プログラミング言語の型システムに似ています。インスタンスが持つことができるプロパティーに関してクラスを定義するのではなく、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語彙記述では、クラスとプロパティーの意味を記述できる多くのテクニックがあるということを認めるという方針をとります。DAML+OIL、W3Cの[OWL]言語、推論規則言語、および他の形式(例えば時相論理)などの、より豊かな語彙や「オントロジー」言語はそれぞれ、ウェブ上のデータに関する重要な概括を得るのに役立ちます。RDF語彙の設計者は、この一般的なアプローチを共有するより豊かな語彙記述言語を探求する一方で、RDF語彙記述言語1.0の機能を使用したセマンティック・ウェブのアプリケーションを作成、配布できます。

この仕様に基づいて定義される言語は、アプリケーション固有のRDF語彙で他のRDF資源のプロパティー(プロパティーを含む)を記述するのに使用できるRDF資源の集まりで構成されています。コア語彙は、ここで非形式的に「rdfs」と呼んでいる名前空間で定義されています。その名前空間は、URI参照 http://www.w3.org/2000/01/rdf-schema# で識別され、接頭辞「rdfs」で関連付けられます。また、この仕様では、接頭辞「rdf」を用いてRDF名前空間 http://www.w3.org/1999/02/22-rdf-syntax-ns# を参照します。

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

2. クラス

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

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

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

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

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

RDF概念および抽象構文[RDF-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概念仕様[RDF-CONCEPTS]で記述されているデータ型のRDFモデルに相当します。rdfs:Datatypeは、rdfs:Classのインスタンスとサブクラスの両方です。rdfs:Datatypeの各インスタンスはrdfs:Literalのサブクラスです。

2.5 rdf:XMLLiteral

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

2.6 rdf:Property

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

3. プロパティー

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

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

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

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

5. その他の語彙

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

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

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

異なる3種類のコンテナが定義されています。3つのコンテナのクラスの形式意味論[RDF-SEMANTICS]は、すべて全く同じですが、追加情報を非形式的に示すために異なるクラスを使用できます。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コレクション語彙では、閉じたコレクション、すなわち、それ以上のメンバーを持てないものを記述できます。例付きのコレクションの非形式的な概論に関しては、RDF入門書のコレクションの項を参照してください。

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

: 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 具体化語彙

最初のRDFモデルおよび構文仕様[RDFMS]では、RDFステートメントを述べずに記述するための語彙を定義しました。[RDFMS]はこの語彙に対して形式意味論を提供せず、提供した非形式的な定義にはいくぶん矛盾がありました。現在のRDF仕様でも、この語彙に対して規範的な形式意味論を割り当てていません。しかし、この語彙の意図された意味([RDFMS]定義の意図を一般的に明確化する) をここで記述しています。例付きの具体化語彙の非形式的な概論は、RDF入門[RDF-PRIMER]にあります。

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は、単独では意味を持ちません。これは、RDF入門[RDF-PRIMER]の例16で示されているような成句で使用できる1つの語彙として提供されます。このプロパティーの意味には形式的な仕様がないにもかかわらず、この種の例での一般的な成句の使用を促進するために定義する価値があります。

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

6. RDFスキーマの要約(参考情報)

この表はRDFの語彙の概要を表しており、RDFモデルおよび構文仕様に基づいて定義されている語彙とRDFスキーマに由来するクラスとプロパティーとを一緒に記述しています。

6.1 RDFクラス

クラス名 説明
rdfs:Resource クラス資源、すべて
rdfs:Literal テキストの文字列や整数などのリテラル値のクラス
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 構造化された値に用いられる成句的なプロパティー(使用法のに関してはRDF入門を参照) 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のインスタンスもあります。


7.参考文献

7.1 規範的な参考文献

[RDF-CONCEPTS]
Resource Description Framework (RDF): Concepts and Abstract Syntax, Graham Klyne and Jeremy J. Carroll, Editors, W3C Recommendation, 10 February 2004, http://www.w3.org/TR/2004/REC-rdf-concepts-20040210/ . 最新バージョンは、http://www.w3.org/TR/rdf-concepts/にあります。
[RDF-SEMANTICS]
RDF Semantics, Patrick Hayes, Editor, W3C Recommendation, 10 February 2004, http://www.w3.org/TR/2004/REC-rdf-mt-20040210/ . 最新バージョンは、http://www.w3.org/TR/rdf-mt/にあります。
[RDF-SYNTAX]
RDF/XML Syntax Specification (Revised), Dave Beckett, Editor, W3C Recommendation, 10 February 2004, http://www.w3.org/TR/2004/REC-rdf-syntax-grammar-20040210/ . 最新バージョンは、http://www.w3.org/TR/rdf-syntax-grammar/にあります。
[RDF-TESTS]
RDF Test Cases, Jan Grant and Dave Beckett, Editors, W3C Recommendation, 10 February 2004, http://www.w3.org/TR/2004/REC-rdf-testcases-20040210/ . 最新バージョンは、http://www.w3.org/TR/rdf-testcases/にあります。
[RDFMS]
Resource Description Framework (RDF) Model and Syntax, W3C Recommendation, 22 February 1999
http://www.w3.org/TR/1999/REC-rdf-syntax-19990222/
[XMLNS]
Namespaces in XML; W3C Recommendation, 14 January 1999
http://www.w3.org/TR/1999/REC-xml-names-19990114/

7.2 参考情報の参考文献

[RDF-PRIMER]
RDF Primer, Frank Manola and Eric Miller, Editors, W3C Recommendation, 10 February 2004, http://www.w3.org/TR/2004/REC-rdf-primer-20040210/ . 最新バージョンは、http://www.w3.org/TR/rdf-primer/にあります。
[BERNERS-LEE98]
What the Semantic Web can represent, Tim Berners-Lee, 1998
http://www.w3.org/DesignIssues/RDFnot.html
[EXTWEB]
Web Architecture: Extensible Languages, Tim Berners-Lee and Dan Connolly, 1998
http://www.w3.org/TR/1998/NOTE-webarch-extlang-19980210
[DCMI]
Dublin Core Metadata Initiative
http://www.dublincore.org/
[OWL]
OWL Web Ontology Language Reference, Mike Dean and Guus Schreiber, Editors, W3C Recommendation, 10 February 2004, http://www.w3.org/TR/2004/REC-owl-ref-20040210/ . 最新バージョンは、http://www.w3.org/TR/owl-ref/にあります。
[SCHEMA-ARCH]
The Cambridge Communique, W3C NOTE, 7 October 1999, Swick and Thompson
http://www.w3.org/TR/1999/NOTE-schema-arch-19991007
[XML]
Extensible Markup Language (XML) 1.0, W3C Recommendation, 10-February-1988, Section 3.2 Element Type Declarations
http://www.w3.org/TR/1998/REC-xml-19980210.html#elemdecls

8. 謝辞

最初のRDFスキーマの設計は、RDFスキーマ・ワーキンググループ(1997年-2000年)によって作成されました。現在の仕様は、主にその設計を編集上明確化したものであり、RDFコア・ワーキンググループメンバーの努力と、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.)

変更

以下は、2003年1月23日の最終草案以後に、この仕様に加えられた主な変更の概要です(最新のものが1番上)。この仕様に関して提起された特定の問題の詳細に関しては、最終問題追跡ドキュメントを参照してください。

付録A: RDF/XMLとしてのRDFスキーマ

ここではRDF語彙RDFS語彙のRDFS記述をRDF/XML構文で示しています。これには、1999年のRDFモデルおよび構文仕様で最初に導入されたRDF資源を記述するステートメントと、RDFコア・スキーマ語彙で導入された資源のための定義が含まれています。

この部分は、別のRDF/XMLドキュメントとしても利用できます。それはRDF名前空間URIRDFS名前空間URIで公開されている内容と必ずしも一致するわけではなく、時間がたてば進化するかもしれません。

<rdf:RDF
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
  xmlns:owl="http://www.w3.org/2002/07/owl#">

<owl:Ontology rdf:about="http://www.w3.org/2000/01/rdf-schema#"/>

<rdfs:Class rdf:about="http://www.w3.org/2000/01/rdf-schema#Resource">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2000/01/rdf-schema#"/>
  <rdfs:label>Resource</rdfs:label>  <rdfs:comment>The class resource, everything.</rdfs:comment>
</rdfs:Class>

<rdf:Property rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#type">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/>
  <rdfs:label>type</rdfs:label>
  <rdfs:comment>The subject is an instance of a class.</rdfs:comment>
  <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
  <rdfs:domain rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
</rdf:Property>

<rdfs:Class rdf:about="http://www.w3.org/2000/01/rdf-schema#Class">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2000/01/rdf-schema#"/>
  <rdfs:label>Class</rdfs:label>
  <rdfs:comment>The class of classes.</rdfs:comment>
  <rdfs:subClassOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
</rdfs:Class>

<rdf:Property rdf:about="http://www.w3.org/2000/01/rdf-schema#subClassOf">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2000/01/rdf-schema#"/>
  <rdfs:label>subClassOf</rdfs:label>
  <rdfs:comment>The subject is a subclass of a class.</rdfs:comment>
  <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
  <rdfs:domain rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
</rdf:Property>

<rdf:Property rdf:about="http://www.w3.org/2000/01/rdf-schema#subPropertyOf">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2000/01/rdf-schema#"/>
  <rdfs:label>subPropertyOf</rdfs:label>
  <rdfs:comment>The subject is a subproperty of a property.</rdfs:comment>
  <rdfs:range rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/>
  <rdfs:domain rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/>
</rdf:Property>

<rdfs:Class rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/>
  <rdfs:label>Property</rdfs:label>
  <rdfs:comment>The class of RDF properties.</rdfs:comment>
  <rdfs:subClassOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
</rdfs:Class>

<rdf:Property rdf:about="http://www.w3.org/2000/01/rdf-schema#comment">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2000/01/rdf-schema#"/>
  <rdfs:label>comment</rdfs:label>
  <rdfs:comment>A description of the subject resource.</rdfs:comment>
  <rdfs:domain rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
  <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/>
</rdf:Property>

<rdf:Property rdf:about="http://www.w3.org/2000/01/rdf-schema#label">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2000/01/rdf-schema#"/>
  <rdfs:label>label</rdfs:label>
  <rdfs:comment>A human-readable name for the subject.</rdfs:comment>
  <rdfs:domain rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
  <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/>
</rdf:Property>

<rdf:Property rdf:about="http://www.w3.org/2000/01/rdf-schema#domain">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2000/01/rdf-schema#"/>
  <rdfs:label>domain</rdfs:label>
  <rdfs:comment>A domain of the subject property.</rdfs:comment>
 <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
  <rdfs:domain rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/>
</rdf:Property>

<rdf:Property rdf:about="http://www.w3.org/2000/01/rdf-schema#range">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2000/01/rdf-schema#"/>
  <rdfs:label>range</rdfs:label>
  <rdfs:comment>A range of the subject property.</rdfs:comment>
  <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
  <rdfs:domain rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/>
</rdf:Property>

<rdf:Property rdf:about="http://www.w3.org/2000/01/rdf-schema#seeAlso">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2000/01/rdf-schema#"/>
  <rdfs:label>seeAlso</rdfs:label>
  <rdfs:comment>Further information about the subject resource.</rdfs:comment>
  <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
  <rdfs:domain   rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
</rdf:Property>

<rdf:Property rdf:about="http://www.w3.org/2000/01/rdf-schema#isDefinedBy">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2000/01/rdf-schema#"/>
  <rdfs:subPropertyOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#seeAlso"/>
  <rdfs:label>isDefinedBy</rdfs:label>
  <rdfs:comment>The defininition of the subject resource.</rdfs:comment>
  <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
  <rdfs:domain rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
</rdf:Property>

<rdfs:Class rdf:about="http://www.w3.org/2000/01/rdf-schema#Literal">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2000/01/rdf-schema#"/>
  <rdfs:label>Literal</rdfs:label>
  <rdfs:comment>The class of literal values, eg. textual strings and integers.</rdfs:comment>
  <rdfs:subClassOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
</rdfs:Class>

<rdfs:Class rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/>
  <rdfs:label>Statement</rdfs:label>
  <rdfs:subClassOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
  <rdfs:comment>The class of RDF statements.</rdfs:comment>
</rdfs:Class>

<rdf:Property rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#subject">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/>
  <rdfs:label>subject</rdfs:label>
  <rdfs:comment>The subject of the subject RDF statement.</rdfs:comment>
  <rdfs:domain rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement"/>
  <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
</rdf:Property>

<rdf:Property rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/>
  <rdfs:label>predicate</rdfs:label>
  <rdfs:comment>The predicate of the subject RDF statement.</rdfs:comment>
  <rdfs:domain rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement"/>
  <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
</rdf:Property>

<rdf:Property rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#object">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/>
  <rdfs:label>object</rdfs:label>
  <rdfs:comment>The object of the subject RDF statement.</rdfs:comment>
  <rdfs:domain rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement"/>
  <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
</rdf:Property>

<rdfs:Class rdf:about="http://www.w3.org/2000/01/rdf-schema#Container">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2000/01/rdf-schema#"/>
  <rdfs:label>Container</rdfs:label>
  <rdfs:subClassOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
  <rdfs:comment>The class of RDF containers.</rdfs:comment>
</rdfs:Class>

<rdfs:Class rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#Bag">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/>
  <rdfs:label>Bag</rdfs:label>
  <rdfs:comment>The class of unordered containers.</rdfs:comment>
  <rdfs:subClassOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#Container"/>
</rdfs:Class>

<rdfs:Class rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#Seq">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/>
  <rdfs:label>Seq</rdfs:label>
  <rdfs:comment>The class of ordered containers.</rdfs:comment>
  <rdfs:subClassOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#Container"/>
</rdfs:Class>

<rdfs:Class rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#Alt">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/>
  <rdfs:label>Alt</rdfs:label>
  <rdfs:comment>The class of containers of alternatives.</rdfs:comment>
  <rdfs:subClassOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#Container"/>
</rdfs:Class>

<rdfs:Class rdf:about="http://www.w3.org/2000/01/rdf-schema#ContainerMembershipProperty">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2000/01/rdf-schema#"/>
  <rdfs:label>ContainerMembershipProperty</rdfs:label>
  <rdfs:comment>The class of container membership properties, rdf:_1, rdf:_2, ...,
                    all of which are sub-properties of 'member'.</rdfs:comment>
  <rdfs:subClassOf rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/>
</rdfs:Class>

<rdf:Property rdf:about="http://www.w3.org/2000/01/rdf-schema#member">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2000/01/rdf-schema#"/>
  <rdfs:label>member</rdfs:label>
  <rdfs:comment>A member of the subject resource.</rdfs:comment>
  <rdfs:domain rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
  <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
</rdf:Property>

<rdf:Property rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#value">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/>
  <rdfs:label>value</rdfs:label>
  <rdfs:comment>Idiomatic property used for structured values.</rdfs:comment>
  <rdfs:domain rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
  <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
</rdf:Property>

<!-- the following are new additions, Nov 2002 -->

<rdfs:Class rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#List">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/>
  <rdfs:label>List</rdfs:label>
  <rdfs:comment>The class of RDF Lists.</rdfs:comment>
  <rdfs:subClassOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/></rdfs:Class>

<rdf:List rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#nil">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/>
  <rdfs:label>nil</rdfs:label>
  <rdfs:comment>The empty list, with no items in it. If the rest of a list is nil then the list has no more items in it.</rdfs:comment>
</rdf:List>

<rdf:Property rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#first">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/>
  <rdfs:label>first</rdfs:label>
  <rdfs:comment>The first item in the subject RDF list.</rdfs:comment>
  <rdfs:domain rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#List"/>
  <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
</rdf:Property>

<rdf:Property rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#rest">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/>
  <rdfs:label>rest</rdfs:label>
  <rdfs:comment>The rest of the subject RDF list after the first item.</rdfs:comment>
  <rdfs:domain rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#List"/>
  <rdfs:range rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#List"/>
</rdf:Property>

<rdfs:Class rdf:about="http://www.w3.org/2000/01/rdf-schema#Datatype">
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2000/01/rdf-schema#"/>
  <rdfs:label>Datatype</rdfs:label>
  <rdfs:comment>The class of RDF datatypes.</rdfs:comment>
  <rdfs:subClassOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
</rdfs:Class>
	
<rdfs:Datatype rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral">
  <rdfs:subClassOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/> 
  <rdfs:isDefinedBy rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/>
  <rdfs:label>XMLLiteral</rdfs:label>
  <rdfs:comment>The class of XML literal values.</rdfs:comment>
</rdfs:Datatype>

<rdf:Description rdf:about="http://www.w3.org/2000/01/rdf-schema#">
  <rdfs:seeAlso rdf:resource="http://www.w3.org/2000/01/rdf-schema-more"/>
</rdf:Description>

</rdf:RDF>

        

RDF/XML Metadata