- From: Kendall Clark <kendall@monkeyfist.com>
- Date: Wed, 23 Mar 2005 10:45:38 -0500
- To: "Seaborne, Andy" <andy.seaborne@hp.com>
- Cc: DAWG Mailing List <public-rdf-dawg@w3.org>
On Wed, Mar 23, 2005 at 03:11:08PM +0000, Seaborne, Andy wrote: > > > element query-pattern { > (group-pattern > | element pattern-group { > triple-pattern? <<---- can be empty > } Do you mean a pattern-group can be empty or a triple-pattern can be empty? I assume the former, since an empty triple-pattern doesn't make a lot of sense. But, then, I can't make sense of serializing an empty pattern-group either...? > | 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: PREFIX data: <http://example.org/foaf/> PREFIX foaf: <http://xmlns.com/foaf/0.1/> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT ?mbox ?age ?ppd WHERE { GRAPH data:aliceFoaf { ?alice foaf:mbox <mailto:alice@work.example> ; foaf:knows ?whom . ?whom foaf:mbox ?mbox ; rdfs:seeAlso ?ppd . ?ppd a foaf:PersonalProfileDocument .} . GRAPH ?ppd { ?w foaf:mbox ?mbox ; foaf:age ?age } } Where there are two GRAPH constraints. Kendall PS--I include sparqlx-23.xml here for reference. <?xml version="1.0" encoding="UTF-8"?> <!-- PREFIX data: <http://example.org/foaf/> PREFIX foaf: <http://xmlns.com/foaf/0.1/> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT ?mbox ?age ?ppd WHERE { GRAPH data:aliceFoaf { ?alice foaf:mbox <mailto:alice@work.example> ; foaf:knows ?whom . ?whom foaf:mbox ?mbox ; rdfs:seeAlso ?ppd . ?ppd a foaf:PersonalProfileDocument .} . GRAPH ?ppd { ?w foaf:mbox ?mbox ; foaf:age ?age } } --> <rdf-query xmlns="http://www.w3.org/2001/sw/DataAccess/sparql-xml-syntax/"> <select distinct="false" limit=""> <variable name="age"></variable> <variable name="mbox"></variable> <variable name="ppd"></variable> </select> <query-pattern> <dataset-constraint> <!-- could be a dataset-constraint attr instead? --> <uri>http://example.org/foaf/aliceFoaf</uri> <group-pattern optional="false"> <triple-pattern optional="false"> <subject> <variable name="alice"></variable> </subject> <predicate> <uri>http://xmlns.com/foaf/0.1/foaf/mbox</uri> </predicate> <object> <uri>mailto:alice@work.example</uri> </object> </triple-pattern> <triple-pattern> <subject> <variable name="alice"></variable> </subject> <predicate> <uri>http://xmlns.com/foaf/0.1/foaf/knows</uri> </predicate> <object> <variable name="whom"></variable> </object> </triple-pattern> <triple-pattern> <subject> <variable name="whom"></variable> </subject> <predicate> <uri>http://xmlns.com/foaf/0.1/foaf/mbox</uri> </predicate> <object> <variable name="mbox"></variable> </object> </triple-pattern> <triple-pattern> <subject> <variable name="whom"></variable> </subject> <predicate> <uri>http://www.w3.org/2000/01/rdf-schema#seeAlso</uri> </predicate> <object> <variable name="ppd"></variable> </object> </triple-pattern> <triple-pattern> <subject> <variable name="ppd"></variable> </subject> <predicate> <uri>http://www.w3.org/1999/02/22-rdf-syntax-ns#type</uri> </predicate> <object> <uri>http://xmlns.com/foaf/0.1/PersonalProfileDocument</uri> </object> </triple-pattern> </group-pattern> </dataset-constraint> <dataset-constraint> <variable name="ppd"></variable> <group-pattern> <triple-pattern optional="false"> <subject> <variable name="w"></variable> </subject> <predicate> <uri>http://xmlns.com/foaf/0.1/foaf/mbox</uri> </predicate> <object> <variable name="mbox"></variable> </object> </triple-pattern> <triple-pattern optional="false"> <subject> <variable name="w"></variable> </subject> <predicate> <uri>http://xmlns.com/foaf/0.1/foaf/age</uri> </predicate> <object> <variable name="age"></variable> </object> </triple-pattern> </group-pattern> </dataset-constraint> </query-pattern> </rdf-query>
Received on Wednesday, 23 March 2005 15:50:34 UTC