Hi Gregg, > Any thoughts on executing the parse result?
Yes. The current Linked Data Fragments client [1] uses a precursor of this parse result to execute SPARQL queries over Triple Pattern Fragment. I will upgrade it to the new SPARQL.js library ASAP. However, it is not a complete SPARQL executor yet. > From my experience in the Ruby implementation, this is where the Algebra > really comes into play, as it becomes directly executable, and forms patterns > that can be used for algebraic optimization. When implementing this parser, my main doubt was: should I translate to SPARQL algebra, or use a JSON format that better resembles the original query? I eventually opted for that last solution, because my experience implementing the aforementioned executor was generally positive with that simple JSON format. I think it might be less scary for people who want a simple first experience with SPARQL in JavaScript. Also see Claus' comment on this thread: >> The syntax level is perfectly fine. >> The Apache Jena framework also separates between the syntax and the algebra >> level, and offers transformations between the two represenatations. That said, a more complex query executor would definitely benefit from SPARQL algebra. If I would build this, I'm unsure whether to start from the Jison document or to simply transform the current generated JSON. Best, Ruben [1] https://github.com/LinkedDataFragments/Client.js