- From: Seaborne, Andy <andy.seaborne@hp.com>
- Date: Mon, 29 Jan 2007 16:20:25 +0000
- To: Pat Hayes <phayes@ihmc.us>
- CC: 'RDF Data Access Working Group' <public-rdf-dawg@w3.org>
Pat Hayes wrote: >> Attached are some tests (positive and negative) for reuse of blank >> nodes labels only within BGPs. >> >> There is one case to point out: syn-bad-39.rq >> >> { >> _:a ?p ?v . FILTER(true) . <x> ?q _:a >> } >> >> 1/ By the principle that FILTERs apply to the whole group, > > Didnt we decide this, some time ago? That is, groups with filters are > equivalent to the same group with all the filters at the end of the > group. Which would rule out your 2/ interpretation, below. > > Pat The principle has been that FILTERs apply across the group - not the BGP. As I recall this is for two reasons: 1/ We explicitly took value constraints out of filters so that a BGP is purely triple patterns, no value constraints. Filters can not contain syntax for bnodes so <x> ?p _:a . FILTER(_:a < 5 ) is not legal. FILTERs are not part of BGPs either way round. 2/ Uniformity with other graph patterns in the group. A group with one element that is a BGP muddies the water. (1) caused the grammar to change to put FILTERs in the group, not in BGPs. Makes the grammar simpler. If we decide FILTERs do not end a BGP, then we need to decide whether this is done via text or a grammar change. Andy
Received on Monday, 29 January 2007 16:20:38 UTC