このドキュメントは
RDF Vocabulary Description Language 1.0: RDF Schema
W3C Working Draft 30 April 2002
http://www.w3.org/TR/2002/WD-rdf-schema-20020430/
の和訳です。
この文書には和訳上の誤りがありえます。
内容の保証はいたしかねますので、必ずオリジナル文書を参照して下さい。

W3C

RDF ボキャブラリ記述言語 1.0: RDF スキーマ

W3Cワーキングドラフト2002年4月30日

この版:
http://www.w3.org/TR/2002/WD-rdf-schema-20020430/
最新版:
http://www.w3.org/TR/rdf-schema
旧版:
http://www.w3.org/TR/2000/CR-rdf-schema-20000327
編集者:
Dan Brickley, W3C/ILRT <danbri@w3.org>
R.V. Guha <guha@guha.com>

謝辞

要旨

Resource Description Framework (RDF) とはWebで情報を表現するための多目的な言語のことである。本仕様書は、RDFを使ってRDFボキャブラリを記述する方法について規定する。 また、より高度なRDFボキャブラリ言語をサポートするためセマンティックWebが使用することができる規定だけでなく、この目的としての基本ボキャブラリについても規定している。

本文書の位置付け

本節では、本文書の発行時の本文書の位置付けを規定する。本書は他の文書と差し替えられることがある

本書は、World Wide Web Consortium (W3C) RDF コアワーキンググループのワーキングドラフトであり、セマンティックWeb 活動の一環として作成された。

この仕様書は、レビューコメントを受け、編集者の提案を組み入れた2000年3月27日勧告候補の改訂版である。 また、本書はRDFコアワーキンググループによるRDFスキーマ仕様書の第一版である。RDFコアワーキンググループはRDFSのデザインに関してのフィードバックを取り入れる特権が与えられている。

Resource Description FrameworkはW3CセマンティックWeb活動の一部である。本活動、そして特にRDFの目的はWebを使用して機械が理解することのできる情報の交換を行うのための言語を作成することである。

ここで紹介するRDFボキャブラリ記述言語(RDF Vocabulary Description Language)とは、RDFスキーマ1.0 2000年3月27日の勧告候補に記述されている言語の改訂版のことである。仕様書はRDFボキャブラリとXMLスキーマの関係を明確にする目的として、フィードバックの観点で改訂を行ったものである。 が、同時にWebオントロジー言語に関するこれからの作業のためにより明確な原理も提供する。

編集上の変更を若干行い、それに平行してRDF Model Theory [RDFMT] で表現しているRDFの定型化と本仕様書を合わせるために、技術的な部分でもわずかに改訂を行っている。 rdfs:subClassOfおよび rdfs:subPropertyOfは現在、サイクルを形成でき、rdfs:domainおよび rdfs:rangeの記述は明確になった。また、本仕様書ではCRのリリースのフィードバックでその意味を明確に規定できないとしていたため、前回述べていたrdfs:ConstraintResourceおよびrdfs:ConstraintProperty の構成を省略している。オリジナルのRDFのデザインの特徴に関する実装者のフィードバックに応じて、新しいプロパティ、rdfs:member をRDFコンテナボキャブラリに追加した。

本書のコメントは公的メーリングリストwww-rdf-comments@w3.orgへお願いしたい。 コメントの履歴はhttp://lists.w3.org/Archives/Public/www-rdf-comments/で参照できる。

W3Cワーキングドラフトを参考文献資料として使用したり、"進行中の作業"ではないとして引用することは不適切である。これは、進行中の作業であって、W3Cによる保証を示してもいないし、W3Cの総意でもない。現在のW3C勧告とその他の技術ドキュメントのリストはhttp://www.w3.org/TR/を参照されたい。


目次


序論

Resource Description Framework (RDF) は、指定されたプロパティと値に関するリソース間の関係を述べるための簡単なモデルを定義している。RDFのプロパティはリソースの属性とみなされることがあり、その点では、従来の属性と値のペアに相当する。また、RDFのプロパティリソース間の関係も表現する。従って、RDFデータモデルはそれ自体、エンティティと関係の図と似ている。しかし、RDFデータはそれ自体、こういったプロパティを記述するメカニズムを提供しないし、プロパティとその他のリソース間の関係を記述するメカニズムも提供しない。そのメカニズムを提供するのは本仕様書の役割である。RDFボキャブラリ記述言語はその他のクラスやプロパティを記述するために使用できるクラスやプロパティを定義している。

リソース記述コミュニティにはある種のリソースについてある事柄を述べる機能が必要である。例えば、参考書目のリソースを記述するためには、"著者"、"タイトル"そして、"表題"などを含む記述的な属性が共通である。デジタル証明書の場合、"検査合計(checksum)" および"認証(authorization)"が必要となる場合が多い。 これらのプロパティ(属性)とそれに対応するセマンティックの宣言はRDFスキーマとして、RDFのコンテキストに定義されている。スキーマは、リソースのプロパティ(例えば、タイトルや著者、表題、サイズ、色、など)だけでなく、記述されているリソースの種類(例えば、本やWebページ、人、会社など)も定義できる。

本文書は"著者"など、記述要素のボキャブラリを規定してはいないが、そういった要素を定義したり、一緒に使用することのできるリソースのクラスを指定したり、クラスと関係の考えられる組み合わせを制限したり、その制限の違反を検知するのに役立つのに必要なメカニズムを明記する。 従って、本書はボキャブラリ記述言語を定義する。

RDFのボキャブラリ記述言語RDFスキーマは、基本のRDF情報モデル(リソースとプロパティを記述するグラフ構造)の問題として特定されている。RDFボキャブラリはすべて、基本的で共通の構造をいくつか共有する。つまり、 RDFボキャブラリはリソースのクラスとリソース間の関係の種類を記述する。この共通性によって、機械が処理できる言語をより細かにして混合させることが可能となり、[EXTWEB] の必要性を取り扱って、独立したコミュニティによって分散した方法で管理できる複数のボキャブラリを使用できるステートメントを有するメタデータを作成する。

ボキャブラリ記述へのRDFスキーマのアプローチによって、ボキャブラリ設計者達はWWWにクラスやプロパティの記述を表現できる。例えば、クラスとプロパティと値が組み合わせが供に意味あるように使用できる方法で記述することによって可能である。

以降ではそのアプローチの詳細について紹介する。クラスとプロパティを記述するためのRDFスキーマボキャブラリの使用法とアプリケーションレベルのデータへの接続を示して、簡単な例を図表に記述する。

an introductory example, showing node and arc diagram of instance data mixed with schema vocabulary.

(本画像のJPEGおよびPNG 版が利用可能)

本例では、RDFを使用して実世界のもの{人(people)、文書(document)}や、それらが該当するクラス(eg:Document, eg:Person)、そして、これらのクラスのメンバーを関連付けるのに使用できるプロパティを説明する。-- この例では、プロパティeg:author。RDFスキーマを使用することで、RDFプロパティ(eg:authorなど)とリソースのクラスとの関係を記述することができる。本例では、RDFスキーマを使用してeg:authorプロパティが文書と人を関連付けていることを述べる。また、すべての文書は仕事であり、すべての人は代理人であるとみなされていることを示す。本例の拡張はeg:authorと、よく知られていて、より一般的なDublin Core ([DCMI])) プロパティdc:creatorとの関係を示すかもしれない。

編集上の覚書: 本例は以前に使用した例を変更して差し替えている新しい資料である。現在のドラフトではまだこの例を完全に述べてはいないし、ここで示しているスキーマやインスタンスデータを元にしたRDF/XMLテスト事例を含んでもいない。

RDFスキーマ - ボキャブラリ記述言語

本仕様書で定義している言語は、アプリケーション専用のRDFボキャブラリを定義する(プロパティを含む)その他のRDFリソースのプロパティを記述するために使用できるRDFリソースの集まりで構成されている。コアボキャブラリは、ここで正式には'rdfs'というネーム空間に定義されており、URI参照 http://www.w3.org/2000/01/rdf-schema#によって識別されている。また、本仕様書は、接頭語'rdf'を使用してコアRDFネーム空間 http://www.w3.org/1999/02/22-rdf-syntax-ns#を参照する。

編集上の覚書: 本ワーキングドラフトはネーム空間URIの使用を変更する計画もなければ、ボキャブラリ記述言語のネーム空間URIを示すために従来から使用されている接頭語'rdfs'に変更を加える計画もない。ワーキンググループは、新しいRDFSネーム空間URIへの移行に関する長所と欠点を実装者から求める。 実装者は本仕様書のrdfs:domainおよび rdfs:rangeがRDFスキーマ仕様書の初期の版とは異なることに注意が必要である。

RDFスキーマクラスおよびプロパティシステムは、Javaなどのオブジェクト指向のプログラミング言語のタイプシステムに類似している。しかし、RDFスキーマは、クラスのインスタンスが持っているプロパティに関してクラスを定義するのではなく、プロパティが適用しているリソースのクラスに関してプロパティを定義するといった理由から、RDFはオブジェクト指向のプログラミング言語のタイプシステムとは違いがある。これは本仕様書で記述しているrdfs:domainメカニズムとrdfs:rangeメカニズムの役割である。例えば、eg:authorプロパティを定義してeg:Documentのドメインとeg:Personの範囲を定義できるかもしれないが、従来のOOシステムは通常、タイプ eg:Personeg:authorという属性でクラスeg:Bookを定義するかもしれない。RDFの方法を使用して、続けてDocumentのドメイン、または、eg:Personの範囲でさらなるプロパティを定義することが容易になる。これは、これらのクラスのオリジナルの記述を再定義する必要なしにおこなう事ができる。RDFのプロパティを中心とした方法の一つの長所は、Web [BERNERS-LEE98]のアーキテクチュアな原則の一つである現行のリソースについて言いたいことを誰もが何でも非常に簡単に言えるということである。

ドメインおよび範囲のボキャブラリ

本仕様書では、RDFデータのプロパティとクラスの重要な使用法を記述するためのRDFボキャブラリを紹介する。例えば、RDFスキーマはいくつかのプロパティに適切な値の種類に関する制約や、そういったプロパティの原因となるのが当然であるクラスに関しての制約を記述するだろう。

RDFスキーマはこの情報を記述するためのメカニズムを提供するが、どこで、そしてどのようにアプリケーションがそのメカニズムを使用するかは述べない。 例えば、RDFスキーマは クラスPersonのメンバであるリソースを述べるためにauthor プロパティが使用されることを主張できるが、そのクラス情報を処理するときにアプリケーションがどこでそして、どのように動作するのかは述べない。違うアプリケーションがこの情報を異なる方法で使用するだろう。例えば、データチェッキングツールはRDFを使用していくつかのデータセットのエラー発見を支援し、対話式のエディタは適切な値を提案し、推論的なアプリケーションはRDFを使用してインスタンスデータからの詳細情報を推論するかもしれない。

RDFスキーマは、個々に開発された複数のスキーマからのボキャブラリ項目間の関係を記述することができる。URI参照はWebのクラスとプロパティを識別するために使用されるので、他のネーム空間で定義されているクラスを値とするdomain、または、rangeを持つ新しいプロパティを作成することができる。

本仕様書ではRDFクラスとプロパティの意味を表現するのに便利なボキャブラリ記述のありうる形すべてを列挙しようとはしないが、RDFボキャブラリ記述の方針はクラスやプロパティの意味を示す技術が数多くあることを認識し、RDF/XMLを使用してRDFのクラスとプロパティの特性を記述するための規定を確立することである。

より豊富なスキーマや、DAML+OILなどのオントロジー言語、W3C WebOnt言語、推論規則言語、そして、その他のフォーマリズム(例えば、一時的な論理など)は各々Webのデータについての重要な総括を得る機能に貢献している。 RDFボキャブラリの設計者は、この一般的な方法を共有するより豊富なボキャブラリ記述言語を模索しながら、基本のRDFスキーマ1.0の機能を使用してセマンティックWebアプリケーションを作成し導入することができる。

RDFスキーマの概要

以下の表では、RDFで始まるクラスとプロパティでRDFモデルおよび構文仕様書(RDF Model and Syntax specification )で初めに定義したボキャブラリを一緒に引用し、基本のボキャブラリ概要を紹介する。クラスやプロパティは以下に詳しく述べる。コアクラスとプロパティはRDFのボキャブラリ記述言語の機構を定義する。ユーティリティーとコンテナボキャブラリは、集合とRDFステートメントを記述しWWWにRDFボキャブラリ記述を導入するためのさらなるサポートを提供する。

RDFクラス

クラス名 コメント
rdfs:Resource クラスResource
rdfs:Class Classの概念
rdf:Property プロパティの概念
rdfs:Literal クラスrdfs:Literalは原文の文字列などリテラルな値のセットを表現する。
rdf:Statement RDFステートメントのクラス
rdfs:Container これはセットContainerを表現する。
rdf:Bag 無秩序の集合
rdf:Seq 秩序のある集合
rdf:Alt 選択肢(alternative)の集合。
rdfs:ContainerMembershipProperty rdf:_1, rdf:_2, ...などコンテナメンバーシッププロパティ、これはすべて'メンバー(member)'のサブプロパティである。

RDFプロパティ

プロパティ名 コメント ドメイン 範囲
rdfs:isDefinedBy リソースのネーム空間を示す。 rdfs:Resource rdfs:Resource
rdf:subject RDFステートメントのサブジェクト。 rdf:Statement rdfs:Resource
rdf:predicate RDFステートメントの述部。 rdf:Statement rdf:Property
rdf:object RDFステートメントのオブジェクト。 rdf:Statement not specified
rdf:type クラスのメンバーシップを示す。 rdfs:Resource rdfs:Class
rdfs:member コンテナのメンバー。 rdfs:Container not specified
rdfs:subClassOf クラスのメンバーシップを示す。 rdfs:Class rdfs:Class
rdf:value プロパティ値が構造化されたリソースの場合、プロパティの主要な値(通常は文字列)を識別する。 rdfs:Resource not specified
rdfs:subPropertyOf プロパティの特殊化を示す。 rdf:Property rdf:Property
rdfs:comment 記述用にこれを使用すること。 rdfs:Resource rdfs:Literal
rdfs:label リソース名の人間が読むことのできるバージョンを提供する。 rdfs:Resource rdfs:Literal
rdfs:domain プロパティタイプのドメインクラス。 rdf:Property rdfs:Class
rdfs:range プロパティタイプの範囲のクラス。 rdf:Property rdfs:Class
rdfs:seeAlso サブジェクトリソースについての情報を提供するリソース。 rdfs:Resource rdfs:Resource

RDFコアクラスおよびプロパティ

rdfs:Resource

RDFで記述しているものはすべてリソースといい、クラスrdfs:Resourceのメンバーである。

rdfs:Literal

クラスrdfs:LiteralはRDFグラフ構造で、'literals'という自己を意味するノードを表現する。原文の文字列などのプロパティ値はRDFリテラルの例である。

rdfs:Class

これはリソースのタイプカテゴリの一般的な概念に相当する。

RDFクラスメンバーシップを使用してリソースのタイプやプロパティを表現する。別個のリソースのままではあるが、二つのクラスはたまたま同じメンバーを所有していることがある。

rdf:Property

rdf:PropertyはRDFプロパティであるリソースを表現する。

rdf:type

rdf:typeプロパティはリソースはクラスのメンバーであるということを示す。

リソースにプロパティ値が特定のクラスであるrdf:typeプロパティがある場合、そのリソースは指定されたクラスのインスタンスであると言える。

rdf:typeプロパティの値はいつもrdfs:Classのインスタンスであるプロパティである。rdfs:Classとして知られているリソースは、それ自身、rdf:type rdfs:Classのリソースである。

rdfs:subClassOf

rdfs:subClassOfプロパティはリソースのクラス間の特殊化関係を表現する。 rdfs:subClassOfプロパティは移行する。

rdfs:subPropertyOf

プロパティrdfs:subPropertyOf は、一つのプロパティが他のものの特殊化であるということを指定するために使用されるrdf:Propertyのインスタンスである。

サブプロパティの階層を使用して範囲とドメインの制約の階層を表現できる。RDFプロパティに適用するrdfs:rangeプロパティとrdfs:domainプロパティは各々のサブプロパティにも適用する。

編集上の覚書: 用語'スーパープロパティ'は あるプロパティと、rdfs:subPropertyOfであるより一般的なプロパティとの関係を示すために使用されることがある。このプロパティ(そしてrdfs:subClassOfーーこれは'スーパークラス'と呼んだ方がいいかもしれない)の名前は、やや紛らわしい。現在、ワーキンググループはこれらの名前を変えたいとは思わないが、変更した場合の長所と短所に関してのフィードバックを実装者から求める。

rdfs:range

プロパティの値がメンバーであるクラス(または複数のクラス)を示すために使用される rdfs:Propertyのインスタンス。

rdfs:rangeプロパティの値はいつもClassである。rdfs:rangeプロパティはそれ自身、rdfs:rangerdfs:rangeはクラスrdfs:Classである、ということを表現するために使用できる。範囲プロパティの値であるリソースはいずれもクラスになるということを示す。

rdfs:rangeプロパティはプロパティに適用されるのみである。 これは、rdfs:domainプロパティを使用してRDFで表現することもできる。rdfs:rangerdfs:domainはクラスrdf:Propertyである。これは、rangeプロパティががそれら自身プロパティであるリソースに当てはまることを示す。

rdfs:domain

指示されたプロパティを所有するリソースをメンバーとして持つクラスを示すために使用されるrdfs:Propertyのインスタンス。

rdfs:domainrdfs:domainはクラス rdf:Propertyである。これは、ドメインプロパティが、プロパティであるリソースで使用されていることを示す。

rdfs:domainrdfs:rangeはクラス rdfs:Classである。これは、ドメインプロパティの値であるリソースはいずれもクラスであることを示す。

編集上の覚書:これらの定義はRDFスキーマのRDFモデル論理[RDFMT] の形式化と一致するが、rdfs:rangerdfs:domainを充分には説明していない。特に、複数のドメインと範囲プロパティの使用法はRDF/XMLのテスト事例として表すべきであるし、上記で紹介している例と一体化すべきである。

注意:範囲、ドメイン、そして、サブプロパティの階層

サブプロパティの階層を使用して範囲とドメインの制約の階層を表現することができる。 RDFプロパティに適用するrdfs:rangeプロパティおよび rdfs:domainプロパティはすべて、各々のサブプロパティにも適用する。

rdfs:label

rdfs:labelプロパティはリソース名の人間が読むことのできるバージョンを提供するために使用される。

rdfs:comment

rdfs:commentプロパティは リソースの人間が読むことができる記述を提供するために使用される。

原文のコメントはRDFクラスとプロパティの意味を明確にするのに役立つ。こういった袋字の文書は正式な技術(オントロジーや規則言語)と非公式のもの(テスト事例のような散文的な文書)の両方の使用を補完する。様々な文書の形式を組み合わせてRDFスキーマに記述されているクラスやプロパティの意図する意味を表すことができる。

スキーマの多言語の文書はxml:lang言語タグ付け機能を使用することで構文レベルでサポートされる。RDFスキーマはRDFグラフとして表現されるため、他のネーム空間で定義されているボキャブラリを使用してより豊かな文書を提供することができる。

RDFユーティリティ、およびコンテナクラス、およびプロパティ

RDFは、コンテナやRDFステートメントを表現し、RDFボキャブラリ記述をWWWに導入するための構造を含む更なるクラスやプロパティを多数定義する。

RDFコンテナクラスおよびプロパティ

rdfs:Container

rdfs:Containerクラスとは、rdf:Bag, rdf:Seq, rdf:AltなどのようなRDFコンテナクラスのスーパークラスのことである。

rdf:Bag

rdf:BagクラスはRDFの'Bag'コンテナ構造を表現し、rdfs:Containerのサブクラスである。

rdf:Seq

rdf:SeqクラスはRDFの'Sequence'コンテナ構造を表現し、rdfs:Containerのサブクラスである。

rdf:Alt

rdf:SeqクラスはRDFの'Alt'コンテナ構造を表現し、rdfs:Containerのサブクラスである。

rdfs:ContainerMembershipProperty

rdfs:ContainerMembershipPropertyクラスには、メンバーとしてBagコンテナ、Seqコンテナ、そして、Altコンテナのメンバーシップを表すために使用できるプロパティrdfs:memberと、プロパティ_1, _2, _3 ... がある。 rdfs:ContainerMembershipProperty rdf:Propertyのサブクラスである。各コンテナのメンバーシッププロパティはrdfs:memberプロパティの rdfs:subPropertyOfである。

rdfs:member

rdfs:memberプロパティはコンテナメンバーシップのサブプロパティであり、 クラスrdfs:ContainerMembershipPropertyのメンバーである。

(つまり、番号がつけられている各コンテナメンバーシッププロパティにはプロパティrdfs:memberへのrdfs:subPropertyOf関係がある).

編集上の覚書: rdfs:memberrdfs:ContainerMembershipPropertyのメンバーであるかどうかははっきりしない。これはワーキンググループがはっきりさせる必要がある。

ユーティリティボキャブラリ(???RDF Utility Classes and Properties)

以下のユーティリティクラスおよびプロパティはRDFコアネーム空間で定義されている。

rdfs:seeAlso

プロパティrdfs:seeAlsoは、サブジェクトリソースについての詳細情報を提供するリソースを示すために使用される。

rdfs:isDefinedBy

プロパティrdfs:isDefinedByrdfs:seeAlsoのサブプロパティであり、サブジェクトリソースを定義するリソースである。rdfs:seeAlsoと同様に、このプロパティはrdfs:Resourceのインスタンスに適用できるし、値として、rdfs:Resourceを持つことができる。

rdf:value

rdf:valueプロパティは、プロパティ値が構造化されたリソースである場合、プロパティの主要な値(通常は文字列)を識別する。

rdf:Statement

rdf:Statementクラスはリソースのプロパティについてのステートメントを表現する。

rdf:Statement はプロパティrdf:predicaterdf:subject、そして、rdf:objectのドメインである。

異なる個々のrdf:Statementインスタンスには、たまたまその述部プロパティ、主題プロパティ、そしてオブジェクトプロパティに対して同じ値がある。

rdf:subject

RDFステートメントのサブジェクトである。

rdf:subjectプロパティはいくつかのRDFステートメントのサブジェクトであるリソースを表す。

rdf:subjectrdfs:domainは、rdf:Statementであり、rdfs:range rdfs:Resourceである。このプロパティは、RDFステートメントによって記述されているリソースを指定するために使用できる。

rdf:predicate

RDFステートメントの述部である。

rdf:predicaterdfs:domainrdf:Statementであり、 rdfs:rangerdfs:Resourceである。このプロパティは、RDFステートメントで使用されている述部を指定するために使用できる。

rdf:object

RDFステートメントのオブジェクトである。

rdf:objectrdfs:domainrdf:Statementである。rdfs:objectの値にはLiteralやResourceを含むことができるので、このプロパティのために範囲は定義されていない。このプロパティはRDFステートメントのオブジェクトを指定するために使用できる。


参考文献

規範的な参考文献

[RDFMT]
RDF Model Theory, W3C Working Draft, 29 April 2002
[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

情報提供の参考文献

[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/
[SCHEMA-ARCH]
The Cambridge Communiqué, 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

謝辞

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, previously of 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.)

付録A: 図

図1では、ドメインと範囲プロパティの使用を示してどのようにコアRDFプロパティが使用されているかを説明している。この図はここで、RDFグラフ構造のノードとarc表現として表示されている。ボールド 枠がついているノードはrdfs:Classのインスタンスである。

A node and arc diagram showing domains and range properties of some of the main RDF properties

編集上の覚書: 現在のワーキングドラフトでは、以前にこの仕様書に挿入していた図をいくつか省略している。以降の改定では、RDFスキーマクラスとプロパティの階層の図表イラストを増やすだろう。また、rdf:valueやrdf:member、そして、その他のプロパティを省略しているので、現在の図表は未完成であることに注意されたい。

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

RDFコアボキャブラリのRDF記述は、ここではRDF/XMLシリアライゼーション構文に提供されている。RDFスキーマボキャブラリのネーム空間URIは本仕様書の将来の版では変更される可能性があることに注意されたい。このRDFスキーマには、RDFコアスキーマボキャブラリで導入したリソースのための定義だけでなく、1999年のRDFモデルおよび構文仕様書(1999 RDF Model and Syntax specification)で最初に紹介されたRDFリソースを記述するステートメントも含んでいる。

また、このRDF/XMLは、RDF/XML文書(rdfs-namespace.xml)とは別に利用できる。それは、現在W3C RDFスキーマネーム空間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#">

<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 xml:lang="en">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 xml:lang="en">type</rdfs:label>
  <rdfs:comment>Indicates membership 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 xml:lang="en">Class</rdfs:label>
  <rdfs:comment>The concept of Class</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 xml:lang="en">subClassOf</rdfs:label>
  <rdfs:comment>Indicates membership 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 xml:lang="en">subPropertyOf</rdfs:label>
  <rdfs:comment>Indicates specialization of properties</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 xml:lang="en">Property</rdfs:label>
  <rdfs:comment>The concept of a property.</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 xml:lang="en">comment</rdfs:label>
  <rdfs:comment>Use this for descriptions</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 xml:lang="en">label</rdfs:label>
  <rdfs:comment>Provides a human-readable version of a resource name.</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 xml:lang="en">domain</rdfs:label>
  <rdfs:comment>A domain class for a property type</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 xml:lang="en">range</rdfs:label>
  <rdfs:comment>A range class for a property type</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 xml:lang="en">seeAlso</rdfs:label>
  <rdfs:comment>A resource that provides 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#"/>
  <rdf:type resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/>
  <rdfs:subPropertyOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#seeAlso"/>
  <rdfs:label xml:lang="en">isDefinedBy</rdfs:label>
  <rdfs:comment>Indicates the namespace of a 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 xml:lang="en">Literal</rdfs:label>
  <rdfs:comment>This represents the set of atomic values, eg. textual strings.</rdfs:comment>
</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 xml:lang="en">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 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 xml:lang="en">subject</rdfs:label>
  <rdfs:comment>The subject of an 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 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 xml:lang="en">predicate</rdfs:label>
  <rdfs:comment>the predicate of an 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/1999/02/22-rdf-syntax-ns#Property"/>
</rdf:Property>

<rdf:Property 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 xml:lang="en">object</rdfs:label>
  <rdfs:comment>The object of an RDF statement.</rdfs:comment>
  <rdfs:domain rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement"/>
</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 xml:lang="en">Container</rdfs:label>
  <rdfs:subClassOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
  <rdfs:comment>This represents the set 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 xml:lang="en">Bag</rdfs:label>
  <rdfs:comment xml:lang="en">An unordered collection.</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 xml:lang="en">Seq</rdfs:label>
  <rdfs:comment xml:lang="en">An ordered collection.</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 xml:lang="en">Alt</rdfs:label>
  <rdfs:comment xml:lang="en">A collection 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 xml:lang="en">ContainerMembershipProperty</rdfs:label>
  <rdfs:comment>The 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 xml:lang="en">member</rdfs:label>
  <rdfs:comment>a member of a container</rdfs:comment>
  <rdfs:domain rdf:resource="http://www.w3.org/2000/01/rdf-schema#Container"/>
</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 xml:lang="en">value</rdfs:label>
  <rdfs:comment>Identifies the principal value (usually a string) of a property when the property value is a structured resource</rdfs:comment>
  <rdfs:domain rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
</rdf:Property>

<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>


付録C: 編集上の覚書および問題追跡

本仕様書の以下の編集上の問題は未解決である。本仕様書とその他RDFコア仕様書に関する技術上の問題は RDF Issue Tracking 文書に追跡記録されている。


Comments
$Date: 2002/04/30 18:59:20 $