问题描述
为避免受到 domain 和 range 以及个人所属类别的束缚,所有个体都赋予了反身属性。
那么此限制的用途是什么?
P.S:可以说有三个人:
Namedindividual( :John )
Namedindividual( :alex )
Namedindividual( :BMW )
和对象属性:
ObjectProperty( :hasFriend )
ReflexiveObjectProperty(:hasFriend)
运行弹丸推断出:
BMW hasFriend BMW
这个推论在概念上是没有意义的
解决方法
The even more irresistible SROIQ 和Foundations of Description Logics之类的论文指出,自反和不自反属性与exists r.Self
概念密切相关。即Narcissist
可以定义为Narcissist \sqsubseteq loves.Self
。
SROIQ论文实际上提到自反和不自反属性的主要用例是有限的,只有与基数限制一起使用时才有意义。即如果您将PopularPerson
定义为至少有2个朋友的人,并且hasFriend
是自反的,则通过断言某人有1个已知朋友,该人将被归类为PopularPerson
,因为个人已经被假定为自己的朋友。
有趣的是,本文还提到reflexive(r)
等同于将GCI top \sqsubseteq exists r.Self
添加到TBox。就我个人而言,这更加直观,并提供了我认为您想要实现的控制。特别是,这使您可以用所选的任何类别替换\top
。对于反身性也存在类似的含义。