On 08/08/2019 14:26, Claude Warren wrote:
I just read the SPARQL Update Grammar (
https://www.w3.org/Submission/SPARQL-Update/#sec_grammar).  My reading is
that TriplePaths are supported in the "TriplesBlock" definition. So
TriplePaths are allowed in the ConstructTemplate/

No - they are not.

You can try this out at sparql.org

http://sparql.org/update-validator.html


This would mean that statements like:

DELETE { ?x <p>/<p2> ?y } where { ?z <a> ?x ; <b> ?y }
INSERT { ?x <p>/<p2> ?y } where { ?z <a> ?x ; <b> ?y }


Grammar:

DELETE QuadData
   QuadData -> TriplesTemplate

and TriplesTemplate goes to TriplesSameSubject so no paths.


WHERE goes to TriplesBlock which goes to TriplesSameSubjectPath

Note the where clauses above are just to show that ?x and ?y are defined in
the construct template.

Is this correct?  If so then JENA-1739 requires a bit more to fix than just
the issue reported.

Claude

Reply via email to