2008年1月10日木曜日

セマンティック・ウェブ入門3:RDF Schema

RDFスキーマを用いると「is-a」の関係を明示的にあらわすことが出来る。

「FedoraがLinuxの一種である。LinuxはOSの一種である。」をRDFスキーまで表すと以下のようになる。

[RDF Schema]
<?xml version="1.0" encoding="UTF-8"?>
<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:ID="OS"/>

<rdfs:Class rdf:ID="Linux">
<rdfs:subClassOf rdf:resource="#OS"/>
</rdfs:Class>

<rdfs:Class rdf:ID="Windows">
<rdfs:subClassOf rdf:resource="#OS"/>
</rdfs:Class>

<rdfs:Class rdf:ID="OSX">
<rdfs:subClassOf rdf:resource="#OS"/>
</rdfs:Class>

<rdfs:Class rdf:ID="Fedora">
<rdfs:subClassOf rdf:resource="#Linux"/>
</rdfs:Class>
</rdf:RDF>

ここではClasssubClassOfしか用いていないが様々なクラスが用意されている。
  • rdfs:Resource
    • 全てのリソースのクラス
  • rdfs:Class
    • 全てのクラスのクラス
  • rdfs:Literal
    • 全てのリテラルのクラス。唯一のデータ型。
  • rdf:Property
    • 全てのプロパティのクラス
  • rdf:Statement
    • 全ての具体化されたステートメントのクラス
上述の例に、Fedoraのkernelバージョンを属性として加えるには以下のように書く。
<rdf:Property rdf:ID="kernel version">
<rdfs:domain rdf:resource="#Fedora"/>
<rdfs:range rdf:resource="&rdf:Literal"/>
</rdf:Property>

RDFスキーマはRDFに従うので、実際はRDFの中に記述される。

ラベル: , , ,

0 件のコメント:

コメントを投稿

登録 コメントの投稿 [Atom]

この投稿へのリンク:

リンクを作成

<< ホーム