- From: Dave Reynolds <dave.e.reynolds@gmail.com>
- Date: Wed, 25 Sep 2013 15:02:31 +0100
- To: "Sven R. Kunze" <sven.kunze@informatik.tu-chemnitz.de>, public-lod@w3.org
On 25/09/13 14:57, Sven R. Kunze wrote: > On 09/25/2013 03:53 PM, Dave Reynolds wrote: >> Hi Damian, >> >> On 25/09/13 14:16, Damian Steer wrote: >>> On 25/09/13 12:03, Stuart Williams wrote: >>>> On 25/09/2013 11:26, Hugh Glaser wrote: >>>>> You'll get me using CONSTRUCT soon :-) >>>>> (By the way, Tim's actual CONSTRUCT WHERE query isn't allowed because >>>>> of the FILTER). >>>> >>>> Good catch... yes - I've been bitten by that kind of thing too... that >>>> not all that's admissible in a WHERE 'body', is admissible in a >>>> CONSTRUCT 'body'. >>> >>> As far as I'm aware it is -- Tim's original simply misplaced a curly >>> brace. The filter ought to be in the WHERE body. >>> >>> CONSTRUCT is essentially SELECT with a tabular data -> rdf system bolted >>> at the end of the pipeline. >> >> I think the point people were making is that the syntactic shortform >> "CONSTRUCT WHERE" with implicit template only applies when you have a >> simple basic graph pattern [1]. >> >> If the WHERE clause is more complex, e.g. with a FILTER, then you need >> an explicit construct template. >> >> Dave >> >> [1] http://www.w3.org/TR/sparql11-query/#constructWhere >> >> > > How did you come to that conclusion? Based on the part of the specification given by link [1] above, which says (my emphasis): "A short form for the CONSTRUCT query form is provided for the case where the template and the pattern are the same and the pattern is just a basic graph pattern **(no FILTERs and no complex graph patterns are allowed in the short form)**." Dave
Received on Wednesday, 25 September 2013 14:02:59 UTC