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
© Copyright 2024 ExpyDoc