Sparql 查询可以在wikidata查询服务上工作,但不能在ApacheJena副本上工作
下面的问题是我的问题的答案。当在Wikidata查询服务上使用时,它将根据需要显示澳大利亚->澳大利亚和奥地利->澳大利亚等国家的简称。基于ApacheJena Fuseki在上运行相同的查询,shortName列保持为空,请参见下面的屏幕截图 差异的原因是什么?如何修改查询以使其也能与ApacheJena Fuseki一起工作Sparql 查询可以在wikidata查询服务上工作,但不能在ApacheJena副本上工作,sparql,jena,wikidata,fuseki,Sparql,Jena,Wikidata,Fuseki,下面的问题是我的问题的答案。当在Wikidata查询服务上使用时,它将根据需要显示澳大利亚->澳大利亚和奥地利->澳大利亚等国家的简称。基于ApacheJena Fuseki在上运行相同的查询,shortName列保持为空,请参见下面的屏幕截图 差异的原因是什么?如何修改查询以使其也能与ApacheJena Fuseki一起工作 @未格式化用户的测试查询: PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX wd:
@未格式化用户的测试查询:
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX wd: <http://www.wikidata.org/entity/>
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX wikibase: <http://wikiba.se/ontology#>
PREFIX p: <http://www.wikidata.org/prop/>
PREFIX ps: <http://www.wikidata.org/prop/statement/>
PREFIX pq: <http://www.wikidata.org/prop/qualifier/>
SELECT ?country ?shortNameStmt ?shortName WHERE
{
VALUES ?country {wd:Q40} ?country wdt:P31 wd:Q3624078.
OPTIONAL {
?country p:P1813 ?shortNameStmt.
?shortNameStmt ps:P1813 ?shortName filter (lang(?shortName) = "en")
filter not exists {?shortNameStmt pq:P31 wd:Q28840786}
}
}
在处理最新的all导入时,未给出基于truthy的wikidata导入的结果。对于完整查询也是如此。尽管如此,了解查询为什么不能与truthy数据集一起工作还是很好的。您可以运行以下查询以查看是否存在以下语句SELECT?country?SHORTNAMETMT?shortName WHERE{VALUES?country{wd:Q40}?country wd:P31 wd:Q3624078。可选{国家/地区p:P1813?shortNameStmt。?shortNameStmt ps:P1813?shortName筛选器语言?shortName=en筛选器不存在{?shortNameStmt pq:P31 wd:Q28840786}}}-变量shortNameStmt应具有一个绑定
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX wd: <http://www.wikidata.org/entity/>
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX wikibase: <http://wikiba.se/ontology#>
PREFIX p: <http://www.wikidata.org/prop/>
PREFIX ps: <http://www.wikidata.org/prop/statement/>
PREFIX pq: <http://www.wikidata.org/prop/qualifier/>
SELECT ?country ?shortNameStmt ?shortName WHERE
{
VALUES ?country {wd:Q40} ?country wdt:P31 wd:Q3624078.
OPTIONAL {
?country p:P1813 ?shortNameStmt.
?shortNameStmt ps:P1813 ?shortName filter (lang(?shortName) = "en")
filter not exists {?shortNameStmt pq:P31 wd:Q28840786}
}
}