Hi,

I noticed the following issue on the DBpedia endpoint and the LOD cache 
(http://dbpedia.org/sparql, http://lod.openlinksw.com/sparql):
I did not have time to try it against a develop7 git branch.

The following query works as expected and returns fast: It apparently scans the 
approx. 600 classes and filters them by their label matching the regex:

Select ?x {
   ?x <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> 
<http://www.w3.org/2002/07/owl#Class> .
   ?x <http://www.w3.org/2000/01/rdf-schema#label> ?v_3 .
   Filter(regex(?v_3, "airport", "i")) .
   Filter(langMatches(lang(?v_3), "en")) .
}  Limit 10



The following query takes very long to complete. Apparently the query planner 
decides to start with bif:contains, thereby scanning all instances that have 
'airport' in their name - which is a much larger set than filtering just by the 
classes first:

Select ?x {
   ?x <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> 
<http://www.w3.org/2002/07/owl#Class> .
   ?x <http://www.w3.org/2000/01/rdf-schema#label> ?v_3 .
   Filter(<bif:contains>(?v_3, "airport")) .
   Filter(langMatches(lang(?v_3), "en")) .
}  Limit 10

I am wordering if there are already planned enhancements for this issue.


Cheers,
Claus

-- 
Dipl. Inf. Claus Stadler
Department of Computer Science, University of Leipzig
Research Group: http://aksw.org/
Workpage & WebID: http://aksw.org/ClausStadler
Phone: +49 341 97-32260


------------------------------------------------------------------------------
_______________________________________________
Virtuoso-users mailing list
Virtuoso-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/virtuoso-users

Reply via email to