A Semantic Web Primer輪読 4章(担当:安達)
Download
Report
Transcript A Semantic Web Primer輪読 4章(担当:安達)
4. OWL
安達真
早稲田/glucose
[email protected]
背景
RDF
RDF Schema
基本的な、データの枠組み
クラス/プロパティ階層の表現
しかし、semantic webのためには更に表現力が必要
↓
DAML+OIL (DAML-ONT + OIL)
↓
OWL
オントロジ言語に必要なもの
明確な構文
形式的意味論?
効率的の推論
十分な表現力
表現しやすさ
- a well-defined syntax
- a formal semantics
- efficient reasoning support
- sufficient expressive power
- convenience of expression
明確な構文
機械可読なための絶対条件
OWLはRDF/RDFSの上に構築されている
⇒Q: user-friendlyでは無いのではないか?
A: OWLを直接書く機会はほとんど無い。実際には、ツー
ルを使って記述するだろう。
formal semantics
“正確”な意味付け
推測を排除する
異なる人が、異なる解釈をしてしまう可能性を排除する
正確性は論理の上に構築される
推論
クラス構成
A=B ∧ B=C
⇒ A=C
整合性
⇒ xはDのインスタンス
等価性
xはCのインスタンス,C←D
xはAのインスタンス, A←B∩C,A←D
ここでBとDが互いに素とすると、空であるAがインスタンスxを
持つことになる
⇒ 矛盾、つまりオントロジの誤り
分類
クラスAが持つべきプロパティ値を、リソースxが持っている。
xはAのインスタンスだと判断できる。
reasoning support
推論の重要性
オントロジと知識の一貫性の検査
予期しないクラス関係の検査
インスタンスの自動クラス分け
OWLは記述論理の上に構築
記述論理は,推論を可能にするための述語論理
のサブセット
4.1.2 Limitations of the Expressive Power of RDF Schema
RDF/RDFSの表現力の限界
RDF/RDFSには表現できないものがある
ローカルなプロパティ
例えば、rdfs:rangeで”eats”の値域を定義した場合、それ
はすべてのクラスに適用される。
特定のクラスだけに違う値域を割り当てることができない
互いに素なクラス
RDFSではクラスの親子関係しか定義できない。
従って、互いに素なクラスが定義できない。
例) “male” ⇔ “female”
more
クラスのブーリアン結合
クラスの和、積、差を用いて新しいクラスを作りたい
出現回数の制約 - Cardinality restrictions
クラスに必要なプロパティを定義できない
例) “person” must have “parents”
特殊なプロパティ
transitive
unique
“greater than”
“is mother of”
inverse
“eats” ⇔ “is eaten by”
4.1.3 Compatibility of OWL with RDF/RDFS
OWLとRDF/RDFSの相性
理想的には
OWLはRDFSの拡張
rdfsの語彙を使用
Semantic Webケーキ的にも
残念ながら
RDFSはそれ自体の表現力が高いので、拡張してい
くと計算不可能になるかもしれない
4.1.4 Three Species of OWL
3種類のOWL
OntologyLanguageに対するすべての要求を満
たす事は不可能
→ 違った側面に応じた3つの言語を用意することで
対応。
more
OWL Full
OWLのすべてを網羅した言語
+ : RDFに対する完全な上位互換性
- : 決定可能性、計算完全性は保障されない
OWL DL – Description Logic
OWL Fullのサブセット
決定可能性、計算完全性が保障される
+ : 推論が可能
- : RDFとの完全互換性がなくなる。リソースに対して制約がある
OWL Lite
OWL DLのサブセット
言語設計向け
+ : 簡単に実装可能
- : 表現に制約がある
more more
言語設計者は必要に応じて使い分けましょう
LiteとDL
DLとFull
必要な表現力の違いで選ぶ
RDF Schemaのメタモデリングが必要か?
Fullを使う場合、推論可能性は予測できない
OWL Full ⊇ OWL DL ⊇ OWL Lite
4.2 The OWL Language
文法
RDFの文法に従う
xmlns:owl=http://www.w3.org/2002/07/owl#
RDF/RDFSの語彙を利用する
データ型にはXML Schemaを使用する
クラス
クラスはowl:Classで定義
owl:disjointWith,
owl:equivalentClassでクラス間の関係性
を記述
プロパティ
2種類のプロパティ
Object Properties
Data Type Properties
オブジェクトとオブジェクトを関連付ける
たとえばisTaughtBy, supervisesなど
オブジェクトとデータを関連付ける
XML Schema Data Typeによりデータ型を規定
プロパティ関係
owl:equivalentProperty
owl:inverseOf
プロパティ制約
クラスが持つプロパティの条件を定める
owl:Restrictionで制約を記述
owl:onPropertyで対象を示す
値に関する制約
owl:allValuesFrom=∀
owl:someValuesFrom=∃
owl:hasValue
出現回数に関する制約
owl:maxCardinality
0を指定すれば、そのプロパティは禁止されていることになる
owl:minCardinality
owl:cardinality
特殊なプロパティ
owl:TransitiveProperty
owl:SymmetricProperty
対照的
owl:FunctionalPropery
推移的
オブジェクトから値が一意に定まる
owl:InverseFunctionalPropery
値からオブジェクトが一意に定まる
その他
ブーリアン結合
owl:intersectionOf 積
owl:unionOf
和
owl:complementOf
否定
バージョン情報
owl:versionInfo
owl:backwardCompatibleWith
owl:incompatibleWith
4.2.12 Layering of OWL
OWL階層
OWL Full
正しいRDFだったら、どんな組み合わせも可能
OWL DL
OWL Lite
more
OWL DL
ヴォキャブラリの区別
明確な型
クラスであり、かつインスタンスであるようなリソースは認められない
例) C1のサブクラス C2は必ずクラスである
プロパティの区別
オブジェクトプロパティとデータ型プロパティは互いに素
owl:inverseOf, owl:FunctionalPropertyなどはデータ型プロパティ
にはなれない
推移的プロパティには回数制約はつけられない
匿名クラス制約
匿名クラスは、owl:equivalentClassかowl:disjointWithのドメ
インもしくは値域、rdfs:subClassOfの値域のみにしか現れない
more and more…
OWL Lite
owl:oneOf, owl:disjointWith,
owl:unionOf, owl:complemntOf,
owl:hasValueは許可されない
回数制約は0か1
owl:equivalentClassは匿名クラスから作られ
ない
4.5 Future Extensions
やりたいこと
オントロジのモジュール化
デフォルト値の表現
閉世界仮説
Unique-Name Assumption
Procedural Attachment
Rules for Property Chaining