W3C home > Mailing lists > Public > public-rdf-dawg@w3.org > January to March 2010

Re: SPARQL Federation Extensions draft

From: Andy Seaborne <andy.seaborne@talis.com>
Date: Tue, 30 Mar 2010 14:55:22 +0100
Message-ID: <4BB202CA.2080000@talis.com>
To: Eric Prud'hommeaux <eric@w3.org>
CC: public-rdf-dawg@w3.org


On 29/03/2010 5:24 PM, Eric Prud'hommeaux wrote:
...
> * Andy Seaborne<andy.seaborne@talis.com>  [2010-03-29 15:54+0100]
...
>> Algebra example:
>>
>>   Service(?s :p2 ?v2)
>> ==>
>>   Service(<srvc>  BGP(?s :p2 ?v2))
>>
>> "with a query Q and no default or named graphs."
>>
>> I think that means no FROM or FROM NAMED - correct?
>
> ahh, different intention. I updated the text to
>
> "with a query Q and no default-graph-uri or named-graph-uri (see
> SPARQL Protocol [SPROT] section 2.1.1.1)"
>
> and am field-testing it on you now. Is it clear?

Yes - and the query probably should not have FROM/FROM NAMED (where 
woudl the names come from?) which makes it the SELECT that forms a 
subquery.  Which makes sense.

>> ** BINDINGS
>>
>> This area is less clear to me - it's very useful to have something
>> here but I'm not quite sure this is the right mechanism.
>
> I've found it convenient, as have a few others (Greg, and possibly
> Virtuoso, if they got around to it).

I understand the importance - it's the mechanism I'm unsure about.

[13]  	WhereClause	  ::=  	'WHERE'? GroupGraphPattern BindingClause?

Don't you mean after SolutionModifier (e.g. ORDER BY, GROUP BY) or 
streaming can't work.

>
>> It's another form of assignment.
>>
>> Is it the same as (the excessively verbose):
>>
>> {
>> SELECT ("Alice" AS ?given)
>>         ("Anderson" AS ?family)
>>         (?mbox AS<mailto:alice@example.com>)
>> } UNION {
>> SELECT ("Bob" AS ?given)
>>         ("Robertson" AS ?family)
>>         (?mbox AS<mailto:eve@example.com>)
>> } UNION { ... }
>
> Wow, I think it is. Neato.

Not neat - very, very ugly!

>
>> Probably better not to allow bNodes to be passed over the network.
>
> what's SELECT (_:Bob AS ?who) do?

Illegal.

SELECT (expression AS ?var)

expression can't mention a bNode by syntax.

> I think both would need to say that bnodes in this document (like any
> other RDF document) are scoped to the document, and are distinct from
> all other bnodes.

Do they serve any purpose?  Being scoped to the query "document", I 
can't see what they can be used for.  You can't get them back in results 
for example.

c.f. bNodes in CONSTRUCT template.

>
>> Suggest s/UNBOUND/_/ or something a liitle less heavy. "-"
>> The definition of BINDING has UNDEF
>
> any of these work for me. SQL of course uses "NULL", but then SQL uses
> "NULL" for lots of things.

And not quite the same :-)

>
>> * BINDING and Update:
>> This seems to overlap with INSERT DATA etc
>
> I don't know INSERT DATA. pointer?

Sent.

>
>> It is unrelated to federated query.
>>
>> The substutute operator might help in the definition:
>> http://www.w3.org/2009/sparql/docs/query-1.1/rq25.xml#defn_substitute
>
> thanks, that looks useful here; ping me when you flush it out.

Ack.

	Andy
Received on Tuesday, 30 March 2010 13:55:58 GMT

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