[英]Federated SPARQL Query on a subgraph of a SPARQL endpoint
我想问一下,如何对SPARQL端点(而不是整个远程SPARQL端点)的子图进行联合SPARQL查询。
我在Virtuoso v7中获得了数据,而SPARQL端点是“ http:// localhost:8890 / sparql ”,我想对该端点的子图进行远程查询,即“ http:// localhost:8890 / TC ”,而我尝试了
SELECT *
WHERE
{ SERVICE <http://localhost:8890/sparql>
{ SELECT ?subject ?predicate ?object
FROM <http://localhost:8890/TC>
WHERE
{ ?subject ?predicate ?object }
}
} LIMIT 50
而且我收到错误消息“ FROM”没有正确使用,所以我有两个问题:
1)我可以对SPARQL端点的子图进行远程查询吗?
2)我可以在Virtuoso v7中为每个图形使用SPARQL端点吗?
非常感谢你的帮助。
您可以使用图形代替from。
在您的示例中:
SELECT *
WHERE
{
SERVICE <http://localhost:8890/sparql>
{
SELECT ?subject ?predicate ?object
WHERE
{ graph <http://localhost:8890/TC> { ?subject ?predicate ?object } }
}
} LIMIT 50
在与dbpedia(Virtuoso)联合时,我在Uniprot SPARQL端点(Virtuoso)中使用以下查询测试了此语法:
SELECT *
WHERE
{ SERVICE <http://dbpedia.org/sparql>
{select distinct ?activity where { graph <http://dbpedia.org> {?activity a <http://www.ontologydesignpatterns.org/ont/d0.owl#Activity>} } LIMIT 10
}
} LIMIT 50
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.