nested SOURCE graph-patterns

hi all,

while doing a walk-through the grammar in the current editor draft [1] 
I found that we allow nested SOURCE patterns - these are two 
productions relative to it:

[6]   SourceGraphPattern   ::=   'source' '*' PatternElement | 'source' 
VarOrURI PatternElement
[10]   PatternElement   ::=   TriplePattern | GroupGraphPattern | 
SourceGraphPattern | OptionalGraphPattern | 'and'? Expression

which legally allow to write queries like (note the nesting of SOURCE)

PREFIX data: <>
PREFIX foaf: <>

SELECT ?mbox ?age ?ppd
GRAPH  data:aliceFoaf data:bobFoaf
GRAPH  data:peterPanFoaf #this is being nested
   SOURCE data:aliceFoaf
     ( ?alice foaf:mbox <mailto:alice@work.example> )
     ( ?alice foaf:knows ?whom )
     ( ?whom foaf:mbox ?mbox )
     ( ?whom PersonalProfileDocument  ?ppd )

     # nested SOURCE
     SOURCE data:peterPanFoaf
       ( ?peter foaf:mbox <mailto:peter_pan@not-working.example> )
       ( ?peter foaf:knows ?peter_whom )
       ( ?peter_whom foaf:mbox ?mbox )
       ( ?peter_whom PersonalProfileDocument  ?ppd )
   SOURCE ?ppd
      ( ?w foaf:mbox ?mbox )
      ( ?w foaf:age ?age )

Even if syntactically correct, it could make hard to the reader being 
convinced that such a query makes sense in the real world - by trying 
to follow the current editor's draft design it seems we have two nested 
"trusted graphs" (??).

Anyway, I find nesting of SOURCEs useful at some stage, but hard to fit 
in our design - also the GRAPH/LOAD design discussing at the 
face-to-face is less clearer when nesting is faced....

Does this make sense to you ?

Is the design meant to cover this part?



Alberto Reggiori, Senior Partner, R&D @Semantics S.R.L. Milan Office

Received on Tuesday, 25 January 2005 14:50:51 UTC