SPARQL Filter not working -
SPARQL Filter not working -
i'm running next sparql query on de.dbpedia
select distinct * { { ?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} } }
for "de-results", minus-filter works fine, "en-results" i'm getting persons deathdate. can explain me why filter doesn't apply here?
thank , best regards fobi
look @ bracketting in query: minus in "right hand side" of union has service form, , minus, minus outside of service form:
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} }
that said, i'm not sure point of optionally binding death date with:
optional {?name <http://dbpedia.org/ontology/deathdate> ?deathdate}
is if you're going remove death date with:
minus {?name dbpedia-owl:deathdate ?d}
after all, dbpedia-owl: prefix defined http://dbpedia.org/ontology/.
sparql
Comments
Post a Comment