W3C home > Mailing lists > Public > public-rdf-dawg@w3.org > October to December 2009

Re: Views on the outcomes of F2F

From: Andy Seaborne <andy.seaborne@talis.com>
Date: Wed, 11 Nov 2009 09:34:16 +0000
Message-ID: <4AFA8518.8090709@talis.com>
To: Lee Feigenbaum <lee@thefigtrees.net>
CC: Steve Harris <steve.harris@garlik.com>, SPARQL Working Group <public-rdf-dawg@w3.org>


On 10/11/2009 21:45, Lee Feigenbaum wrote:
> Andy Seaborne wrote:
>>
>> On 10/11/2009 20:18, Steve Harris wrote:
>> > We're explicitly not chartered to do assignment - if that makes sense -
>> > somewhat tortured English. We voted on a list of things to be in the
>> > charter, and assignment was on the list that didn't make it.
>>> You could regard it as syntactic sugar for subselect + project
>>> expressions, but that doesn't appear to be what Holger is after, and
>>> it's a little sophisitic to argue that IMHO.
>>
>> We have now have had feedback that the assumption that SELECT
>> expression syntax is not sufficient. We can respond to comments.
>>
>> I believe Holger is asking for nothing more than syntactic sugar.
>> Jeremy's syntactic conversion from LET to SELECT expressions shows
>> what they want and it's a syntactic rewrite even SPARQL syntax to
>> SPARQL syntax.
>
> I couldn't follow the transformation. Can you explain it, please? I'm
> trying to figure out if it matches what is implemented in Open Anzo or not.

If that would help the WG; I'll write a separate email.  The 
clarification should come from the commenter, rather than my 
interpretation, but I'm sure we can ask them to comment on the 
description.

It would also be helpful if you describe what OpenAnzo does. (ditto 
other impls).  I hope that Steve will provide the concrete example of 
what he thinks Holger is asking for and any examples that concern him.

>> We know LET->SELECT and SELECT->LET as syntatic transforms.. There is
>> no new functionality (it does not change the algebra at all); it's all
>> in the syntax to algebra translation step, which is what I consider
>> syntactic suger.
>>
>> I understand the comment as a request to make it easier to use by
>> exposing the assignment part of AS without the project interactions -
>
> Is this the "Extend" operator in the FPWD? I'm having trouble
> understanding the definition (and, again, checking if this is consistent
> with my implementation).

Yes - "Extend" is the thing that does the AS part.

The message 2009OctDec/0270.html tries to explain that - if anything is 
not clear, then ask away on that thread.

http://lists.w3.org/Archives/Public/public-rdf-dawg/2009OctDec/0270.html

See also:
C.J.Date, "An Introduction to Database Systems", 8th edition, p197

(which I have just found - the use of the same name is co-incidence or 
my subconscious).

> One of the things that I'm trying to evaluate in looking at
> TopQuadrant's request is whether this is as simple as they and you
> claim. Part of trying to evaluate that is seeing if the various
> implementors really have implemented the same thing. Another part is
> figuring out if different people have different expectations about what
> LET would do. (Easy case, do people expect to be able to do LET ?y := ?y
> + 1 with any other effect besides returning no solutions.)

I know of no one expecting that.  I would argue against it and anything 
that replaces one value with another.

Don't know if you saw, someone asked about this
http://tech.groups.yahoo.com/group/jena-dev/message/42041

My implementation is described at:
   http://www.openjena.org/ARQ/assignment.html
where the assignment rules align pattern matching and assignment.

e.g.
   { ?x :p ?v . LET (?v := <uri>) }
   { ?x :p ?v . FILTER (?v = <uri>) }
   { ?x :p 123 . } except ?v records <uri>

but I am not advocating solely that design and will see what others have 
done.

The alternative of new name introduction provides much of the useful 
functionality without aligning with setting a variable through BGP 
matching.

That is,
    { ?x :p ?v . LET (?v := <uri>) }
is illegal as the "?v" in LET is not a new name.

Incidently, my optimizer rewrites
   { ?x :p ?v . FILTER(?v = <uri>) }
to
   { ?x :p <uri> . LET(?v := <uri>) }

	Andy

> The Chairs do believe that this pretty clearly falls outside the scope
> of our charter, but we're considering it nevertheless given the new
> information.
>
> Lee
>
>> i.e. less verbose than SELECT *, (?x+?y AS ?z) without the pain of
>> needing to get the "*" right; better appearance for usse when there
>> are several assignments.
>>
>> What do you think Holger is asking for?
>> In what way does it fall outside syntactic sugar?
>> I would find a concrete example we can discuss helpful.
>> Do you have a different definition of syntactic sugar?
>>
>> Andy
>>
>>
>
> ______________________________________________________________________
> This email has been scanned by the MessageLabs Email Security System.
> For more information please visit http://www.messagelabs.com/email
> ______________________________________________________________________
Received on Wednesday, 11 November 2009 09:34:42 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 16:15:40 GMT