- From: Michael Hausenblas <michael.hausenblas@deri.org>
- Date: Wed, 10 Aug 2011 07:56:44 +0100
- To: Ivan Herman <ivan@w3.org>, Souripriya Das <SOURIPRIYA.DAS@oracle.com>, Ashok Malhotra <ashok.malhotra@oracle.com>
- Cc: W3C RDB2RDF <public-rdb2rdf-wg@w3.org>, Seema Sundara <seema.sundara@oracle.com>
> 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 understanding is that we're writing a specification that aims to set the standard in the area of RDB2RDF mapping. Not specifying a MUST here waters down the spec and cripples interoperability, hence ... [[ PROPOSAL: A R2RML processor MUST accept Turtle but MAY accept any RDF serialization (RDF/XML, NTriple, RDFa, etc.) ]] I must seriously wonder if we want to make this a blocker for LC? Is the problem to write a Turtle parser (if so, I'm happy to chip in with resources - heck I would even be willing to develop it myself if need be) or is it a principle problem with Turtle (but then again, who knows of a sane person that would write an R2RML mapping in RDF/XML, by hand?). Cheers, Michael -- Dr. Michael Hausenblas, Research Fellow LiDRC - Linked Data Research Centre DERI - Digital Enterprise Research Institute NUIG - National University of Ireland, Galway Ireland, Europe Tel. +353 91 495730 http://linkeddata.deri.ie/ http://sw-app.org/about.html On 10 Aug 2011, at 06:15, Ivan Herman wrote: > 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 06:57:27 UTC