- From: Steve Harris <steve.harris@garlik.com>
- Date: Tue, 10 Nov 2009 06:26:57 +0000
- To: Andy Seaborne <andy.seaborne@talis.com>
- Cc: Paul Gearon <gearon@ieee.org>, public-rdf-dawg@w3.org
On 9 Nov 2009, at 21:56, Andy Seaborne wrote:
> On 09/11/2009 20:40, Steve Harris wrote:
>>
>> It should follow the same rules as CONSTRUCT as far as possible, for
>> reasons of sanity preservation. However, it's not so obvious what
>> that
>> means in this case.
>>
>> CONSTRUCT mints "new" bNodes when you give it [] or _:b. Isn't it an
>> error to mention bNodes with the same label in the CONSTRUCT and
>> WHERE
>> clauses? That makes things a little tricky.
>
> Error? - they are different bnodes.
>
> A bnode label scope is (1) the BGP in which it appears (pattern) or
> (2) the template instantiation for CONSTRUCT.
Yeah, but in (1) it's an error for it to appear in two places:
SELECT *
WHERE {
{ _:x <p> <o> }
{ _:x <p> <o> )
}
as is
SELECT _:x
WHERE {
_:x <p> <o>
}
I wasn't sure if it was in CONSTRUCT or not, I guess not. Seems a
little odd, but OK.
- Steve
--
Steve Harris, CTO, Garlik Limited
2 Sheen Road, Richmond, TW9 1AE, UK
+44(0)20 8973 2465 http://www.garlik.com/
Registered in England and Wales 535 7233 VAT # 849 0517 11
Registered office: Thames House, Portsmouth Road, Esher, Surrey, KT10
9AD
Received on Tuesday, 10 November 2009 06:27:31 UTC