R2RML doubts: Inverse Expressions and No Join Conditions

Hi all,

I'm writing a section about R2RML for a book and I have two doubts:


* Inverse expressions: I think I get the idea technically speaking, but 
I don't understand in what use-case or scenario it would be useful to do 
such a reverse search (or, more generally, what was the motiviation to 
define these expressions in the standard).

 https://www.w3.org/TR/r2rml/#inverse

(Searching around on the Web, a lot of material just seems to paraphrase 
the standard, but unfortunately the standard itself is not clear to me.)


* For referencing object maps without a join condition, the definitions 
suggest that this acts like a Cartesian product (and intuitively this 
would make a lot of sense to me) but the standard provides an example 
where the parent and child maps refer to the same table that seems to 
contradict that idea.

 https://www.w3.org/TR/r2rml/#ex-ref-object-map2

The text above states:

 "No join condition is needed as both triples maps use the same logical 
table (the base table DEPT)."

While it's not clear what it means that "no join condition is needed", 
what I think it's trying to tell me is that when the parent and child 
tables are the same, by default the same row will be used in the parent 
and child map to generate the subject/object. But the definitions do not 
seem to support that and unfortunately the concrete example provided is 
ambiguous in the standard because it only has one row (so the Cartesian 
product interpretation and the row-by-row interpretation give the same 
result, as seen). I'm wondering what was the intention here?


(Perhaps there is a better place to ask these questions, but it seems 
the list public-rdb2rdf-wg@w3.org has been deactivated. Also just to add 
that in general I quite like the R2RML language design and find it quite 
intuitive; just these two points have me really puzzled.)

Cheers!
Aidan

Received on Monday, 7 January 2019 16:21:17 UTC