Re: R2RML draft - new introduction

On Wed, Oct 13, 2010 at 1:11 PM, Richard Cyganiak <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 Wednesday, 13 October 2010 18:30:32 UTC