Hi Lorenz, On Thu, Jul 28, 2016 at 11:33 AM, Lorenz Buehmann < buehm...@informatik.uni-leipzig.de> wrote: > > I think you would have to define some kind of deterministic normalization > in a bottom-up or top-down way. I think this would also depend on whether > there is some way to treat a SPARQL query resp. the algebra as a tree which > could be easier to handle than a graph. >
If I understood it correctly in Rob Vesse's slides on query optimization ( http://events.linuxfoundation.org/sites/events/files/slides/SPARQL%20Optimisation%20101%20Tutorial.pdf), optimizations in Jena work in a bottom up way (see slide 45) and operate on the tree shaped query algebra. So these preliminaries are already in place. The logical next step would be to implement the normalizing optimizations using the Transform interface ( https://github.com/apache/jena/blob/master/jena-arq/src/main/java/org/apache/jena/sparql/algebra/Transform.java). However, I wonder if this wasn't already done to some extent in Jena directly or in other projects based on it. One of my colleagues, Claus Stadler [1], is working on a caching solution, > maybe you could talk to him and share some ideas. > Thanks for the suggestion. I will contact Claus and see if he's done something in this regard. - Jindřich