首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >owlready2推理器不会使用SWRL规则生成推断的对象属性断言

owlready2推理器不会使用SWRL规则生成推断的对象属性断言
EN

Stack Overflow用户
提问于 2021-05-05 05:07:53
回答 1查看 135关注 0票数 1

假设OWL本体包含以下SWRL规则:

代码语言:javascript
复制
has_part(?x, ?y) ^ participates(?x, ?z) -> participates(?y, ?z)

和以下对象属性断言:

代码语言:javascript
复制
o1 has_part o2
o1 participates p1

当我在Protege中运行Hermit推理机时,我获得了以下推断的对象属性断言:

代码语言:javascript
复制
o2 participates p1

但是,当我用owlready2加载相同的本体并运行它的Hermit reasoner时,我没有得到任何推断的对象属性断言。例如:

代码语言:javascript
复制
from owlready2 import *

onto = get_ontology("test.owl").load()
sync_reasoner()
onto.o2.get_properties()

不返回任何属性。

我确实将本体保存为RDFXML格式,并且可以使用owlready2检索SWRL规则。

owlready2推理机不支持这种推理吗?

EN

回答 1

Stack Overflow用户

发布于 2021-05-05 05:18:52

解决方案: sync_reasoner(infer_property_values = True)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67392230

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档