W3C home > Mailing lists > Public > public-rdb2rdf-wg@w3.org > August 2011

Re: Non-Turtle mapping documents (ISSUE-57)

From: Ivan Herman <ivan@w3.org>
Date: Wed, 10 Aug 2011 07:15:01 +0200
Cc: public-rdb2rdf-wg@w3.org, "Sundara,Seema" <seema.sundara@oracle.com>, Ashok Malhotra <ashok.malhotra@oracle.com>
Message-Id: <06AD69DF-996B-40B0-B608-87C0F1B26F72@w3.org>
To: Souripriya Das <SOURIPRIYA.DAS@oracle.com>
Souri,

The R2RML case reminds me of the OWL 2 discussion: OWL 2 is defined in terms of abstract concepts and these concepts can be serialized using different serialization formats. The OWL 2 case is even more complicated than R2RML in the sense that the abstract concepts are not defined in terms of RDF graphs, though OWL 2 can be mapped, back and forth, to RDF. The question that arose was: what serialization formats should an OWL 2 reasoner use and/or accept. The solution that WG accepted was: a reasoner MAY accept any standard (or documented) serialization format (RDF/XML, Turtle, OWL/XML, Manchester syntax), but it MUST accept RDF/XML. In other words, users may trust that there is at least one serialization that is accepted across the board.

As I said, R2RML is easier because, in abstract, it is defined in RDF terms. So we have to consider RDF serializations only. But the same question does arise: which format would users rely on across the board? Hence, I think, what we have in document is sensible (though I am not sure this is there in so many words): an R2RM processor MAY accept any documented serialization format of RDF (RDF/XML, Turtle, RDFa, maybe later some JSON format), but it MUST accept XXX.

My question is: is the Oracle problem with the general principle or with the choice of XXX=Turtle?

Ivan

On Aug 9, 2011, at 17:36 , Souripriya Das wrote:

> Oracle objects to reopening of ISSUE-57 for the following reason:
> 	• Making support for Turtle a prerequisite to support for R2RML seems inappropriate.
> 	• A conforming implementation for R2RML should be free to support one or more of the available syntaxes for RDF and expect that R2RML mapping specifications will be presented to it using such a syntax. (User may use available tools to do the translation to the appropriate syntax, if necessary. In practice, conforming implementations will provide support for popular syntaxes for RDF -- not necessarily limited to Turtle.)
> 	• For tests specified in Turtle, an implementation should have the option of using available translators to translate the tests to a different syntax (e.g., N-Triple) and then run the tests. As long as the output of (say {?S ?P ?O}) query is as expected, the implementation is conformant to R2RML.
> Thanks,
> - Souri.
> 
> Richard Cyganiak wrote:
>> Hi Sören,
>> 
>> On 25 Jul 2011, at 14:31, Sören Auer wrote:
>>   
>> 
>>>> You can encode an R2RML mapping graph in any syntax you like, and it's still a conforming R2RML mapping graph. (It may just not be a conforming R2RML mapping *document*, which is a different concept and a stronger claim.)
>>>>       
>>>> 
>> ...
>>   
>> 
>>> Ok, with the distinction between mapping document and mapping graphs it
>>> might not be a contradiction, but this is quite confusing to the reader.
>>> I would omit this distinction (and remove the term mapping document
>>> altogether) and just write "A conforming R2RML processor MUST accept an
>>> R2RML mapping graph serialized in Turtle syntax."
>>>     
>>> 
>> 
>> Dropping the definition of R2RML mapping document and adding this requirement would work in principle.
>> 
>> Another option would be to define R2RML mapping document as *any* document in *any* RDF syntax that can be parsed to an R2RML mapping graph; and requiring that processors MUST be able to process any such document that uses the Turtle syntax.
>> 
>> However, I'm not so happy with either of these options. Factors to consider here:
>> 
>> First, in everyday work, people will have to deal with actual R2RML documents (which would probably be Turtle). So from my POV it makes sense to define a term that corresponds to this intuitive notion in the spec.
>> 
>> Second, given that Turtle support is required to ensure interoperability, and given that our test suite consists of R2RML mapping documents (in Turtle), I feel that it's important to actually have a well-defined term that corresponds to this set of interoperable exchange artefacts.
>> 
>> How about the following compromise:
>> 
>> 1. Rename "R2RML mapping document" to "R2RML mapping document in Turtle" to reduce the confusion with the similar-looking term "R2RML mapping graph"
>> 
>> 2. Add a Note in an appropriate place that points out the difference between "R2RML mapping document in Turtle" and "R2RML mapping graph", perhaps along these lines:
>> 
>> [[
>> Note: The main exchange format for R2RML recommended in this specification is the "R2RML mapping document in Turtle", and any conforming R2RML processor MUST support it.
>> 
>> However, some implementations may require exchange of R2RML mappings in other ways, such as RDF/XML or through the SPARQL protocol or through an RDF API. R2RML mappings are expressed in RDF to enable this flexibility.
>> 
>> This specification defines the notion of an abstract "R2RML mapping graph" to enable other modes of exchanging RDF graphs beside Turtle.
>> ]]
>> 
>> Would that solve the confusion that you pointed out?
>> 
>> Best,
>> Richard
>>   
>> 


----
Ivan Herman, W3C Semantic Web Activity Lead
Home: http://www.w3.org/People/Ivan/
mobile: +31-641044153
PGP Key: http://www.ivan-herman.net/pgpkey.html
FOAF: http://www.ivan-herman.net/foaf.rdf
Received on Wednesday, 10 August 2011 05:13:14 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 21:00:26 UTC