protege 反身 属性 用法
protege reflexive property usage
在 protege 中,反身 属性 被分配给 所有 个人,无论 域 和 范围 和个人所属的 class。
那么这个限制有什么用呢?
P.S:假设有三个人:
NamedIndividual( :John )
NamedIndividual( :alex )
NamedIndividual( :BMW )
和一个对象属性:
ObjectProperty( :hasFriend )
ReflexiveObjectProperty(:hasFriend)
运行 pellet 推断:
BMW hasFriend BMW
这个推论在概念上毫无意义
像The even more irresistible SROIQ and Foundations of Description Logics这样的论文指出自反和非自反属性与exists r.Self
概念密切相关。 IE。 Narcissist
可以定义为 Narcissist \sqsubseteq loves.Self
.
SROIQ 论文实际上提到自反和非自反属性的主要用例是有限的,只有在与基数限制一起使用时才有意义。 IE。如果您将 PopularPerson
定义为至少有 2 个朋友的人,并且 hasFriend
是反身的,那么通过断言一个人有 1 个已知朋友将导致该人 class 化为 PopularPerson
因为这个人已经被假定为自己的朋友。
有趣的是,论文中还提到reflexive(r)
相当于将GCItop \sqsubseteq exists r.Self
添加到TBox中。就我个人而言,这更直观,并且提供了我认为您似乎想要实现的控制。特别是,这允许您将 \top
替换为您选择的任何 class。非自反属性存在类似的等价物。
在 protege 中,反身 属性 被分配给 所有 个人,无论 域 和 范围 和个人所属的 class。
那么这个限制有什么用呢?
P.S:假设有三个人:
NamedIndividual( :John )
NamedIndividual( :alex )
NamedIndividual( :BMW )
和一个对象属性:
ObjectProperty( :hasFriend )
ReflexiveObjectProperty(:hasFriend)
运行 pellet 推断:
BMW hasFriend BMW
这个推论在概念上毫无意义
像The even more irresistible SROIQ and Foundations of Description Logics这样的论文指出自反和非自反属性与exists r.Self
概念密切相关。 IE。 Narcissist
可以定义为 Narcissist \sqsubseteq loves.Self
.
SROIQ 论文实际上提到自反和非自反属性的主要用例是有限的,只有在与基数限制一起使用时才有意义。 IE。如果您将 PopularPerson
定义为至少有 2 个朋友的人,并且 hasFriend
是反身的,那么通过断言一个人有 1 个已知朋友将导致该人 class 化为 PopularPerson
因为这个人已经被假定为自己的朋友。
有趣的是,论文中还提到reflexive(r)
相当于将GCItop \sqsubseteq exists r.Self
添加到TBox中。就我个人而言,这更直观,并且提供了我认为您似乎想要实现的控制。特别是,这允许您将 \top
替换为您选择的任何 class。非自反属性存在类似的等价物。