- From: Robert Scanlon <rscanlon@revelytix.com>
- Date: Tue, 10 May 2011 22:18:41 -0500
- To: Richard Cyganiak <richard@cyganiak.de>
- Cc: David McNeil <dmcneil@revelytix.com>, RDB2RDF WG <public-rdb2rdf-wg@w3.org>
- Message-ID: <BANLkTinNOWzGwiutsV4aOp+phq6v0Q5KKw@mail.gmail.com>
Hi Richard and David, Just curious, and apologies if I'm missing the context from weekly discussions that may have covered this, but isn't there also the issue of the various *types* of joins to consider? I see from one of the spec drafts (excerpt below) that this issue actually also proposes support for only simple SQL expressions, as opposed to the original "the join condition may be as complex as allowed by SQL". Has it already been decided to support only equality (inner) join syntax, or is that an implied part of what you're discussing? If that decision has not yet been made, then it seems like this issue really has 3 aspects: 1) curly braces / referencing mechanism 2) multiple columns (or parts) in join clause 3) types of joins - inner, outer, left outer, right outer, ... If all 3 have to be supported, then some form of string with embedded table.column references may be the simplest. (Basically, something similar to what's there now, just address whatever issues are with the curly braces). If only simple joins are to be supported now, then forget all of the above. :-) Bob ------------------------------- From http://www.w3.org/2001/sw/rdb2rdf/r2rml/#RefObjectMapClass_joinCondition_Property : Note that the join condition may be as complex as allowed by SQL. ISSUE-32 <http://www.w3.org/2001/sw/rdb2rdf/track/issues/32>: The snytax of rr:joinCondition is still under discussion. It has been suggested that it should not use curly braces to delimit the logical tables. It has also been suggested that instead of arbitrary SQL, only simple equality expressions should be allowed. On Tue, May 10, 2011 at 4:41 PM, Richard Cyganiak <richard@cyganiak.de>wrote: > > On 10 May 2011, at 21:32, David McNeil wrote: > > If you're violently opposed to lists, then how about the last option I > mentioned: > > > > [] rr:parentTriplesMap <#TriplesMap1>; > > rr:join "col1,col1", "col2,col2"; > > > > This keeps the columns that are being checked *very* close to each other > ;-) > > > > Indeed. I didn't notice the first time I read this that you put the two > col1's together in this notation. So the first value always refers to the > child table? Seems a bit too obscure for my taste. > > Fair enough -- it's not very explicit. > > Let me do one more try: > > [] rr:parentTriplesMap <#TriplesMap1>; > rr:joinChildParent "col1=>col1", "col2=>col2"; > > Or maybe > > rr:joinFromTo "col1=>col1", "col2=>col2"; > > Any better? > > Richard >
Received on Wednesday, 11 May 2011 03:19:29 UTC