W3C home > Mailing lists > Public > public-owl-wg@w3.org > April 2009

Issue with RDF encoding of inverse property axioms/expressions

From: Michael Schneider <schneid@fzi.de>
Date: Tue, 7 Apr 2009 16:25:23 +0200
Message-ID: <0EF30CAA69519C4CB91D01481AEA06A0011DA911@judith.fzi.de>
To: <public-owl-wg@w3.org>
All!

While reviewing the RDF Mapping, I found the following issue, which I think is worth being presented in a separate mail.

The basic observation is that "inverse property" expressions and axioms may have the same form in RDF. AFAICS, this may lead to a problem with the mapping. For example, consider (ommitting declarations):

  _:x owl:inverseOf :p .
  _:x owl:inverseOf :q .

I would normally expect that this is a legal OWL 2 DL ontology (in RDF graph form). The first problem is, however, what the corresponding FS ontology will be. Is it

  InverseObjectProperties( ObjectInverseOf(:p) :q )

or

  InverseObjectProperties( ObjectInverseOf(:q) :p )  

? Well, at least semantically, this would not be a problem, because both axioms have the same meaning.

However, when looking at the mapping rules, it turns out that the RDF graph above does not even map.

Table 11 about object property expressions defines:

  IF
    _:x owl:inverseOf *:y .
    { OPE(_:x) = ε and OPE(*:y) ≠ ε }
  THEN
    OPE(_:x) = ObjectInverseOf( OPE(*:y) )

And Table 16 on axiom parsing defines:

  IF
    x owl:inverseOf y .
    { OPE(x) ≠ ε and OPE(y) ≠ ε } 	
  THEN the following axiom is added to O_G
    InverseObjectProperties( OPE(x) OPE(y) ) 

First, the canonicial parsing process uses Table 11 to construct the "OPE(.)" function. WLOG (for symmetric reasons), the first of the two triples in the graph is chosen. This leads to 

  OPE(_:x) = ObjectInverseOf( OPE(:p) )

Afterwards, the first triple is removed from the graph.

The second triple won't be chosen anymore, since now OPE(_:x) != epsilon. Fine!

Now, the canonical parsing process tries to use Table 16 to build an axiom. However, the remaining (2nd) triple cannot be mapped, since OPE(_:x) != epsilon.

So this graph cannot be mapped. :(

How do we cope with this? IMO, the easiest way is to just leave things as they are: An RDF graph as the one above is not a valid OWL 2 DL ontology. I think, that's fine, because, AFAIU, it hasn't been a valid OWL 1 ontology, either.

What do you think?
 
Michael 

--
Dipl.-Inform. Michael Schneider
Research Scientist, Dept. Information Process Engineering (IPE)
Tel  : +49-721-9654-726
Fax  : +49-721-9654-727
Email: michael.schneider@fzi.de
WWW  : http://www.fzi.de/michael.schneider
=======================================================================
FZI Forschungszentrum Informatik an der Universität Karlsruhe
Haid-und-Neu-Str. 10-14, D-76131 Karlsruhe
Tel.: +49-721-9654-0, Fax: +49-721-9654-959
Stiftung des bürgerlichen Rechts, Az 14-0563.1, RP Karlsruhe
Vorstand: Prof. Dr.-Ing. Rüdiger Dillmann, Dipl. Wi.-Ing. Michael Flor,
Prof. Dr. Dr. h.c. Wolffried Stucky, Prof. Dr. Rudi Studer
Vorsitzender des Kuratoriums: Ministerialdirigent Günther Leßnerkraus
=======================================================================



Received on Tuesday, 7 April 2009 14:26:08 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 7 April 2009 14:26:08 GMT