Details
-
Improvement
-
Status: Closed
-
Minor
-
Resolution: Fixed
-
Jena 3.0.0
-
None
Description
Following on from JENA-963.
A single path block from parsed syntax becomes one ElementPathBlock in the AST, then an OpSequence of OpBGP and OpPath items in the algebra.
OpAsQuery does not quite reverse this exactly. It produces a group
Example:
{ ?p :property ?o . ?p :p* ?z }
where
{ ?p :property ?o . ?p :p* ?z }is a single ElementPathBlock producing algebra:
(sequence (bgp (?p :property ?o)) (path ?p (path* :p) ?z)) )
OpAsQuery currently produces 2 ElementPathBlocks, one for the BGP, one for the path. This different syntax generates equivalent algebra.
OpAsQuery should attempt to combine adjacent ElementPathBlocks as the ElementGroup is created.