SPARQL-从远程端点插入数据

SPARQL-从远程端点插入数据,sparql,jena,wikidata,fuseki,federated-queries,Sparql,Jena,Wikidata,Fuseki,Federated Queries,如何查询远程端点(如或的端点)并在本地图中插入生成的三元组?到目前为止,我知道有插入、添加、复制等命令可用于此类任务。我不明白的是如何在更新本地图时寻址远程端点。有人能提供一个最低限度的例子或主要步骤吗? 我在Windows上使用Apache Jena Fuseki v2,这是我目前的查询: PREFIX wdt: <http://www.wikidata.org/prop/direct/> PREFIX p: <http://www.wikidata.org/prop/>

如何查询远程端点(如或的端点)并在本地图中插入生成的三元组?到目前为止,我知道有插入、添加、复制等命令可用于此类任务。我不明白的是如何在更新本地图时寻址远程端点。有人能提供一个最低限度的例子或主要步骤吗? 我在Windows上使用Apache Jena Fuseki v2,这是我目前的查询:

PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX p: <http://www.wikidata.org/prop/>
PREFIX wd: <http://www.wikidata.org/entity/>

INSERT 
  { GRAPH <???> { ?s ?p ?o } } #don't know what to insert here for "GRAPH"
WHERE
  { GRAPH  <???> #don't know what to insert here for "GRAPH" either
    {                           #a working example query for wikidata:
      ?s wdt:P31 wd:Q5.         #humans
      ?s wdt:P54 wd:Q43310.     #germans
      ?s wdt:P1344 wd:Q79859.   #part of world cup 2014
      ?s ?p ?o.
    }
  }
我要查询的本地端点是http://localhost:3030/mylocaldb/update. 我已经读到,编辑数据库需要/update,但我不确定我是否正确理解了这一点。 到目前为止,我的方法正确吗?还是需要SPARQL之外的其他脚本编写功能?

摘自:

语法是

( WITH  IRIref )?
INSERT  QuadPattern 
( USING ( NAMED )?  IRIref )*
WHERE GroupGraphPattern
如果插入模板指定了图形块,则这些图形将受到影响。否则,该操作将应用于默认图形,或分别应用于WITH子句中指定的图形(如果已指定)。如果不存在USING命名子句,则WHERE子句中的模式将与图形存储匹配,否则与USING命名子句指定的数据集匹配。WHERE子句的匹配将创建要应用于模板的绑定,以根据与DELETE/INSERT相同的规则确定要插入的三元组

因此,这基本上意味着,如果要将图形定义存储在默认图形中,可以从插入部分中省略图形定义,否则它将是要存储数据的图形

关于WHERE子句,通常必须在此处使用SERVICE关键字在Wikidata端点上应用联合查询:

前缀wdt: 前缀p: 前缀wd: 插入 {?s?p?o} 哪里 {服务 {wikidata的工作示例查询: ?s wdt:P31 wd:Q5.人类 ?南区wdt:P54 wd:Q43310。德国 ?s wdt:P1344 wd:Q79859。2014年世界杯的一部分 s?p?o。 } } 我用ApacheJena测试了它,它将4462个三元组插入到我的本地数据集中。

取自:

语法是

( WITH  IRIref )?
INSERT  QuadPattern 
( USING ( NAMED )?  IRIref )*
WHERE GroupGraphPattern
如果插入模板指定了图形块,则这些图形将受到影响。否则,该操作将应用于默认图形,或分别应用于WITH子句中指定的图形(如果已指定)。如果不存在USING命名子句,则WHERE子句中的模式将与图形存储匹配,否则与USING命名子句指定的数据集匹配。WHERE子句的匹配将创建要应用于模板的绑定,以根据与DELETE/INSERT相同的规则确定要插入的三元组

因此,这基本上意味着,如果要将图形定义存储在默认图形中,可以从插入部分中省略图形定义,否则它将是要存储数据的图形

关于WHERE子句,通常必须在此处使用SERVICE关键字在Wikidata端点上应用联合查询:

前缀wdt: 前缀p: 前缀wd: 插入 {?s?p?o} 哪里 {服务 {wikidata的工作示例查询: ?s wdt:P31 wd:Q5.人类 ?南区wdt:P54 wd:Q43310。德国 ?s wdt:P1344 wd:Q79859。2014年世界杯的一部分 s?p?o。 } } 我用ApacheJena测试了它,它将4462个三元组插入到我的本地数据集中