我正在寻找一种在传递SPARQL查询中返回父级和子级的方法,以及仅构成路径的关系。
以下查询返回导致http://example.com/child的父对象和中间对象对,但如果任何?父对象有其他包含语句,那么也会返回这些对象。这可以产生非常大的结果集。
PREFIX ex: <http://example.com/>
SELECT ?parent ?child
WHERE {
?parent ex:contains+ <http://example.com/child> .
?parent ex:contains ?child
}
是否有办法将传递查询中的终端对象绑定到特定资源,并且还返回每个关系中的对象,但不是所有其他ex:包含每个父关系的关系?
例如,使用以下图表:
ex:root ex:contains ex:rootchild1
ex:root ex:contains ex:rootchild2
ex:rootchild1 ex:contains ex:intermed
ex:intermed ex:contains ex:child
结果将是:
ex:root ex:rootchild1
ex:rootchild1 ex:intermed
ex:intermed ex:child
我正在与Jena和Fuseki一起运行此查询。谢谢!