- From: Steve Harris <steve.harris@garlik.com>
- Date: Tue, 11 Jan 2011 16:33:08 +0000
- To: Andy Seaborne <andy.seaborne@epimorphics.com>
- Cc: SPARQL Working Group <public-rdf-dawg@w3.org>
On 2011-01-11, at 14:48, Andy Seaborne wrote:
> Editorial: so it does not get lost:
>
> These are all the same operation, in different guises:
>
> 3.1.3 DELETE/INSERT
>
> [ WITH <uri> ]
> DELETE { modify_template [ modify_template ]* }
> INSERT { modify_template [ modify_template ]* }
> [ USING [NAMED] <uri> ]*
> [ WHERE ] GroupGraphPattern
>
> The word WHERE is optional, GroupGraphPattern is not.
It makes me very uncomfortable that
DELETE {}
INSERT
{
<a> <b> <c>
}
{
<d> <e> <f>
}
Has a radically different meaning from
DELETE {}
INSERT {
{
<a> <b> <c>
}
{
<d> <e> <f>
}
}
Would prefer
[ WHERE GroupGraphPattern ]
> 3.1.5 INSERT
> ...
> [ WITH <uri> ]
> INSERT { modify_template [ modify_template ]* }
> [ [ USING [NAMED] <uri> ]*
> WHERE GroupGraphPattern ]
>
> The whole WHERE+pattern part is optional.
>
>
> 3.1.4 DELETE
>
> [ WITH <uri> ]
> DELETE { modify_template> [ modify_template ]* }
> [ USING [NAMED] <uri> ]*
> WHERE GroupGraphPattern
>
> WHERE+pattern is mandatory.
>
>
> The notation is unclear : [] is optional, (so what's []*?)
>
>
> { modify_template [ modify_template ]* } should probaly be just [modify_template]* because when generated by programs, it's easier to allow the null pattern.
>
> Andy
>
--
Steve Harris, CTO, Garlik Limited
1-3 Halford Road, Richmond, TW10 6AW, UK
+44 20 8439 8203 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, 11 January 2011 16:33:45 UTC