Re: SQL in R2RML mappings

Souri/Seema -

Thank you for your response, see my responses inline below.


> (A specific question about your issue #1: we are not sure what is the
> requirement for "generate multiple subjects" ? If you meant multiple
> TriplesMaps, then we can understand that the requirement is to re-use the
> SQL query in those TriplesMaps.)


Yes, re-using a SQL query in multiple TriplesMaps is what I mean.


> Not clear to us. Could you please clarify this requirement with a concise
> example.


Consider a PERSON table with a TriplesMap on top of it. Consider also a
WORKS table with a TriplesMap on it. The WORKS table describes creative
works produced by the person (e.g. books, songs, etc.). Each of these
TriplesMaps produces a variety of triples describing the people and the
works respectively.

A triple is needed to tie people to their works like this: [:personA :wrote
:work1] [:personB :composed :work2]. In this example the predicate tying the
two TriplesMaps together depends on data that comes from the logical table
of the "object". Specifically if the object is a book then the predicate is
:wrote, whereas if the object is a song then the predicate is :composed.

However, as I read the R2RML specification, I do not see how to create a
RefPredicateObjectMap on the PERSON TriplesMap that references a column
under the WORKS TriplesMap (perhaps this capability was intended by the
specification and I am just not reading it properly?). In general, I am
looking for R2RML to support arbitrarily complex expressions for predicates
based on columns from both the subject and the object logical tables.


> It is already assumed to be opaque.


Ah, I did not realize that. Perhaps it would be worth explicitly stating
this in the spec (or maybe it is and I missed it?).

Thanks again.
-David

Received on Tuesday, 25 January 2011 16:31:09 UTC