在我的数据中有两个三元组:
entity1 doA entity2 .
entity2 doB entity3 .
我正在寻找一种方法来推断以下三元组,并将其返回到我的SPARQL查询结果中(例如,select ?a ?c {?a doC ?c)
):
entity1 doC entity3 .
基本上,我想说:
如果(?a doA?b)和(?b doB?c),则(?a doC?c)
注意,我正在寻找一个可以使用AGWebView接口完全实现的解决方案。
如果AllegroGraph支持SPARQL 1.1m,那么您可以尝试:
INSERT {?a <doC> ?c}
WHERE {
?a <doA> ?b .
?b <doB> ?c .
}
这将插入到默认图形中,不管它是如何定义的。要指向特定的图,请在插入中添加graph语句:
INSERT { GRAPH <graph-uri> {
?a <doC> ?c}
}
...