W3C home > Mailing lists > Public > public-owl-dev@w3.org > October to December 2007

Re: [OWLWG-COMMENT] Punning and the "properties for classes" use case

From: Evren Sirin <evren@clarkparsia.com>
Date: Sat, 03 Nov 2007 21:36:15 -0400
Message-ID: <472D220F.5050605@clarkparsia.com>
To: Michael Schneider <schneid@fzi.de>
CC: public-owl-dev@w3.org, jjc@hpl.hp.com, alanruttenberg@gmail.com

On 11/2/07 3:23 PM, Michael Schneider wrote:
> Hi, Evren!
> Evren Sirin wrote on November 02, 2007:
>> Michael,
>> You are correct in your understanding of punning. It is true that 
>> punning semantics is strictly weaker than OWL-Full semantics and the 
>> inferences you will get will be a subset of OWL Full entailments. But 
>> what is the alternative? Without punning, any ontology where 
>> classes are 
>> used as instances will not be allowed in OWL-DL and rejected by OWL-DL 
>> reasoners. So you have to use an OWL-Full reasoner which means you are 
>> stuck with incompleteness (I'm not aware of any OWL-Full reasoner) and 
>> depending on which OWL-Full reasoner you use incompleteness come from 
>> different parts (e.g. some reasoners doesn't support 
>> owl:sameValuesFrom, 
>> others don't support owl:oneOf, etc.). At least with punning you know 
>> what causes the incompleteness. 
> If metamodelling brings us away from decidability 

No, not at all. You are confusing decidability and completeness. 
Metamodeling provided by punning does not cause undecidability. 
Metamodeling features of OWL-Full, however, makes OWL-Full undecidable. 
There are other reasons for OWL-Full's undecidability (e.g. cardinality 
restrictions on transitive properties) but OWL-Full metamodeling itself 
is undecidable. See Motik et al'.s paper [1] on the subject.

On the other hand, you can have sound and complete reasoners for an 
undecidable logic (there are many for FOL) but there does not exist a 
complete reasoner for OWL-Full. The point I was trying to make was, with 
the current definition of OWL-DL and OWL-Full, using any kind of 
metamodeling features puts you in OWL-Full species for which there is no 
complete reasoner. By relaxing the restrictions on OWL-DL we get a 
decidable language for which there are many sound and complete (w.r.t. 
OWL-DL semantic) reasoners. On the down side, the inferences produced by 
these reasoners will not be complete w.r.t. OWL-Full semantics but this, 
in my opinion, is not such a high price to pay.

> (this is the real problem,
> right?), then I see two alternatives:
>   (1) Stop hunting for metamodelling capabilities in OWL-1.1-DL.
>       Metamodelling, even in a restricted form, would really be 
>       a useful feature, but the community has already learnt 
>       to live with the current situation.

No, not really. The workarounds for vocabulary separation is ugly and 
cumbersome. I will give you one example related to OWL-S effort [2] but 
there are other similar use cases. OWL-S coalition worked hard to keep 
OWL-S ontologies in the DL species to make it accessible to OWL-DL 
reasoners. This meant to create a shadow list for rdf:List vocabulary 
quoting URI's and RDF/XML snippets as literal values, etc. This rather 
ugly solution created many problems for developers (e.g. me as the 
developer of OWL-S API [3]) and users of OWL-S (see [4] about one 
example problema). With the use of punning all these troubles go away. 
And the incompleteness regarding sameAs-equivalentClass has no 
importance in this setting.

>   (2) Add general metamodelling (not necessarily complete OWL-Full support)
>       to OWL-1.1-DL, and remove the requirement for decidability.
> My personal preference would be to go the (1)-way for OWL-1.1-DL, as a fast,
> save and conservative solution. And then (later) start thinking about an
> additional language somewhere in the middle between OWL-1.1-DL and
> OWL-1.1-Full, which I would call "OWL-UseFull". ;-) This language would have
> a few additional most-wanted features (like metamodelling), but it does not
> allow you to build any of those scary (and useless) constructs, which you
> can actually build in OWL-Full.

> A caveat would be that decidability could then not be a requirement anymore.
> But I would not stop thinking about this proposal from the start on. One
> would have to determine if this brings real problems in /practice/. In fact,
> there is a lot of useful software around for undecidable problems, without
> getting into practical problems, as long as this software is used in a
> meaningful way (parser generators, type checkers for the Haskell language,
> automatic reasoners for FOL and HOL, computer algebra systems).
>> I might be wrong but I'm not aware of 
>> anything other than sameAs-equivalentClass (and possibly 
>> equivalentProperty) relation that would cause the punning semantics 
>> incomplete w.r.t OWL-Full semantics.
> I think this alone already suffices, no need to look for more. :)

I disagree. Punning solves the problems in the above use case and the 
sameAs-equivalentClass distinction has no impact. There were other 
similar use cases discussed at OWLED from different domains where 
punning would be sufficient.
>> I'd be interested in seeing if 
>> there is any other use case where punning semantics does not entail 
>> everything OWL-Full semantics does.
>> FWIW, punning has been implemented in Pellet for years and I don't 
>> remember any of our users calling it "confusing" or "useless".
> That's interesting to hear, I did not know this. But has this also been a
> feature in Pellet which has been /applied/ by /many/ users for years? 
>> I believe 
>> it is more of a personal style choice to use punning (it might be 
>> confusing for some people but not others). I think it is a 
>> viable option 
>> for "properties for classes" use case (though I'd personally call it 
>> classes as instances use case)
> Yes, better. And in fact, the property discussion in my mail was a little
> bit redundant. Though my intended message was in effect that with punning it
> is easy to believe that one can assign a property to a class, while one
> actually assigns it to some equally named, but possibly completely different
> individual resource. Now, after Alan's answer, I am not certain anymore, if
> it is still possible that an individual can be different from an
> equally-named class. This is a core question to me.

Sorry, I'm not sure I understand the problem here. I thought the problem 
you are pointing out is that the axioms you list as

(4) <c2> owl:sameAs <c1> .
(6) <i> a <c1> .
(7) <c2> rdfs:subClassOf <d> .

does not entail

(8) <i> a <d> .

which is exactly the same thing mentioned in the "Next steps for OWL" 
paper you cited (see the example at the end of page 3).
>> because most of these use cases do not 
>> depend on sameAs-equivalentClass relation.
> I think that this relation is so fundamental, that you cannot really avoid
> to stumble over it ever and ever again. Perhaps, I will come up with other
> examples in the future, which demonstrate the /practical/ problems (but not
> before my headache produced by this topic has gone away again ;-)).

Hopefully this message won't give you more headaches :)


[2] http://www.daml.org/services/owl-s/
[3] http://www.mindswap.org/2004/owl-s/api/
[4] http://tech.groups.yahoo.com/group/jena-dev/message/6979

>> Cheers,
>> Evren
> Cheers,
> Michael
> --
> Dipl.-Inform. Michael Schneider
> FZI Forschungszentrum Informatik Karlsruhe
> Abtl. Information Process Engineering (IPE)
> Tel  : +49-721-9654-726
> Fax  : +49-721-9654-727
> Email: Michael.Schneider@fzi.de
> Web  : http://www.fzi.de/ipe/eng/mitarbeiter.php?id=555
> 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 Regierungspräsidium Karlsruhe
> Vorstand: Rüdiger Dillmann, Michael Flor, Jivka Ovtcharova, Rudi Studer
> Vorsitzender des Kuratoriums: Ministerialdirigent Günther Leßnerkraus
Received on Sunday, 4 November 2007 01:36:30 GMT

This archive was generated by hypermail 2.3.1 : Wednesday, 27 March 2013 09:32:55 GMT