我可以在SPARQL查询中组合本地和远程数据集吗?

And*_*cko 6 database w3c rdf sparql

我一直在阅读有关SPARQL和RDF的内容,如果我对这些技术的推理错误,请纠正我.

假设我们有一个名为LOCAL的本地SPARQL数据库..以及名为URL_RDF的远程RDF文件的url.我可以写一个脚本,让我们说在PHP中会执行这样的SPARQL查询吗?

伪代码.

SELECT * FROM LOCAL,URL_RDF WHERE LOCAL.id=URL_RDF.id
Run Code Online (Sandbox Code Playgroud)

换句话说,我可以在SPARQL查询中组合这样的源(远程文件+本地数据库)吗?

Jan*_*Jan 7

您可以使用SPARQL 1.1中的联合功能执行此操作.这些在http://www.w3.org/TR/sparql11-federated-query中有描述,但为了让您快速了解它的外观,您的示例查询将是这样的(仍然是伪代码):

SELECT * WHERE {
  # the local part of the query
  ?s ?p ?id

  SERVICE <http://url/to/remote/data> {
    # The remote part of the query
    ?x ?y ?id
  }
}
Run Code Online (Sandbox Code Playgroud)

请注意,URL必须指向SPARQL端点,即可以响应SPARQL查询的服务器,而不仅仅是远程RDF文件.