Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Reflexive property in protege

This is my ontology created with protege 5 .

If i make cl1 and cl2 disjoint, then the ontology is being inconsistent , but if i uncheck is_friend_of reflexive , the ontology is not inconsistent any more . whats wrong with my ontology ?

I want only cl1 class individuals have is_friend_of property.

like image 551
alex Avatar asked Nov 27 '25 23:11

alex


1 Answers

Reflexivity of :is_friend_of is essential for inconsistency.

Take a look at Reasoner > Inconsistent ontology explanation :

Inconsistency explanation

I'll try to translate this explanation into (poor) English:

  1. Since :is_friend_of is reflexive, then :c2_inst :is_friend_of :c2_inst.
  2. Since the domain of :is_friend_of is :cl1, then c2_inst rdf:type :cl1.
  3. Also, c2_inst rdf:type :cl2.
  4. But :cl1 and :cl2 are disjoint — contradiction.

In fact, the domain of every reflexive property is owl:Thing.

As a workaround, you could uncheck reflexivity of is_friend_of and define :cl1 in this way:

Class: cl1
    EquivalentTo: 
        is_friend_of some owl:Thing,
        is_friend_of some  Self 
like image 69
Stanislav Kralin Avatar answered Dec 01 '25 15:12

Stanislav Kralin



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!