使用 ontology 的领域建模,一个特例

Domain modeling using ontology, a special case

使用描述逻辑(和相应的OWL-DL)考虑我们有classMeeting,可以由classProfessor参与,所以那:

couldBeAttendedBy domain Meeting
couldBeAttendedBy range Professor

并认为 Professor 可能是另一个 ProfessorAssistant:

assistantOf domain Professor
assistantOf range Professor

问题: 我如何-使用术语框公理 (TBox)- 声明,如果 Meeting couldBeAttendedBy Professor,然后 couldBeAttendedBy 他的任何人 Assistants

例如,考虑:

Meeting(m)
Professor(f)
m couldBeAttendedBy f
as assistantOf f

我想得出结论

m couldBeAttendedBy as

您需要创建一个 属性 链,给出 couldBeAttendedBy 的定义以适应您的规则。

例如,如果您使用 Protégé,则需要为 couldBeAttendedBy 定义以下内容:

couldBeAttendedBy o inverse (assistantOf)

在 (Chain) 的超级属性中,将显示为

couldBeAttendedBy o inverse (assistantOf) SubPropertyOf couldBeAttendedBy

这个案例很简单,正是 属性 链条的用途。但如果链条变得更加复杂,它们可能会变得不可判定。例如,在 S1 º S2 º S3 º ... º Sn ⊑ R 中,R 只能位于表达式左侧的第一个或最后一个位置。否则无法判定。这是对常规 RBoxes 的限制之一。并且 属性 链,或更正式的 "General Role Inclusion" 只能在应用于常规 RBoxes 时才可确定。