OWLガイド読了
OWLウェブ・オントロジー言語ガイドを読んだ.
前エントリで引用したRDFスキーマでできないことは,OWLの語彙で全て実現可能.
OWLガイドの簡単なまとめ
- クラスの定義
- owl:Class語彙でクラスを定義
- すべての個体はowl:Thingのメンバ
- owl:Class語彙でクラスを定義
- プロパティの定義
- プロパティの性質を定義
- owl:TransitiveProperty語彙で推移的であると定義(P(x,y) and P(y,z) implies P(x,z))
- owl:SymmetricProperty語彙で対称的であると定義(P(x,y) iff P(y,x))
- owl:FunctionalProperty語彙で関数型であると定義(P(x,y) and P(x,z) implies y = z)
- owl:inverseOf語彙で逆関係であると定義(P1(x,y) iff P2(y,x))
- owl:InverseFunctionalProperty語彙で逆関数型であると定義(P(y,x) and P(z,x) implies y = z)
- プロパティの制約を定義
- owl:allValuesFrom, owl:someValuesFrom語彙で値の制約を定義
- プロパティの定義域,値域とは異なり,あるクラスにおけるプロパティの値の制約
- 例.WineクラスのhasMakerプロパティの値は,Wineryクラスである
- 一方で,CarクラスのhasMakerプロパティの値は,Companyクラスである
- プロパティの定義域,値域とは異なり,あるクラスにおけるプロパティの値の制約
- owl:cardinality語彙でカーディナリティー制約を定義
- あるクラスのあるプロパティの数の制約
- 例.Wineクラスは,必ず1つのhasMakerを持つ
- owl:minCardinality, owl:maxCardinality語彙でカーディナリティーの範囲を定義できる
- あるクラスのあるプロパティの数の制約
- owl:hasValue語彙で特定のプロパティ値を定義
- owl:allValuesFrom, owl:someValuesFrom語彙で値の制約を定義
- オントロジーのマッピング
- owl:equivalentClass語彙で2つのクラスが等価であることを定義
- 2つのクラスが等価であるとき,それぞれのクラスは,全く同じインスタンスを持つ(集合の等価性)
- owl:equivalentProperty語彙で2つのプロパティが等価であることを定義
- owl:sameAs語彙で2つの個体が同一であることを定義
- 2つの個体が同一であることは,owl:FunctionalPropertyから推論可能
- owl:differentFrom語彙で2つの個体が互いに素であることを定義
- owl:AllDifferent語彙でコレクションの要素が互いに素であることを定義
- owl:equivalentClass語彙で2つのクラスが等価であることを定義
- 複合クラスの定義
- owl:intersectionOf語彙で積集合を用いてクラスを定義
- 例.WhiteWineクラスは,WineクラスとhasColorプロパティがWhiteであるクラスの積集合である
- owl:unionOf語彙で和集合を用いてクラスを定義
- 例.Fruitクラスは,SweetFruitクラスとNonSweetFruitクラスの和集合である
- owl:complementOf語彙で補集合を用いてクラスを定義
- あるクラスの補集合は,owl:Thingとあるクラスの差集合
- 通常,非常に大きな集合を表す
- owl:oneOf語彙でクラスのメンバをすべて列挙する
- 例.WhineColorクラスのインスタンスは,White/Red/Roseのいずれか(それ以外の色はない)
- owl:disjointWith語彙で2つのクラスが互いに素であることを定義
- owl:intersectionOf語彙で積集合を用いてクラスを定義
- バージョン付け
- owl:priorVersion語彙で以前のバージョンへのリンクを作成
- owl:backwardCompatibleWith,owl:incompatibleWith語彙で互換性を定義
- owl:DeprecatedClass,owl:DeprecatedProperty語彙で互換性がなくなる可能性を示唆