Hi Jerven,
thanks for the reply.
On 12/01/17 10:03, Jerven Tjalling Bolleman wrote:
Hi Adrian,
I am not involved in BigData/BlazeGraph etc.. but I can provide some
insight.
On 2017-01-11 15:15, Adrian Bielefeldt wrote:
I'm writign on behalf of a Wikidata Research
Project [1] into
SPARQL-Queries. We are writing a java application to parse
SPARQL-Queries from the query.wikidata.org-logs and analyse them for
different features. At the moment we are parsing the queries with
org.openrdf.query.parser.QueryParserUtil into
org.openrdf.query.parser.ParsedQuery-Objects. Unfortunatly we cannot
parse queries like this one:
SELECT DISTINCT ?item
WHERE
{ ?tree0 wdt:P31 ?item . BIND (wd:Q146 AS ?tree0) }
because of: "BIND clause alias '{}' was previously used".
If we parse them as org.openrdf.query.TupleQuery-Objects using
org.openrdf.repository.RepositoryConnection.prepareTupleQuery they are
parsed just fine.
This is practically an invalid SPARQL query (different systems accept
more or less) but
the query is nonsensical. The Query Parser reports that.
The TupleQuery parses according to the AST which does not "judge" a
query on its merits.
So what you're saying is that the TupleQuery-Object creates the AST but
does not notice that there is actually no sensible way to execute it?
Then what happens if I call .evaluate() on this object?
It has been a while since I did any query analysis
for
sparql.uniprot.org.
What I did at that time is for more detailed analysis is use the
SPIN-API [2] to convert
the SPARQL query string to an RDF representation. Loaded that SPARQL
query as RDF into a
triple store and used SPARQL to analyze those SPARQL queries. i.e. use
SPARQL to analyze analytical SPARQL queries ;)
We thought about that as well. Is there some kind of public project
documentation on this? It would certainly be of interest to us.
Regarding the openrdf parser questions you can ask
them at
eclipse-rdf4j
https://groups.google.com/forum/#!forum/rdf4j-users
Thanks, I'll try it there too.
rdf4j at eclipse is what was formerly named
openrdf/sesame.
Regards,
Jerven
[2]
https://github.com/spinrdf/spinrdf/
Unfortunatly, the TupleQuery-Objects do not support the
analysis-Features of ParsedQuery.
All of which leads to 2-3 questions:
1. Why is this kind of query accepted by one parser but not the other?
2. Is it possible to obtain a ParsedQuery-Object from a
TupleQuery-Object?
(3. Is this the right mailing list to post these questions to?)
Greetings,
Adrian Bielefeldt
Links:
------
[1]
https://meta.wikimedia.org/wiki/Research:Understanding_Wikidata_Queries
------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today.
http://sdm.link/xeonphi
_______________________________________________
Bigdata-developers mailing list
Bigdata-developers(a)lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bigdata-developers