Re: Mandatory tableOwner property


Seema and I discussed this along with another colleague of us. We thought of an alternate way of addressing this requirement, via use of modular specifications of the RDB2RDF mapping that avoids any changes to current version of R2RML. 

Specifically, a mapping specification may be broken up into several modules that are stored in multiple files, respectively. One of these modules, say "ownership" module, may contain triples involving properties such as rr:tableOwner, and the rest of the file(s) may contain the remaining triples. This allows combining different versions of the "ownership" module to be combined with the remaining module(s) to effectively construct different mapping specifications that differ only in the value specified for rr:tableOwner. 

For example, let us take the EMP table example [1] and modify to make it modular by breaking it up into two files: 

file 1: (the ownership info) 
<#TriplesMap2> rr:tableOwner "SCOTT"; 
file 2: (all the other triples) 
    a rr:TriplesMapClass; 
rr:tableName  "EMP"; 
Another file may be created with a different ownership info: 

file 1a: 
<#TriplesMap2> rr:tableOwner "HERMAN"; 
We can have two specifications, one that includes files 1 and 2, and another that includes files 1a and 2. 
Would this address the issue you are raising? 

- Souri. 


David McNeil wrote: 

In the R2RML spec the tableOwner property is required to qualify tableName properties. I question this because it would seem to tie the R2RML mappings to a specific database user. In my experience a given database schema can be accessed via different users or installed on a separate database server under a different user and it is desirable for a mapping to be usable unchanged in multiple contexts. Maybe I am missing something? 

For a tangible example of what I see as undesirable, notice that this test case essentially hard-codes the user name "boricles": 


Received on Thursday, 10 February 2011 20:37:29 UTC