2017-06-29 13 views
2

Thisは、プロテジェ5で作成された私のオントロジーです。プロテクティブの再帰的性質

私はcl1cl2互いに素を作る場合は、オントロジーが矛盾しているが、私はis_friend_ofが再帰チェックを外した場合、オントロジーはもはや矛盾するものではありません。私のオントロジで何が間違っていますか?

cl1クラスの個人にはis_friend_ofというプロパティが必要です。

答えて

5

:is_friend_ofの再帰性は、不一致のために不可欠です。

のReasoner>矛盾したオントロジーの説明を見てみましょう:

Inconsistency explanation

私は(貧しい)英語にこの説明を翻訳してみましょう:

  1. :is_friend_ofが反射的であるので、 :c2_inst :is_friend_of :c2_inst
  2. :is_friend_ofのドメインは:cl1であるため、c2_inst rdf:type :cl1です。また、c2_inst rdf:type :cl2
  3. しかし、:cl1:cl2は、互いに矛盾しています。

は実際には、すべての反射的性質のドメインがowl:Thingです。

回避策として、あなたはis_friend_ofの再帰性のチェックを外すことができ、このように:cl1を定義します。

Class: cl1 
    EquivalentTo: 
     is_friend_of some owl:Thing, 
     is_friend_of some Self 
+0

おかげで、あなたが言った '実際には、すべての反射的性質のドメインはフクロウです:Thing'。どうして ?なぜ私は他のプロパティのために行うように、ただ一つの定義されたクラスに反射的なプロパティドメインを制限できないのですか? – alex

+3

反射性はグローバルプロパティであり、すべての個人に影響します。あなたがローカルの反射性を望むなら、答えに示唆されるように 'Self'を使います。 –

+1

@alex [このスレッド](https://mailman.stanford.edu/pipermail/protege-owl/2011-June/016877.html)を参照してください。さらに、 'is_friend_of'の代わりに' has_friend'などを使用してください。理解しやすくなります。ところで、[逆オブジェクトのプロパティ](https://www.w3.org/TR/2012/REC-owl2-syntax-20121211/#Inverse_Object_Properties_2)があります。 –