2

In protege a reflexive property is assigned to all individuals relgardless of domain and range and the class to which individuals belongs.
so what is the use of this restriction?

P.S: lets say there is three individuals:

NamedIndividual( :John )
NamedIndividual( :alex )
NamedIndividual( :BMW )

and an object proeprty:

 ObjectProperty( :hasFriend ) 
 ReflexiveObjectProperty(:hasFriend)

running pellet deduce that :

BMW hasFriend BMW

This inference is conceptually meaningless

Henriette Harmse
  • 4,167
  • 1
  • 13
  • 22
alex
  • 7,551
  • 13
  • 48
  • 80
  • Reflexive restrictions apply only to object properties. Reflexive restrictions do not apply to individuals directly. For that reason your question does not make sense to me. Can you expand your question with a minimal complete example please? – Henriette Harmse Nov 06 '20 at 09:43
  • @HenrietteHarmse that's not correct. Reflexive properties are a global characteristic and do hold for all individuals. The point here is, he doesn't know why to use it. Obviously `hasFriend` is a bad example, some people do use `partOf` to model a mereological relation for example. Indeed there is room for discussion – UninformedUser Nov 06 '20 at 10:06
  • @amin @UninformedUser My point is that for `hasFriend` the reflexive restriction has to be set in order to have an effect on individuals. Reflexive restrictions are set on properties, not individuals. However, once set they have an effect on the inferences regarding individuals. However, @UninformedUser, your clarification of the question is helpful. – Henriette Harmse Nov 06 '20 at 12:14
  • @HenrietteHarmse what do you mean by :`Reflexive restrictions are set on properties, not individuals`. would you please provide an example? I need to know when i should/should'nt use `reflexive` restriction in my ontology – alex Nov 06 '20 at 12:40
  • @amin Edited your question to add `ReflexiveObjectProperty(:hasFriend)`. Without adding this restriction to `hasFriend` it will NOT infer `BMW hasFriend BMW`, for example. – Henriette Harmse Nov 06 '20 at 12:59

1 Answers1

1

Papers like The even more irresistible SROIQ and Foundations of Description Logics point out that reflexive and irreflexive properties are closely related to the exists r.Self concept. I.e. Narcissist can be defined as Narcissist \sqsubseteq loves.Self.

The SROIQ paper actually mentions that the main use cases for reflexive and irreflexive properties are limited and only make sense when used along with cardinality restrictions. I.e. if you define PopularPerson as someone with at least 2 friends, and hasFriend is reflexive, then by asserting an individual has 1 known friend will result in that individual being classified as a PopularPerson because the individual is already assumed to be its own friend.

Interestingly, the paper also mentions that reflexive(r) is equivalent to adding the GCI top \sqsubseteq exists r.Self to the TBox. Personally for me this is more intuitive and provides the control I think you seem to want to achieve. In particular this allows you to replace \top with whatever class of your choice. A similar equivalent exists for irreflexive properties.

Henriette Harmse
  • 4,167
  • 1
  • 13
  • 22
  • @Henirette Harmse thanks. What I do not understand is that reflexive restriction is attached to **ALL** individuals defined in the ontology after running the pellet/hermit reasoner, that is, without me having control over it, and this I think makes this property unusable. – alex Nov 10 '20 at 05:59
  • @amin Updated answer to explain how you can possibly gain the control you want. – Henriette Harmse Nov 10 '20 at 11:30
  • you mean use `self` instead of `reflexive` restriction to provide the control – alex Nov 10 '20 at 22:47
  • Yes, if `reflexive` is not working for your use case, then use axioms based on `Self` to provide greater control. – Henriette Harmse Nov 11 '20 at 08:44