- From: Seaborne, Andy <andy.seaborne@hp.com>
- Date: Thu, 27 Sep 2007 17:00:32 +0100
- To: Richard Newman <rnewman@franz.com>
- CC: public-rdf-dawg-comments@w3.org
Richard Newman wrote:
> DAWG,
>
> 12.2.2 has a minor error.
> ----
>
> Example: group consisting of a basic graph pattern, a filter and an
> optional graph pattern:
>
> { ?s :p1 ?v1} FILTER (?v1 < 3 ) OPTIONAL {?s :p2 ?v2} }
> Filter( ?v1 < 3 ,
> LeftJoin( BGP(?s :p1 ?v1), BGP(?s :p2 ?v2), true) ,
> )
> ----
Fixed, thank you.
>
> Count the number of {s and }s.
>
> While I'm on the topic of 12.2.x, the algebra mapping algorithm in
> 12.2.1 is somewhat unclear, and contains at least one error:
>
> ----
> for each algebra sub-expression SA:
> If SA is an OPTIONAL,
> If SA is of the form OPTIONAL(Filter(F, A))
> G := LeftJoin(G, A, F)
> else
> G := LeftJoin(G, A, true)
> Otherwise for expression SA, G := Join(G, SA)
> ----
>
> in the 'else' clause, 'A' is out of scope, so this doesn't make
> any sense.
Yes - changed to "G := LeftJoin(G, SA, true)"
>
>
> In a more general sense: it would probably aid the clarity of the
> document if the DAWG tried to write an AST -> Algebra converter using
> only the document as a reference, rather than writing the document
> with the experience of having written the code. I'm writing such a
> thing for the first time, and the document is not as clear as I would
> like.
I can say that the doc was written before I implemented.
>
> It would also be helpful in 12.2.2 to provide concrete (syntax,
> AST, algebra) triples, rather than only (syntax, algebra) pairs. At
> present I am having to basically guess the AST that the DAWG had in
> mind when writing this section.
The grammar rules give the abstract syntax and do define a parse tree.
Inventing another notation to capture that would be confusing as to its status
with respect to the SPARQL concrete syntax.
Eric has provided the yacker tool
http://www.w3.org/2005/01/yacker/uploads/SPARQL
that prints out parse information which uses (I think) yapp (which is an LALR
Perl-based parser generator).
Thanks
Andy
>
> Regards,
>
> -R
>
--
Hewlett-Packard Limited
Registered Office: Cain Road, Bracknell, Berks RG12 1HN
Registered No: 690597 England
Received on Thursday, 27 September 2007 16:00:53 UTC