类表达式的含义在OWL 2 Web Ontology Language Direct Semantics W3C 推荐的2.2.3 Class Expressions 部分定义。
问题中给出的四个类表达式的格式不太好,因为我理解曼彻斯特 OWL 语法,因为 hasChild (A or/and B) 确实需要是 hasChild some/only (A or/and B)。也就是说,我们仍然可以讨论各种组合的含义。
确切的基数限制
限制hasChild exactly 1 Thing 和hasChild exactly 2 Thing 分别表示通过hasChild 属性与一个或两个其他个体完全相关的个体类别。由于限制中的类表达式为Thing,因此可能更常见的是没有类的版本:hasChild exactly 1 和hasChild exactly 2。
通用或 AllValuesFrom 限制
表达式hasChild only X 表示个体类别,如果他们通过hasChild 属性与任何其他个体相关,则另一个个体是X 的实例。它没有施加任何限制有这样的人,而只是如果有任何人,那么他们必须是Xs。
Existential 或 SomeValuesFrom 限制
表达式hasChild some X 表示通过hasChild 属性与至少另一个属于X 的个体相关的个体类别。它没有施加任何限制,即与hasChild 相关的每个其他个人都是X,至少有一个是。
表达式的含义
问题中的类表达式目前格式不正确,应该是hasChild some (A or/and B) 或hasChild only (A or/and B)。这意味着有许多案例需要考虑,但幸运的是其中一些案例浓缩了下来。
如果 A 和 B 等价
如果A 和B 等价,则(A or B) 和(A and B) 都等价于A 和B。这意味着问题中的表达式可以简化为两种情况,取决于左侧的限制应该是some还是only。
(hasChild some A) and (hasChild exactly 1 Thing)
该类表达式表示通过hasChild 属性与至少一个A 类型的个体相关联的个体类,并且是通过hasChild 属性与另一个人完全相关(在左侧,该人必须是A 类型的那个人)。
(hasChild some A) and (hasChild exactly 2 Thing)
这个类表达式表示通过hasChild 属性与至少一个A 类型的个体相关联的个体类,并且是通过hasChild 属性恰好与两个人相关(在左侧,其中一个人必须是A 类型的人)。
(hasChild only A) and (hasChild exactly 1 Thing)
这个类表达式表示通过hasChild 属性仅与A 类型的个体相关的个体类,并且通过@ 与另一个个体完全相关987654362@ 属性(在左侧,一个人必须是A 类型)。
(hasChild only A) and (hasChild exactly 2 Thing)
这个类表达式表示通过hasChild 属性与A 类型的某个个体相关联的个体类,并且通过@987654367 与两个个体相关联@ 属性(在左侧,这两个人都必须是 A 类型的人)。
如果 A 和 B 不相交
如果A 和B 不相交,则类表达式A and B 表示空类,因为没有任何东西可以同时是A 和B。这意味着其中四个案例无法满足。
涉及hasChild some (A and B) 的案例无法令人满意,因为没有任何相关的A and Bs。有两种这样的情况:
(hasChild some (A and B)) and (hasChild exactly 1 Thing)
(hasChild some (A and B)) and (hasChild exactly 2 Thing)
only (A and B) 和 exactly n 的组合是不能满足的,因为(只要n 不为 0),它表示一个人必须与 n 事物完全相关,并且每个 @ 987654381@的东西必须是A and B(其中不可能没有。这样的情况有两种:
(hasChild only (A and B)) and (hasChild exactly 1 Thing)
(hasChild only (A and B)) and (hasChild exactly 2 Thing)
考虑到some 和only 的含义,其余情况都相当简单。虽然有四个类表达式,但只有两个不同的类。
(hasChild only (A or B)) and (hasChild exactly 1 Thing)
(hasChild some (A or B)) and (hasChild exactly 1 Thing)
这是一类只有一个孩子的事物,必须是A 或B。
(hasChild only (A or B)) and (hasChild exactly 2 Thing)
(hasChild some (A or B)) and (hasChild exactly 2 Thing)
这类事物恰好有两个孩子,每个孩子都必须是A 或B。