我想知道属于 A 类的个人是否与 B 类的所有个人至少有一种关系。
我很难找到一个合适的表达式来提供我想要的 DL 查询结果。对于以下示例:
Classs: Course {CourseA, CourseB, CourseC, CourseD}
Class: Program {UG_CE, G_CE}
Class: Student {John}
ObjectProperty: is-PartOf (Course,Program)
ObjectProperty: hasEnrolledIn (Student, Course)
对于个人:CourseA 和 CourseB,我断言该属性:
is-PartOf UG_CE
对于个体 John,断言了以下 3 个属性:
hasEnrolledIn CourseA
hasEnrolledIn CourseB
hasEnrolledIn CourseC
我还添加到个人类型
hasEnrolledIn only ({CourseA , CourseB , CourseC})
解决 OWA 问题。
我想知道 John 是否已注册 UG_CE 所需的所有课程,请注意 John 已注册所有课程和附加课程。
调用推理器后,以下查询不会给我想要的结果:
Student that hasEnrolledIn only (is-PartOf value UG_CE)
由于“仅”仅限于定义关系的确切数量,因此它不符合预期目的。另外,我不能使用 Max 或 Min,因为课程的数量是推断出来的,并且事先不知道。
另一种方法可以解决我的问题吗?