W3C home > Mailing lists > Public > public-rdf-dawg@w3.org > January to March 2005

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

From: Seaborne, Andy <andy.seaborne@hp.com>
Date: Wed, 23 Mar 2005 15:55:55 +0000
Message-ID: <4241918B.3040301@hp.com>
To: kendall@monkeyfist.com
CC: DAWG Mailing List <public-rdf-dawg@w3.org>



Kendall Clark wrote:
> 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...?

pattern-group.

    { pattern } UNION  {}

is  "pattern OR true".

	Andy

> 
> 
>>       | 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.

	Andy

> 
> 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:58:31 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 16:15:22 GMT