Hi All
On behalf on my employer I reported an interesting quirk of ARQ that may be
a bug/feature depending on your point of view. You can read the full
details and developer discussion at JENA-712
(https://issues.apache.org/jira/browse/JENA-712)
Essentially given a query like the following:
SELECT * WHERE { <path/to/thing> a ?type }
ARQ internally resolves the relative URI using an implicit Base URI to allow
the query to parse, when it serialises the query back out e.g. for
transmitting to a remote SPARQL service it omits a BASE declaration and
sends the query with the relative URIs in it. This can happen when you
either don't specify a Base URI at all or when you call
QueryFactory.create() using the overloads that take a Base URI.
In some cases this may be the desired behaviour but in others this may not
I.e. what you actually wanted to send to the remote service was the query
with the relative URI resolved into their absolute form.
There are several options for resolving this being discussed, at the very
least this behaviour will be made configurable to accommodate both use cases
and as such we would like to hear user input on what the default behaviour
should be?
Should the default behaviour:
* Remain the same as current releases I.e. implicit base URIs are not
included in serialised SPARQL
* Change for future releases I.e. implicit base URIs are included in
serialised SPARQL
Thanks for your input,
Rob