Hi,
i'm not sure whether it is a bug, but i hope you can explain me the
behaviour. To me it sounds like the following 2 queries should return
the same result:
Query 1:
SELECT DISTINCT ?x0 WHERE{
?x0 <http://dbpedia.org/ontology/position> ?x7.
?x0 <http://purl.org/dc/terms/subject>
<http://dbpedia.org/resource/Category:Premier_League_clubs>.
?x0 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
<http://dbpedia.org/class/yago/PremierLeagueClubs>.
FILTER(
(!bif:exists((
SELECT * WHERE {?x0 <http://dbpedia.org/property/league> ?x8.}
)))
)
} LIMIT 10
Query 2:
SELECT DISTINCT ?x0 WHERE{
?x0 <http://dbpedia.org/ontology/position> ?x7.
?x0 <http://purl.org/dc/terms/subject>
<http://dbpedia.org/resource/Category:Premier_League_clubs>.
?x0 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
<http://dbpedia.org/class/yago/PremierLeagueClubs>.
?x0 <http://dbpedia.org/property/league> ?x8.
FILTER(!BOUND(?x8))
} LIMIT 10
When i execute this queries on http://dbpedia.org/sparql i get 1 result
for query 1, but no result for query 2. Is this correct?
There is also a difference in the results when i compare query 1 with
another query 3 on http://live.dbpedia.org/sparql , because executing
query 1 returns no result, but if i change the order of the triple pattern,
then i get some result.
Query 3:
SELECT DISTINCT ?x0 WHERE{
?x0 <http://purl.org/dc/terms/subject>
<http://dbpedia.org/resource/Category:Premier_League_clubs>.
?x0 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
<http://dbpedia.org/class/yago/PremierLeagueClubs>.
?x0 <http://dbpedia.org/ontology/position> ?x7.
FILTER(
(!bif:exists((
SELECT * WHERE {?x0 <http://dbpedia.org/property/league> ?x8.}
)))
)
} LIMIT 10
By the way, on http://live.dbpedia.org/sparql query 2 and 3 return also
not the same result.
Maybe one of the developers can explain this all to me. Thanks in advance.
Regards,
Lorenz