PathProcessorStrategy has a big chunk of code commented out in it that says: "todo: need to be able to drop path labels for this to work."
Given PathRetractionStrategy, we can now support:
where(as('a').out().as('b')) => select('a').where(out().as('b'))
This is useful for OLAP when you can only process the local star graph and thus, if where() selects arbitrarily from a path, this rewrite will ensure that the where() starts at a local star graph and not a "reference element" in the path object.
Note that PathProcessorStrategy already has test cases for this too (commented out). Just uncomment stuff and go!
- links to