- From: Miguel <miguel.ceriani@gmail.com>
- Date: Mon, 27 Mar 2023 14:45:59 +0200
- To: Tim McIver <tim@timmciver.com>
- Cc: public-sparql-dev@w3.org
- Message-ID: <CALWU=RtqS5mYGxU-LMp3vtQrkQjGsuPgg6n15beH0erRfurgxg@mail.gmail.com>
Hello Tim, the reference document is the W3C recommendation [1]. The semantics of SPARQL are formally defined in two steps: first transforming a textual SPARQL query to a "SPARQL algebra expression", then applying the operational semantics defined on the SPARQL algebra. From the transformation step (specifically the part in [2]) comes the fact, often surprising to newcomers, that the order in which clauses are used in a query is indeed important and that some operators are applied incrementally on the pattern defined "above" them. Cheers, Miguel [1] https://www.w3.org/TR/sparql11-query/ [2] https://www.w3.org/TR/sparql11-query/#sparqlTranslateGraphPatterns On Mon, Mar 27, 2023 at 1:51 PM Tim McIver <tim@timmciver.com> wrote: > Hello, > > Where can I find information about SPARQL's evaluation model? I've read > most of "Learning SPARQL" but I've encountered several surprising results > from queries that I've written from what I've learned there. One of these > surprises prompted this question > <https://lists.w3.org/Archives/Public/public-sparql-dev/2023JanMar/0011.html> > on this mailing list which made me realize that I actually don't understand > SPARQL's evaluation model at all and I can't seem to find anything written > about it. I don't believe "Learning SPARQL" discussed the effect that, for > example, moving a BIND call would have on the results (if I'm mistaken, > please let me know where the book discusses this). > > Thanks, > Tim >
Received on Monday, 27 March 2023 12:46:26 UTC