【发布时间】:2014-03-03 11:31:54
【问题描述】:
我正在 TopBraidComposer 中构建一个本体,它有一个类层次结构和几个单独工作的规则。在我的本体中,我在类级别上工作,所以我创建的所有定义都只与类有关,而不是与个人相关。现在我想推断像这样的子类定义:
我尝试了以下 SPARQL 查询,似乎可以完成这项工作:
然后我将上述查询作为 SPIN 规则添加到 owl:Thing 类中,如下所示:
回车后自动转换成如下形式:
看起来很合理,但是当我现在开始推理过程时,它不再像我添加测试规则之前那样终止。当我强制停止推理时,我可以看到所需的三元组已多次添加到 Test 类中。
如何在 SPIN 中推断匿名超类?
编辑:
一种解决方法是将限制绑定到类。然后逻辑似乎有效,但它不像匿名超类那样显示出来;在 TBC 和 Protege 中都没有。
【问题讨论】:
-
标签“spin”与“SPIN: A Formal Methods Technology”相关。这似乎不是您对 SPIN 的使用。如果没有,请删除标签。
标签: sparql rule inference inference-engine spin-rdf