Re: OWL S&AS: Translation to RDF Graphs

On 16 Jun 2003 22:43:18 -0500
Dan Connolly <connolly@w3.org> wrote:

> On Fri, 2003-05-09 at 13:33, Dave Beckett wrote:
> >   OWL Web Ontology Language Semantics and Abstract Syntax
> >   W3C Working Draft 31 March 2003
> > 
> >   4.1. Translation to RDF Graphs
> >   http://www.w3.org/TR/2003/WD-owl-semantics-20030331/mapping.html#4.1
> > 
> > This transformation table gives the mapping from OWL's abstract
> > syntax to RDF triples which means that if you have an OWL ontology in
> > the abstract syntax you can write it in OWL's transfer syntax - RDF triples.
> > 
> > It is however more difficult to see how to go from RDF triples to
> > OWL's abstract syntax.  As a semantic web technology, OWL builds on
> > RDF triples (and RDF on XML for syntax, URIs etc.) and this form of
> > presentation makes it harder to see how to start with RDF and gain
> > from OWL vocabulary.
> 
> Discussion of whether and how to specify mappings between OWL abstract
> syntax and RDF graph syntax is the subject of this issue:
> 
>   5.26-OWL DL Sytntax

[spelling?]

>   http://www.w3.org/2001/sw/WebOnt/webont-issues.html#I5.26-OWLDLSyntax
> 
> The working group discussed various alternatives, but eventually
> decided, 27 March 2003, on the design in the last call document.
> Note the outstanding dissent:
> 
>   5.26 OWL DL Syntax - Formal Objection
>   From: Jeremy Carroll (jjc@hpl.hp.com)
>   Date: Fri, Mar 28 2003
>   http://lists.w3.org/Archives/Public/www-webont-wg/2003Mar/0264.html
> 
> While the points in your comment are well-made, they don't seem
> to provide new information which would justify reopening
> the issue.

I have to admit I haven't implemented an "OWL parser" - i.e. from RDF
triples to OWL's abstract syntax (as Sean attempts later).  But that is
because I felt it was underspecified in the current OWL WDs and
therefore looked challenging to attempt, as I raised in the issue.

> You may be interested in continued related work, meanwhile...
> 
> 
> > In detail:
> > 
> >  1) This presentation may make it hard to see how to transfer OWL -
> >    from the transfer syntax (RDF triples) to the OWL abstract syntax.
> > 
> >    Running the (non-deterministic!) mapping rules backwards seems the
> >    only way and is up to each implementer to work out how to do that.
> >    Giving this mapping explicitly would be beneficial.  If it depends
> >    on the OWL subset in use, this should also be described.  All of
> >    this should preferably have and be linked to test cases.
> 
> You may be interested in some related work by individuals in the
> working group:
> 
> Parsing OWL, Sean Bechhofer, University of Manchester, June 02 2003
> http://wonderweb.semanticweb.org/owl/parsing.shtml

This document gives useful information and some (new?) evidence that the
mapping is hard to work out since after the extensive work in Sean's
document it is described how it is still insufficient:

  "Note that this is not intended as a complete specification, but
  hopefully provides enough information to point the way towards how
  one would build a parser that will deal with a majority of (valid)
  OWL ontologies."

If the OWL documents provided this information, there would be no
need for this partial mapping to be worked out by each person.

> While this doesn't provide an actual specification of the reverse
> mapping, it does "describe a basic strategy that could be used ...
> to construct an OWL ontology that corresponds to the triples
> represented in the RDF"

The rest of the paper from "Implementation" onwards deals with the
practical problems in figuring out how to get OWL out of its
transfer syntax.

> 
> 
> >  2) It is not clear from this mapping what restrictions there are on
> >    any existing RDF such that it would already be legal OWL DL or OWL
> >    Lite (apart from trying it out with an OWL validator).
> > 
> >    If the path from RDF to anything but OWL Full is not clear, it
> >    seems that it is unlikely that benefits of OWL DL or OWL Lite will
> >    be wholly realised.
> 
> In order to clarify the path from RDF to OWL DL,
> informative section is being added to the OWL Reference:
> 
>   Appendix E. Rules of Thumb for OWL DL ontologies
>   http://www.daml.org/2002/06/webont/owl-ref-proposed#app-DLinRDF

That looks useful - thanks for adding it - but it is not about the
mapping from RDF triples to OWL and as an appendix at the end of an
informative document cannot be taken as definitive.

  Aside: please add a link to "the characterization given in S&AS"

> 
> >  3) The optional and non-deterministic mappings to/from triples are a
> >    bad idea that are likely to cause interoperability problems and
> >    make the mappings harder.  I urge you to consider removing such
> >    non-determinism.
> 
> Note that "non-deterministic" does not mean "not completely specified";
> it just means "not 1-1"; i.e. one abstract syntax structure corresponds
> to a number of RDF graphs. For example, for the intersection
> of classes A, B, and C, it doesn't matter what order they appear
> in an RDF collection.
> 
> Taken literally, your request is to specify that exactly one RDF
> graph is allowed for any OWL abstract syntax structure. Could
> you confirm that this is what you're suggesting? It seems unlikely.

No.

I was (maybe poorly) suggesting that where possible the optional and
non-deterministic mappings be minimized, removal being the extreme.

Sean's document above does outline the issues with choosing between
these mapping choices, but none of the OWL documents do explicitly.
Sean and others will have to divine this out of the S&AS mapping.

> 
> 
> >      I note that several of these are related to having owl:Class and
> >      rdfs:Class, a separate issue.
> > 
> > Thanks
> > 
> > Dave
> 
> Please let us know if you find this response satisfactory.


No I do not.

It seems that each implementor will still have to work hard to
reverse-engineer the mapping that OWL specifies and potentially meet
interoperability problems.  Providing half of a complex mapping
between an abstract syntax to/from a concrete syntax seems
insufficient to me.

This lesson was hard-won from RDF Model & Syntax underspecifying how to
go from RDF's concrete syntax (RDF/XML) to it's abstract one (triples).
(The mapping from abstract to concrete remains easy for RDF, modulo some
implementation detail).
We are still feeling the pain, and it would be a bad idea to repeat it.

Maybe you do have multiple interoperable implementations of the mapping
from OWL's concrete syntax (RDF triples) to OWL's abstract syntax and I
am just unaware of them.  If that is the case, then I would be more satisfied.

In terms of other less-satisfactory changes to address this, you could
add some large and prominent "health warning" such as to S&AS 4 "Mapping
to RDF Graphs" noting the issues on mapping from RDF triples to OWL and
note how you must figure it out yourself by decoding the mathematics (not
exactly what parser writers want to hear). This should be in a normative
part of OWL's specification (i.e. S&AS) since the mapping is part of OWL

Dave

Received on Tuesday, 24 June 2003 10:33:18 UTC