I'm getting a strange syntax error from Virtuoso Open Source related to transitive paths.
Connected to OpenLink Virtuoso Driver: 07.20.3230 OpenLink Virtuoso ODBC Driver SQL> SPARQL PREFIX wdt: <http://www.wikidata.org/prop/direct/> SELECT ( COUNT (DISTINCT ?s) AS ?subclasses ) WHERE { GRAPH <http://wikidata> { ?s wdt:P279/wdt:P279* ?t . } } ; *** Error 37000: [Virtuoso Driver][Virtuoso Server]TR...: Query contains a transitive derived table but neither end of it is bound by equality to other columns or parameters at line 1 of Top-Level: SPARQL PREFIX wdt: <http://www.wikidata.org/prop/direct/> SELECT ( COUNT (DISTINCT ?s) AS ?subclasses ) WHERE { GRAPH <http://wikidata> { ?s wdt:P279/wdt:P279* ?t . } } SQL> SPARQL PREFIX wdt: <http://www.wikidata.org/prop/direct/> SELECT ( COUNT (DISTINCT *) AS ?subclasses ) WHERE { GRAPH <http://wikidata> { ?s wdt:P279/wdt:P279* ?t . } } ; Result is 38781929 in 616 seconds SQL> SPARQL PREFIX wdt: <http://www.wikidata.org/prop/direct/> SELECT ( COUNT (DISTINCT ?s) AS ?subclasses ) WHERE { ?s wdt:P279/wdt:P279* ?t . } ; Result is 1488308 in 87 seconds SQL> SPARQL PREFIX wdt: <http://www.wikidata.org/prop/direct/> SELECT ( COUNT (DISTINCT *) AS ?subclasses ) WHERE { ?s wdt:P279/wdt:P279* ?t . } ; Result is 38781929 in 614 seconds Why is the first query not working when the others do? peter _______________________________________________ Virtuoso-users mailing list Virtuoso-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/virtuoso-users