Re: Corrected sparqlx schema (sent the wrong one previously)

Kendall Clark wrote:
> On Wed, Mar 23, 2005 at 03:55:55PM +0000, Seaborne, Andy wrote:
> 
> 
>>pattern-group.
>>
>>   { pattern } UNION  {}
>>
>>is  "pattern OR true".
> 
> 
> Ah, hmm. I think an example query like that should be in
> rq23. FWIW. I'll tweak my stuff, though.

Would you care to suggest one?

Go on - make my day - send data, query and results.

> 
> 
>>>>     | element dataset-constraint {
>>>>         (uri | variable), (group-pattern)
>>>>       }*
>>>>      ^^^^ ????? why *
>>>
>>>
>>>I assume trang set that cardinality to * because of sparqlx-23.xml in
>>>the zip file, which serializes this query:
>>
>>I'd do that as a group with two GRAPHs in it rather than special casing it.
> 
> 
> But that wouldn't change the cardinality of dataset-constraint, would
> it? You'd still have something like:
> 
> <query-pattern>
> <group-pattern>
>  <dataset-constraint>
>   <uri>...</uri>
>   <triple-pattern>...</triple-pattern>
>  </dataset-constraint>
>  <dataset-constraint>
>   <variable name="foo"/>
>   <triple-pattern></triple-pattern>
>  </dataset-constraint>
> </group-pattern>
> </query-pattern>
> 
> Plus, I don't understand this as an interpretation of rq23 syntax:
> 
> GRAPH data:aliceFOAF { ...several triple patterns... }
> 
> Doesn't the { and } introduce a group-pattern?
> 
> Kendall


Anything can be repeated - GRAPH isn't different.  UNION, OPTIONALS, 
constriants, other groups.

It should be that groups patterns take some single thing element

In the rq23 grammer, rephrased

group-pattern := pattern-element*
pattern-element := triples | optional | union | graph | constraint

but you would want to not introduce an extra tag for pattern-element so 
something like:

group-pattern :=
    (triples | optional | union | graph | group-pattern | constraint )*




element query-pattern {
      (group-pattern
         | element pattern-group { triple-pattern* }
         | element optional-group { pattern-group }
         | element dataset-constraint {
             (uri | variable), group-pattern
           }
         | element union { group-pattern* }
         | element constraint { ... }
         | element group-pattern
      )*
    ^^^^^^ star here
    }

	Andy

Received on Wednesday, 23 March 2005 16:58:57 UTC