...

OWL

by user

on
Category: Documents
16

views

Report

Comments

Description

Transcript

OWL
セマンティックWeb
TBLの当初のWeb構想
•
Information Management: A Proposal (1989) by Tim Berners-Lee
http://www.w3.org/History/1989/proposal-msw.html
•
•
•
•
数千人が働く
人々が入れ替わる
組織は常に変化している
情報欠落が起こっている
–
–
–
–
–
–
•
•
•
•
Where is this module used?
Who wrote this code? Where does he work?
What documents exist about that concept?
Which laboratories are included in that project?
Which systems depend on this device?
What documents refer to this one?
Hypertextによる情報の管理を提案
一つの文書で巨大な組織のすべてのことを書くことは不可能
組織は階層的で木構造だが、情報は階層的には管理しにくい
キーワードでの検索では探しにくい
TBL 1st Proposal
Information Management: A Proposal (1989)
• リンクにタイプがあった
–
–
–
–
–
–
depends on
is part of
made
refers to
uses
is an example of
• データ解析を行いたかった
–
–
–
–
自動的な解析
人の居ないdivisionやドキュメントのないソフトウェアの検索
メーリングリストの自動生成
実際の組織の構造を導き出す
TBL 2nd Proposal (2001)
Tim Berners Lee, James Hendler, Ora Lassila: The Semantic Web,
http://www.sciam.com/article.cfm?articleID=00048144-10D2-1C70-84A9809EC588EF21&sc=I10032
• Semantic Web
– Webを正しいHypertextシステムにする
– リンクにタイプがある
– データ間の関係を書く
– 文書だけでなくデータを取り扱う
– データにも型がある?
• 自動的な解析を行うことができる
– 推論可能にする
“The Semantic Web
will globalize KR,
just as the WWW
globalized hypertext
WWWが登場する以前、ハイパーテキストは一部の「理想家」だけが
熱心に取り組んでいる特殊な道具でした。
知識表現や機械に理解可能な知識というコンセプトの現在も、
とてもよく似た状況と言えそうです。
「絶対の真実、全ての物事を網羅する知識、あらゆる可能性といった
中央集約型のコンセプト」から離れて、限られた知識で何ができるか
というところからスタートすることで、知識表現におけるWWW、
すなわちセマンティック・ウェブへの未知が開けてくるというのです。
By TBL
Big Picture for Semantic Web (2001)
http://www.semanticweb.org/about.html#bigpicture
セマンティックWebの世界(1)
①電話が鳴ったとき、エンターテインメントシステムは
ビートルズの 「We Can Work It Out 」を大音量で再生し
ていた。Peteが電話に出ると,ボリューム設定ができる
他のローカル機器すべてにその電話機がメッセージを送信
し,自動的に音量を下げた.
②電話の相手は妹のLucyで,病院からの連絡だった。
「ママは専門医のところへ行って,物理療法のための
診察を受けなくてはならないの。週に2回程度ね.
私はエージェントにアポイントを取ってもらうつもりよ」
と彼女は話した.Peteは即座に,車での送迎は自分が
請け負うと申し出た.
セマンティックWebの世界(2)
③医師の推薦
私たちのエージェントは,ママに処方された治療法についての
情報を医師エージェントから即座に入手し,その提供者の複数の
リストを調べ,ママの自宅から半径20マイル以内で,信頼できる
評価サービスにおいて「きわめて良い」または「とても良い」という
評価を得ている,加入済みの保険のプランでカバーできるところを
チェックした.
④スケジューリング
アポイント設定が可能な日時(各提供者のウェブサイトを通じて
(エージェントが配信している)と,PeteやLucyの多忙な
スケジュールを突き合わせて,実際に設定可能なアポイント日時
を探し始めた。
ZDNetエンタープライズ (2002.12.17)
http://www.zdnet.co.jp/enterprise/
Opinion:現実のものとなるセマンティックWeb
• 人がHTMLページを要求するのではなく、離れたコンピュータ
同士が意味のある方法で会話できるWebを、XMLよりさらに
高いレベルでつくりあげようという「セマンティックWeb」が現
実味を帯びてきた。W3Cが取り組んでいるほか、国防総省
のDARPAも後押ししている。
• セマンティックWebは単なる騒動かもしれないし、インター
ネットの将来かもしれない。
※人により意見が異なる。
デビッドワインバーグの批判 (2002)
・私が危惧するのは,セマンティツクウェブがSGMLと同じ末路を辿る
のではないか-それも基本的に同じ理由で,ということである.
・メタデータの正規化が真に機能するのは,高い報酬(Benefit)が得られ,
管理権限が一カ所に集約されており,ユーザに規範を遵守させやすい
ような,限定的なアプリケーションにおいてである.
そうでなければ、Webにおいてはうまく機能しない,ということだ。
David Weinberge: The Semantic Argument Web
Tim Berners-Lee's dream of a Web of meaning is unlikely to happen,
at least the way he thinks. …
知識工学とセマンティックWebにおける
オントロジーの研究開発
知識工学
1991-現在
• 概念化の明示的仕様
(Tom Gruber オントロジーの定義)
•
•
•
•
•
•
•
オントロジー記述言語
(Ontolingua)
知識交換言語(KIF)
PSM
Task Ontology
Generic Ontology
CYC, WordNet, EDR…
オントロジー構築方法論
セマンティックWeb
1997-現在
• 95-97: XML as arbitrary
structures
• 97-98: RDF
• 98-99: RDFS
• 00-01: DAML+OIL
• 2004.2.10: OWL
• 2009.10.27: OWL2
• 2010.6.22: RIF
Semantic Web Stack 2001
Semantic Web Stack 2006
Semantic Web Stack 2010
集合知
Wikipedia
Folksonomy
Linked Open Data (LOD)
オープン・データ
米国連邦政府
英国政府
Science
科学データ Commons
音楽データ MusicBrainz
政府データ
メディア
ライブラリ
地図・政府
写真データ
Flickr
生命科学・医療
スクレイピング
アノテーション
GRDDL
Dapper
Piggy Bank
RDFa
HTML5 microdata
microformats
Web
ページ
2001年
2006年
2010年
YAHOO!
SearchMonkey
Google
リッチスニペット
RDF
XML(自由)→RDF(固定)
•
•
•
•
XML文書で使用されるタグは任意.
ソフトウェア(エージェント)にとって理解不能.
タグ名の選択,モデル使用法は千差万別.
単純ではあるがメタデータ記述形式を統一したも
のがRDF
• RDF上に構築されるRDFスキーマ,オントロジー
を通してソフトウェア(エージェント)が情報の意味
が理解できる
山口高平が
http://www.yamaguti.ae.keio.ac.jp
というサイトを作成した
<is_creator>
<person>山口高平</person>
<web site>http://www.yamaguti…</web site>
</is_creator>
<home_page_by_author>
<web site>http://www.yamaguti…</web site>
<author>山口高平</author>
</home_page_by_author>
RDF基本データモデル(1)
(Resource Description Framework)
リソース:URIで識別可能な情報資源
プロパティ:リソースの特徴・属性,
リソース間の関係を記述するもの
ステートメント(文):
リソース+プロパティ+値,
リソース+プロパティ+リソースの組み合わせ.
主語(Subject)+述語or動詞(Predicate)+目的語
(Object)を意味する.
RDF基本データモデル(2)
URI
URI
URI
主語
リソース
A君
役職,スキル,...
述語(動詞)
プロパティ
設計する
目的語
リソース
情報システムユースケース
入力,参照,出力,ツール,
システム仕様,US仕様...
今は放置.あとで飛んだURI先で定義すればいよい.
段階的開発を可能にしている. IDがURIになっていることがSWの本質
RDFの基本データモデル(3)
• RDFの基本モデルは有向ラベル付きグラフ
– 主語,目的語をノードとし,述語をアークとして連結
– リソースノードは楕円,リテラルは長方形で示す
• リソースは,URIで参照
– 目的語はリソースまたはリテラル
– 主語,述語,目的語の組み合わせは,ステートメント
主語
述語
目的語
dc:creator
神崎 正英
http://kanzaki.com
リソース
プロパティ
ステートメント
リテラル
RDFの基本データモデル(4)
• 複数のステートメントを連結したRDF(構造化モデル)
– 目的語がリソース:そのリソースを主語とみたてて新たなステート
メントを作成可能
– 目的語ノードを主語として連結
– ノードから複数のアークが伸びてよい
上田
上田
URI
好き
好き
URI
猫
猫
URI
性別
オス
色
黒
RDFの基本データモデル(5)
空白ノード
URI参照による名前付けをしないノード
ホームページ

http://www.bb2.com
空白ノードは外部からは参照できないが、「あ
る匿名のリソース」としてトリプルの主語や目
的語になることはできる。
URI参照で名前付けをしないため、
外部からURIによって見つけることができない
空白ノードと構造化グラフ(例1)
ID
ホームページ
住所
AA1 石川
www.aa1.com
東京
BB2 今井
www.bb2.com
神奈川
CC3 手島
www.cc3.com
東京
DD4 内藤
www.dd4.com
愛知

氏名
ホームページ
http://www.bb2.com
BB2
ID欄の値は主語ではなくプロパティの一つ。
ID
ホームページ
BB2
http://www.bb2.com
空白ノードと構造化グラフ(例2)
• 「http://www.bb2.comの作者は今井良で、そ
のメールアドレスは[email protected]」を
RDFのグラフ図で表す場合
氏名
http://www.bb2.com
今井良
作者
メールアドレス
[email protected]
「ある人物」を表す匿名の空白ノード
RDFの構文(1)
XML
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<rdf:Description rdf:about="http://kanzaki.com">
<dc:creator>神崎正英</dc:creator>
</rdf:Description>
</rdf:RDF>
モデル
dc:creator
http://kanzaki.com
神崎正英
Notation3
@prefix dc: <http://purl.org/dc/elements/1.1/> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
<http://kanzaki.com>
dc:creator "神崎正英" .
N-Triple
<http://kanzaki.com> <http://purl.org/dc/elements/1.1/creator>
“神崎正英" .
RDFのXML構文(基本モデル)
dc:creator
http://kanzaki.com
神崎正英
rdf: RDF Model&Syntax name space
Description要素:ステートメント
about属性:主語となるリソースのURI
Description要素内容:プロパティ(dc:creator)+値(神崎正英)
<rdf:Description rdf:about=“http://kanzaki.com">
<dc:creator>神崎正英</dc:creator>
</rdf:Description>
短縮構文(要素内容を書かずに属性として記述)
<rdf:Description
rdf:about=“http://kanzaki.com“ dc:creator=“神崎正英”/>
RDFのXML構文(構造化モデル)
ex:webmaster
dc:publisher
http://www.mycom.co.jp
Someone’s name
urn:isbn:4-8399-0454-5
dc:creator
神崎正英
<rdf:RDF ...>
<rdf:Description rdf:about=“urn:isbn:4-8399-0454-5">
<dc:creator>神崎正英</dc:creator>
<dc:publisher>
<rdf:Description rdf:about=" http://www.mycom.co.jp ">
<ex:webmaster>Someone’s name</ex:webmaster>
</rdf:Description>
</dc:publisher>
</rdf:Description>
</rdf:RDF>
練習問題1
• 「William の年齢は22歳である」という内
容をRDFモデルとXML構文で記述せよ.
• プロパティはAgeとする.
• 発生する問題は?
William
Age
<?xml version="1.0"?>
<rdf:RDF
xmlns:rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns#
xmlns:mr3=http://mmm.semanticweb.org/mr3#
xml:base="http://mmm.semanticweb.org/mr3#">
<rdf:Description rdf:ID="William">
<mr3:Age>22</mr3:Age>
</rdf:Description>
</rdf:RDF>
22
練習問題2
• 「William の父はCharlesである」という内容
をRDFモデルとXML構文で記述せよ.
• プロパティはhasFatherとする.
hasFather
William
Charles
<?xml version="1.0"?>
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:mr3=http://mmm.semanticweb.org/mr3#
xml:base="http://mmm.semanticweb.org/mr3#">
<rdf:Description rdf:ID="William">
<mr3:hasFather rdf:resource="#Charles"/>
</rdf:Description>
</rdf:RDF>
練習問題3
•
•
•
•
•
こころの作者は夏目漱石である.
こころは小説である.
夏目漱石は作家である.
すべての作家は人間である.
小説の作者は作家のみである.
• 作者を表すプロパティとして,
「http://purl.org/dc/elements/1.1/creator」を用いる
練習問題3 RDF(S)モデル
プロパティ
クラス
RDFS
人間
小説
作家
rdfs:domain: 小説
rdfs:range: 作家
dc:creator
dc → http://purl.org/dc/elements/1.
RDF
リソースのタイプ
小説
こころ
dc:creator
作家
夏目漱石
練習問題3 RDF/XML
<?xml version="1.0"?>
<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#"
xmlns:mr3="http://mmm.semanticweb.org/mr3#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xml:base="http://mmm.semanticweb.org/mr3#">
<rdfs:Class rdf:ID="作家">
<rdfs:subClassOf>
<rdfs:Class rdf:ID="人間"/>
</rdfs:subClassOf>
</rdfs:Class>
<rdfs:Class rdf:ID="小説"/>
<rdf:Property rdf:about="http://purl.org/dc/elements/1.1/creator">
<rdfs:domain rdf:resource="#小説"/>
<rdfs:range rdf:resource="#作家"/>
</rdf:Property>
<mr3:作家 rdf:ID="夏目漱石"/>
<mr3:小説 rdf:ID="こころ">
<dc:creator rdf:resource="#夏目漱石"/>
</mr3:小説>
</rdf:RDF>
RDFS
RDFS(スキーマ)
好き,性別,色などのプロパティ(述語)は,
どのように定義するのか?
上田
好き
たま
性別
オス
色
黒
上田リソース,たまリソースは,
どのようなカテゴリに属するのか?
→ 上田リソースは,人間クラスに属する
→ たまリソースは,猫クラスに属する
 クラスの定義方法は?
 リソースがクラスに属することを
表明方法は?
プロパティやリソースの
カテゴリを定義するための
基本的なメカニズムを提供
RDFS:語彙(タグ)に関するメタ知識
• RDFのモデル・構文に基づいて,RDFSが提供する以下のリ
ソース及びプロパティを用いて,プロパティ定義,クラス定義,
クラスのインスタンスの定義を行う
– rdf:は,http://www.w3.org/1999/02/22-rdf-syntax-ns#の接頭辞を示す
– rdfs:は,http://www.w3.org/2000/01/rdf-schema#の接頭辞を示す
• RDFSの4基本クラス
–
–
–
–
rdfs:Resource:
rdfs:Class:
rdf:Property:
rdfs:Literal:
すべてのものはリソース
クラス=基本的なものごとのカテゴリ
プロパティ=物事の性質、関係
文字列などのリテラル
• RDFSの7基本プロパティ
– あるクラスのインスタンスであることを示す:rdf:type
– クラス,プロパティの派生関係を示す:
rdfs:subClassOf,rdfs:subPropertyOf
– プロパティの限量定義: rdfs:range, rdfs:domain
– 人間に理解できる情報: rdfs:label, rdfs:comment
RDFSクラスの作り方
RDFSもRDFモデル(SPO)的に考えて作成する.
① rdf:typeプロパティの値をrdfs:Classとしてクラスを
作る(クラスはrdfs:Classのインスタンスとする)
②簡略法<rdfs:Class …></rdfs:Class>
<rdf:Description rdf:ID=“動物">
<rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema #Class"/>
or <rdf:type rdf:resoucre=“&rdfs;Class”/>
<rdfs:subClassOf rdf:resource=“#生物"/>
生物
</rdf:Description>
<rdfs:Class rdf:ID=“犬">
<rdfs:subClassOf rdf:resource=“#動物"/>
</rdfs:Class>
is-a
動物
is-a
犬
RDF/XMLの省略記述
• RDFのXML構文では,rdf:typeでタイプを指定し
たノード(型付きノード)は,rdf:Description要素を
タイプ名で置き換えることができる
<rdf:Description rdf:ID="Symphony">
<rdf:type rdf:resource=" http://www.w3.org/2000/01/rdf-schema#Class"/>
<rdfs:subClassOf rdf:resource="#Music"/>
</rdf:Description>
<rdfs:Class rdf:ID="Symphony">
<rdfs:subClassOf rdf:resource="#Music"/>
</rdfs:Class>
EX:Personクラスを作ろう
<rdf:Description rdf:ID=“Person”>
<rdf:type rdf:resource=“&rdfs;Class”/>
<rdfs:subClassof rdf:resource=“rdfs;Resource”/>
<rdfs:Class ID=“Person”>
<rdfs:subClassof rdf:resource=“rdfs;Resource”/>
</rdfs:Class>
RDFSプロパティ定義
• プロパティはクラスに従属せずグローバル
– OOP言語のクラスにおけるプロパティ定義と異なる概念
• プロパティの継承、適用範囲の定義
– 上位プロパティを継承するrdfs:subPropertyOf
– 定義域(主語の範囲)を定義するrdfs:domain
– 値域(目的語の範囲)を定義するrdfs:range
<rdf:Property rdf:ID=“好き">
<rdfs:subPropertyOf rdf:resource=“..."/>
<rdfs:domain rdf:resource=“#人間"/>
<rdfs:range rdf:resource=“#猫"/>
</rdf:Property>
RDFSインスタンス定義
• rdf:typeによる型指定
– 定義したクラスのインスタンスであることを
rdf:typeによって示す
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" >
<rdf:Description rdf:about="#たま">
<rdf:type rdf:resource="#猫"/>
</rdf:Description>
人間
rdf:type
上田
<rdf:Description rdf:about="#上田">
<rdf:type rdf:resource="#人間"/>
<好き rdf:resource="#たま"/>
</rdf:Description>
</rdf:RDF>
猫
rdf:type
好き
たま
「上田」というリソースのカテゴリが人間,
「たま」というリソースのカテゴリが猫
であることをあらわしている
プロパティのdomainとrange は?
rdf:type はrdf:Property の一種であり,
rdfs:domainはresourceであり,
rdfs:rangeはclassである.
rdfs:subClassOf,rdfs:subPropertyOf
rdfs:label, rdfs:commentも同様に考えよ.
RDF/RDFS
RDF
Syntax
Literal
Resource
<rdf:Description about=“William”>
<hasFather>Charles<hasFather/>
<rdf:type resource=“Person”/>
</rdf:Description>
Model
William
Property
rdf:type
Person
object(Resource)
hasFather
Charles
predicate
subject
(Resource) (Property)object(Literal)
statement
RDFS
Syntax
<rdf:Class rdf:about=“Person”>
<rdfs:subClassOf resource=“&rdfs;Resource”/>
</rdf:Class>
<rdf:Property rdf:about=“hasFather”>
</rdf:Property>
Model
rdf:type
Person
(Class)
rdfs:Class
rdfs:subClassOf
rdfs:Resource
rdf:type
hasFather
(Property)
rdf:Property
W3Cから提供されているRDFツール IsaViz
RDF + RDFS
RDFS/XML
<rdf:RDF xmlns:rdfs=“…rdf-schema#">
<rdfs:Class rdf:about="http://purl.org/rss/1.0..."
rdfs:label=“…“></rdfs:Class>
<rdf:Property rdf:about="http://purl.org/rss/1.0..."
rdfs:label=“…“></rdf:Property>
</rdf:RDF>
RDF/XML
<rdf:RDF xmlns:rdfs=“…rdf-syntax-ns”>
<image rdf:about="http://...">
<title>…</title>
<link>http://…</link>
</image>…
</rdf:RDF>
www.yamaguti.comp.ae.keio.ac.jp
MMM project をクリック
RDFグラフィカルエディター MR3
OWL
Web Ontology Language
2004年2月10日に仕様確定
OWL
• RDFとRDFSを基礎として,Webに存在するものご
との分類体系(クラス)やその関係,さらにはそれ
を推論していくためのルールを定義するオントロ
ジー言語
• 中央集約でない語彙のネットワーク
–
–
–
–
Webでは各地で独自の語彙定義が行われる
これらを変更することなく,統合・発展させるメカニズム
継承関係、相互関係などに基づく簡単な推論
OWL-Lite, OWL-DL, OWL-Full
A:Symphony = B:Sinfonie
A
B
Symphony
Sinfonie
OWLの基本構成
• ヘッダ要素
– バージョン情報と他のオントロジーのインポー
トを記述
• クラス要素
– オブジェクトのクラスを定義
• プロパティ要素
– プロパティを定義
• インスタンス(個体: Individual)
ヘッダ要素
• ヘッダはowl:Ontology要素として記述
– owl:は,http://www.w3.org/2002/07/owl#の接頭辞
• OWL以外のRDF要素を使ったメタデータなども埋め込むことができる
– 例: Dublin Core
• owl:versionInfo要素の内容は任意の文字列で,オントロジーの意味に
は無関係
• owl:imports要素は他のオントロジーを再利用することができ,拡張性や
相互運用性のための機能
• その他の要素
– owl:priorVersion、owl:backwardCompatibleWith、owl:incompatibleWith
<owl:Ontology rdf:about="">
<owl:versionInfo>webont.html, v.0.9; 2002-08-25 Exp</owl:versionInfo>
<owl:imports rdf:resource="http://www.w3.org/2002/07/owl"/>
<dc:creator>KANZAKI, Masahide</dc:creator>
</owl:Ontology>
OWLクラス定義の概要
• スキーマとは異なるレイヤーとしてのClass
– owl:Class要素によるクラス定義
• クラス同士の関係
– rdfs:subClassOf, owl:disjointWith, owl:equivalentClass ,
owl:oneOf
• クラスの集合(論理組合せ)としての定義
– owl:intersectionOf, owl:unionOf, owl:complementOf
• クラス内でのプロパティの限定
– 制約のタイプ
• owl:allValuesFrom, owl:someValuesFrom, owl:hasValue
– 出現回数の制約
• owl:cardinality, owl:minCardinality, owl:maxCardinality
OWLクラス定義の例
• クラス同士の関係
<owl:Class rdf:ID="Symphony">
<rdfs:subClassOf rdf:resource="#Music"/>
<owl:equivalentClass rdf:resource="http://….#Sinfonie"/>
</owl:Class>
Symphonyクラスは
Sinfonieクラスと
等しい関係
• クラスの組み合わせ
<owl:Class rdf:ID="XHTML">
<owl:intersectionOf rdf:parseType="Collection">
<owl:Class rdf:about="#XML"/>
<owl:Class rdf:about="#HTML"/>
</owl:intersectionOf>
</owl:Class>
XHTMLクラスは
XMLクラスと
HTMLクラスの
共通部分に一致.
論理積.
クラスでのプロパティの制約
• クラス内のowl:onRestriction要素
– 対象とするプロパティをowl:onProperty要素で
指定
– グローバルなプロパティがこのクラス内で受け
る制約を定義
<owl:Class rdf:ID="Person">
<rdfs:subClassOf rdf:resource="#Animal"/>
<rdfs:subClassOf>
<owl:Restriction owl:cardinarity="1">
<owl:onProperty rdf:resource="#hasRealName"/>
</owl:Restriction>
</rdfs:subClassOf>
</owl:Class>
「Person」というクラスは
「Animal」のサブクラスで、
「hasRealName」というプロパティ
の値は1つだけである
OWLプロパティ定義の概要
• RDFSを用いた基本定義
– rdfs:subPropertyOf, rdfs:range, rdfs:domain
• プロパティ同士の関係
– equivalentProperty , inverseOf
• プロパティのタイプ
– ObjectProperty
• オブジェクトを別のオブジェクトと関連づける
• TransitiveProperty, SymmetricProperty, FunctionalProperty,
InverseFunctionalProperty
<owl:ObjectProperty rdf:ID="hasChild">
「hasChild」というプロパティは
<owl:inverseOf rdf:resource="#hasParent"/> 「hasParent」の反対の関係
</owl:ObjectProperty>
– DatatypeProperty
データタイプ値
• オブジェクトをデータタイプ値に結びつける
OWLプロパティの例
• owl:TransitiveProperty
– 「子孫」プロパティのように、P(x,y)とP(y,z)が真ならP(x,z)も真であ
るという具合に関係が推移していくプロパティ。
• owl:SymmetricProperty
– 「夫婦」プロパティのように、P(x,y)⇔P(y,x)が成り立つプロパティ
• owl:FunctionalProperty
– P(x,y)において、xについてただひとつのyしか対応しない
– maxCardinality="1"と同じ
• owl:InverseFunctionalProperty
– P(x,y)において、yの値は特定のxにしか適用できない
– IDとして機能するプロパティ
<owl:TransitiveProperty rdf:ID="hasOffspring">
<owl:inverseOf rdf:resource="#hasAncestor"/>
</owl:TransitiveProperty>
「hasOffspring」というプロパティは
推移プロパティでかつ
「hasAncestor」の反対の関係
インスタンスあるいは個体 (Individual)
• クラスやプロパティの定義(抽象構文では公理 (Axioms) )
– 用語集,推論などを行うためのルール集のようなもの
• インスタンスを記述する部分(抽象構文では事実 (Facts) )
– クラスやプロパティを用いて,(Webに)実際に存在するものを具体的に
描く
• 通常のrdf:Description要素として記述
– rdf:type / 型付ノードで属するクラスを表現
– 他の個体との関係を示
• owl:sameIndividualAs
– 2つの個体が同一であることを示す
• owl:differentFrom
– 2つの個体が別物であることを示す
• owl:allDifferentm
– 列挙した一連の個体が互いに別物であることを示す
– そのほか任意のプロパティ要素を記述
<rdf:Description rdf:ID="Lewis_Carroll">
<owl:sameIndividualAs rdf:resource="#Charles_Lutwidge_Dodgson"/>
<rdf:type rdf:resource="ex:Novelist"/>
<ex:isAuthorOf rdf:resource="#Alice_in_Wonderland"/>
</rdf:Description>
Fly UP