[
https://issues.apache.org/jira/browse/JENA-1362?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andy Seaborne resolved JENA-1362.
---------------------------------
Resolution: Duplicate
> SPARQL updates parser produces UpdateRequest which cannot be parsed again
> -------------------------------------------------------------------------
>
> Key: JENA-1362
> URL: https://issues.apache.org/jira/browse/JENA-1362
> Project: Apache Jena
> Issue Type: Bug
> Components: ARQ, Jena
> Affects Versions: Jena 3.1.1
> Environment: Windows / Linux
> Reporter: Michal Wozniak
> Priority: Minor
>
> *Issue*: for SPARQL updates containing a list in WHERE clause,
> UpdateFactory.create() produces UpdateRequest which cannot be parsed again.
> *Investigation*: the following SPARQL update:
> INSERT {
> ?label skosxl:literalForm ?labelLiteralPart .
> }
> WHERE
> {
> ?label skosxl:literalForm ?labelLiteral .
> ?labelLiteralPart spif:split (?labelLiteral \" \" )
> };
> is transformed after UpdateFactory.create().toString() into (which is not a
> valid SPARQL string):
> INSERT {
> ?label skosxl:literalForm ?labelLiteralPart .
> }
> WHERE {
> ?label skosxl:literalForm ?labelLiteral .
> ?labelLiteralPart spif:split ??0 .
> ??0 rdf:first ?labelLiteral ;
> rdf:rest ??1 .
> ??1 rdf:first " " ;
> rdf:rest rdf:nil
> }
> *Note*: the same issue does not happen for SPARQL queries. For a query, the
> parsed WHERE clause:
> WHERE{
> ?label skosxl:literalForm ?labelLiteral .
> ?labelLiteralPart spif:split _:b0 .
> _:b0 rdf:first ?labelLiteral ;
> rdf:rest _:b1 .
> _:b1 rdf:first " " ;
> rdf:rest rdf:nil
> }
> *Motivation*: we parse UpdateRequest for two reasons: (1) add USING and WITH
> clauses to indicate target graph, (2) check validity of SPARQL update itself,
> getting parser's details, such as line and column in case of a parsingerror.
> Then, we send it as a string parameter to TBL which executes it in:
> org.topbraidlive.sparql.servlet.UpdateHandler. Thus, in this flow, each
> update SPARQL is parsed, serialized and parsed again.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)