SPARQL 过滤器不工作
SPARQL Filter not working
我 运行 de.dbpedia
上的以下 SPARQL 查询
SELECT distinct *
WHERE {
{
?name dcterms:subject category-de:Haus_Liechtenstein.
?name rdf:type foaf:Person.
Optional {?name <http://de.dbpedia.org/ontology/deathDate> ?deathDate}
MINUS {?name dbpedia-owl:deathDate ?d}
}
union{
SERVICE silent <http://dbpedia.org/sparql>{
?name dcterms:subject category-en:Princely_Family_of_Liechtenstein.
?name rdf:type foaf:Person.
Optional {?name <http://dbpedia.org/ontology/deathDate> ?deathDate}
}
MINUS {?name dbpedia-owl:deathDate ?d}
}
}
对于 "DE-Results",MINUS 过滤器工作正常,但对于 "EN-Results",我也得到了死亡日期的人。谁能解释一下为什么这个过滤器在这里不适用?
查看查询中的括号:union 的 "right hand side" 中的 minus 有一个 service 形式,和 minus,但是 minus 是 outside 服务形式:
union{
SERVICE silent <http://dbpedia.org/sparql>{
?name dcterms:subject category-en:Princely_Family_of_Liechtenstein.
?name rdf:type foaf:Person.
Optional {?name <http://dbpedia.org/ontology/deathDate> ?deathDate}
}
MINUS {?name dbpedia-owl:deathDate ?d}
}
也就是说,我不确定将死亡日期选择性地绑定到:
Optional {?name <http://dbpedia.org/ontology/deathDate> ?deathDate}
如果您只是要删除死亡日期为:
的任何人
MINUS {?name dbpedia-owl:deathDate ?d}
毕竟,dbpedia-owl:通常是定义为http://dbpedia.org/ontology/[的前缀=30=].
我 运行 de.dbpedia
上的以下 SPARQL 查询SELECT distinct *
WHERE {
{
?name dcterms:subject category-de:Haus_Liechtenstein.
?name rdf:type foaf:Person.
Optional {?name <http://de.dbpedia.org/ontology/deathDate> ?deathDate}
MINUS {?name dbpedia-owl:deathDate ?d}
}
union{
SERVICE silent <http://dbpedia.org/sparql>{
?name dcterms:subject category-en:Princely_Family_of_Liechtenstein.
?name rdf:type foaf:Person.
Optional {?name <http://dbpedia.org/ontology/deathDate> ?deathDate}
}
MINUS {?name dbpedia-owl:deathDate ?d}
}
}
对于 "DE-Results",MINUS 过滤器工作正常,但对于 "EN-Results",我也得到了死亡日期的人。谁能解释一下为什么这个过滤器在这里不适用?
查看查询中的括号:union 的 "right hand side" 中的 minus 有一个 service 形式,和 minus,但是 minus 是 outside 服务形式:
union{
SERVICE silent <http://dbpedia.org/sparql>{
?name dcterms:subject category-en:Princely_Family_of_Liechtenstein.
?name rdf:type foaf:Person.
Optional {?name <http://dbpedia.org/ontology/deathDate> ?deathDate}
}
MINUS {?name dbpedia-owl:deathDate ?d}
}
也就是说,我不确定将死亡日期选择性地绑定到:
Optional {?name <http://dbpedia.org/ontology/deathDate> ?deathDate}
如果您只是要删除死亡日期为:
的任何人MINUS {?name dbpedia-owl:deathDate ?d}
毕竟,dbpedia-owl:通常是定义为http://dbpedia.org/ontology/[的前缀=30=].