- From: Seaborne, Andy <andy.seaborne@hp.com>
- Date: Wed, 23 Mar 2005 15:11:08 +0000
- To: kendall@monkeyfist.com
- CC: DAWG Mailing List <public-rdf-dawg@w3.org>
element query-pattern {
(group-pattern
| element pattern-group {
triple-pattern? <<---- can be empty
}
| element optional-group {
pattern-group
}
| element dataset-constraint {
(uri | variable), (group-pattern)
}*
^^^^ ????? why *
| element union { group-pattern* }
)
}
modelled after:
[13] GraphPattern ::= ... PatternElement * ...
// And some hoops for trailing dots as per F2F5
[14] PatternElement ::= Triples
| OptionalGraphPattern
| UnionGraphPattern
| GraphPattern
| GraphGraphPattern // GRAPH
| Constraint
[15] OptionalGraphPattern ::= 'optional' GraphPattern
[16] GraphGraphPattern ::= 'graph' VarOrBNodeOrURI GraphPattern
[17] UnionGraphPattern ::= GraphPattern ( 'union' GraphPattern )*
etc etc.
Kendall Clark wrote:
> On Wed, Mar 23, 2005 at 02:46:05PM +0000, Seaborne, Andy wrote:
>
>>I thought it might be something like that - you'd said your were doing
>>examples so I followed the examples.
>
>
> Even worse, I simply included the wrong schema in my zip file. Doh!
>
> Here's the "correct" one -- that is, the one that actually schematizes
> the examples.
>
> I'm pretty sure I've got something wrong or non-optimal w/r/t the
> groupings and triple patterns, Andy, but I guess I'm too dumb to
> figure out what it is from yr feedback so far.
>
> Kendall
> --
> default namespace =
> "http://www.w3.org/2001/sw/DataAccess/sparql-xml-syntax/"
>
> start =
> element rdf-query {
> (element ask { empty }
> | element construct {
> triple-pattern
> | element graph-template { triple-pattern+ }
> }
> | element describe { variable*, uri? }
> | element select {
> attribute distinct { xsd:boolean }?,
> attribute limit { xsd:int }?,
> attribute offset { xsd:int }?,
> variable+
> }),
> element query-pattern {
> triple-pattern*,
> (group-pattern
> | element pattern-group {
> attribute optional { xsd:boolean },
> triple-pattern+
> }
> | element dataset-constraint {
> (uri | variable), (group-pattern | triple-pattern+)
> }*
> | element union { triple-pattern+ | group-pattern+ }*)
> }?
> }
> variable =
> element variable {
> attribute name { xsd:NCName }
> }
> uri = element uri { xsd:anyURI }
> triple-pattern =
> element triple-pattern {
> attribute optional { xsd:boolean }?,
> element subject { bnode | uri | variable },
> element predicate { uri | variable },
> element object {
> bnode
> | uri
> | variable
> | element literal {
> attribute datatype { xsd:anyURI }?,
> attribute lang { xsd:NCName }?,
> text
> }
> },
> constraint?
> }
> group-pattern =
> element group-pattern {
> attribute optional { xsd:boolean }?,
> triple-pattern+,
> constraint?
> }
> bnode =
> element bnode {
> attribute id { xsd:NCName }
> }
> constraint = element constraint { (text | variable)+ }
>
Received on Wednesday, 23 March 2005 15:13:10 UTC