Re: R2RML draft - new introduction

  Hi Juan

On 13/10/2010 23:49, Juan Sequeda wrote:
> I don't think answers my question.
>
> Just to make sure that I understand what is being proposed, I see as 
> the following:
>
> Let R be a relational schema
> Let V be a target vocabulary
>
> R2R(R, V) = RDF graph
>
> Is this correct?
As far as I understand and according to the introduction:
R2RML is a language for expressing customized mappings from relational 
databases to RDF datasets.

Again, I took the liberty of creating a preliminary diagram that depicts 
this definition. You can find it at:
http://mccarthy.dia.fi.upm.es/rdb2rdf/R2RML.png

IMHO, a R2RML mapping only expresses the mappings from RDB to RDF.
A specific R2RML engine takes as input: the R2RML mapping, the RDB 
connection info, the target RDF dataset (vocabulary?) and generates as 
output an RDF dataset

Or am I wrong?

Boris







>
> Juan Sequeda
> +1-575-SEQ-UEDA
> www.juansequeda.com <http://www.juansequeda.com>
>
>
> On Wed, Oct 13, 2010 at 1:50 PM, Souri Das <Souripriya.Das@oracle.com 
> <mailto:Souripriya.Das@oracle.com>> wrote:
>
>     Not sure if you saw my earlier email ... I am including it here
>     anyway, just in case:
>     =====================
>
>     Ashok's question is very important and the answer in our FPWD must
>     be absolutely clear.
>
>     I like the answer Richard came up with after discussing with Michael.
>
>     We may want to consider a rephrasing like the following:
>     "An RDB2RDF mapping may be used against a relational database only
>     if the logical table(s) used in the mapping is (are) valid in that
>     relational database."
>
>     Also, there is an issue of privileges for actually using an
>     RDB2RDF mapping:
>     "A client connecting to the relational database, EITHER to
>     materialize the RDF triples based upon an RDB2RDF mapping, OR to
>     query via SQL query obtained via translation of a (end-user
>     submitted) SPARQL query using an RDB2RDF mapping, must have
>     sufficient privileges in the relational database to compute the
>     logical table(s) specified in the mapping."
>
>     Thanks,
>     - Souri.
>     =====================
>
>
>     Juan Sequeda wrote:
>>     On Wed, Oct 13, 2010 at 1:11 PM, Richard Cyganiak
>>     <richard@cyganiak.de <mailto:richard@cyganiak.de>> wrote:
>>
>>         On 13 Oct 2010, at 15:12, ashok malhotra wrote:
>>
>>             How about "The input to an R2RML mapping is a Relational
>>             database which contains the data as well as the schema."
>>
>>
>>         Well, the input can't be a database with *any* schema; it
>>         must be the same schema that the mapping was written for. I'd
>>         like to make that as clear as possible.
>>
>>         How about this:
>>
>>         “Every R2RML mapping is tailored to a specific database
>>         schema and target vocabulary.
>>
>>
>>     target vocabulary or vocabularies
>>
>>         The input to an R2RML mapping is a relational database that
>>         conforms to the schema.
>>
>>
>>     so you mean:
>>
>>     RDB and Vocabulary --> R2RML Mapping --> RDF
>>
>>     or is a R2RML mapping and input self:
>>
>>     RDB and Vocabulary and R2RML Mapping --> RDB2RDF System --> RDF
>>
>>         The output is an RDF dataset, as defined in SPARQL, that uses
>>         predicates and types from the target vocabulary.”
>>
>>         This is for the intro; in the later chapters there is more
>>         space to spell it out in detail.
>>
>>         Richard
>>
>>
>>
>>
>>
>>
>>             All the best, Ashok
>>
>>             On 10/13/2010 4:01 AM, Richard Cyganiak wrote:
>>
>>                 Ashok,
>>
>>                 On 12 Oct 2010, at 23:59, ashok malhotra wrote:
>>
>>                     One question.  You say:
>>
>>                         The input to an R2RML mapping is a relational
>>                         database.
>>
>>
>>                     Is it a relational database or a relational
>>                     database schema?
>>
>>
>>                 Good question. I discussed this a bit with Michael
>>                 this morning.
>>
>>                 Definition: An RDB schema consists of the table
>>                 *declarations*, but it does not include the actual
>>                 *data* in the tables.
>>
>>                 Definition: A relational database on the other hand
>>                 consists of both an RDB schema, and data that
>>                 populate the tables.
>>
>>                 The input to an R2RML mapping has to include the
>>                 actual data, because otherwise how could a
>>                 transformed form of the data be part of the mapping's
>>                 output? So the input is indeed a relational database.
>>
>>                 On the other hand, an R2RML mapping is *specific* to
>>                 an RDB schema. That is, it only works with an input
>>                 database that conforms to a certain schema (contains
>>                 certain tables and columns). Let's call that schema
>>                 the “input schema” of the mapping. One could then say
>>                 that the input to a mapping is any database that
>>                 conforms to the input schema. In other word, the
>>                 domain of an R2RML mapping is the set of all
>>                 databases that conform to the mapping's input schema.
>>
>>                 I think the notion of an input schema is actually
>>                 really valuable for writing the spec. For example, it
>>                 allows us to say things like, “the SQL query in a
>>                 TriplesMap MUST be a SELECT query that can be validly
>>                 executed over the input schema.”
>>
>>                 Richard
>>
>>
>>
>>
>
>

Received on Thursday, 14 October 2010 01:10:56 UTC