如何解决owlready2 推理器不生成具有 SWRL 规则的推断对象属性断言
假设一个 OWL 本体包含以下 SWRL 规则:
has_part(?x,?y) ^ participates(?x,?z) -> participates(?y,?z)
以及以下对象属性断言:
o1 has_part o2
o1 participates p1
当我在 Protege 中运行 Hermit 推理器时,我获得以下推断对象属性断言:
o2 participates p1
但是,当我使用 owlready2 加载相同的本体并运行其 Hermit 推理器时,我没有得到任何推断对象属性断言。例如:
from owlready2 import *
onto = get_ontology("test.owl").load()
sync_reasoner()
onto.o2.get_properties()
不返回任何属性。
我确实以 RDFXML 格式保存了本体,并且可以使用 owlready2 检索 SWRL 规则。
owlready2 reasoner 不支持这种推断吗?
解决方法
解决方案:sync_reasoner(infer_property_values = True)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。