我刚刚开始使用triple store RDF4J (我使用的是它的工作台,2.3.1版,运行在带有Tomcat9.0的Windows10上)
我想使用RDF4J中的旋转规则。因此,我创建了一个新的存储库(在支持RDFS+SPIN的内存中)。
我想从RDF4J documentation concerning how to add SPIN rules中的SPIN示例开始。也就是说,我添加了数据(在海龟中,并导入到RDF4J)
@prefix ex: <http://example.org/>.
ex:John a ex:Father ;
ex:parentOf ex:Lucy .
ex:Lucy a ex:Person .规则是:
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
@prefix sp: <http://spinrdf.org/sp#>.
@prefix spin: <http://spinrdf.org/spin#>.
@prefix ex: <http://example.org/>.
ex:Person a rdfs:Class ;
spin:rule [
a sp:Construct ;
sp:text """PREFIX ex: <http://example.org/>
CONSTRUCT { ?this ex:childOf ?parent . }
WHERE { ?parent ex:parentOf ?this . }"""
] .按照文档中的说明,我公开了查询(选中了“包含推断语句”复选框),
PREFIX ex: <http://example.org/>
SELECT ?child
WHERE { ?child ex:childOf ?parent }但是,没有返回结果:

有人能告诉我,我做错了什么吗?为什么旋转规则在我的RDF4J工作台上不起作用?我是不是错过了什么?
发布于 2018-05-03 16:00:18
(转发我的评论作为对未来读者的回答)
我认为,自旋推理器目前假设所有数据都在默认上下文中。确保您的数据未添加到命名图中。
https://stackoverflow.com/questions/49834717
复制相似问题