我有一个关于如何在SWRQL中定义两个不同个体的疑问。下面是一个示例。 如果 B 是 A 的儿子; 如果 C 是 A的儿子; 那么B和C是兄弟。 以下是 SWRL 规则: isSunOf(?BB, ?AA( ^ isSunOf(?抄送, ?AA( -> isBrotherOf(?BB, ?抄送(
我在推理的结果中发现,B是B本人的兄弟。如何避免这个问题?
谢谢! 此致敬意 阳
使用differentFrom(?a, ?b)
即:
isSonOf(?a, ?c) ^ isSonOf(?b, ?c) ^ differentFrom(?a, ?b) -> isBrotherOf(?a, ?b)