在OWL本体论中,给出了一个班级Student
;我想定义另一个班级StudentsPair
,这是一对学生,以这种方式自动计算Student
的所有可能的双重组合,即
Student(x) and Student (y) --> StudentsPair(x,y)
我希望StudentsPair
作为一个类,而不是一个属性,因为它可能有其他功能(例如averagePerformanceForPair
等)。
例如,
前提
Student(John)
Student(Alex)
Student(Mary)
-----------------
结论
StudentPair((John, Alex))
StudentPair((John, Mary))
StudentPair((Alex, Mary))
推理者必须以某种方式创造这些新人!这可能吗?
答案 0 :(得分:2)
您需要一个额外的角色student
,然后您可以使用描述逻辑规则,这可能会起作用:
Student ≡ ∃student.Self
student ◦ U ◦ student ⊑ StudentPair