RE: Xtreme Punning

Hi Bijan!

Bijan Parsia wrote:

>On Jan 11, 2008, at 9:17 AM, Michael Schneider wrote:
>
>> Here's a little OWL I wrote,
>> Your reasoner will check it node for node.
>> Don't worry, it will be happy!
>>
>>     ex:foo rdf:type ex:foo .
>>     ex:foo ex:foo ex:foo .
>>     ex:foo ex:foo "ex:foo"^^ex:foo .
>
>Yes, that's legal. It's legal in RDF too. 

/Syntactically/ legal in RDF, yes. (Well, it's actually a syntactically
correct RDF graph...)

And, thanks to Pat in another post to Gerd Wagner, I now see that it is even
semantically consistent in RDFS. I have been wondering today whether
rdfs:Class and rdf:Property are disjoint classes in the RDF universe. But
Pat told Gerd that a resource can have both a class extention and a property
extention, what I did not know. 

Of course, my example is also clearly consistent in OWL-1.1-DL+Punning.

>Whether one considers it  
>happy, even as a degenerate case, is a different issue. Consider:
>
>	rdf:type rdf:type rdf:type.
>
>Which is legal in RDF and OWL Full (but not, I believe, in OWL 1.1,  
>because we don't, IIRC, have built-in syntax punning, though we could).

Again, syntactically legal in RDF & Friends.

And I believe it is *also* syntactically legal in OWL-1.1-DL. At least, I
don't see anything in the current WDs which speaks against (there isn't much
said about punning in the WDs, anyway). And technically, there is no problem
to un-pun this triple to:

    rdf:type_ind rdf:type rdf:type_cls .

So the reverse RDF mapping should give me from the original triple (and all
the necessary declaration triples): 

    Declaration(Individual(rdf:type))
    Declaration(OWLClass(rdf:type))
    ClassAssertion(rdf:type rdf:type)

or in un-punned form:

    Declaration(Individual(rdf:type_ind))
    Declaration(OWLClass(rdf:type_cls))
    ClassAssertion(rdf:type_ind rdf:type_cls)

The WG could of course decide to explicitly exclude OWL/RDF syntax
vocabulary from punning. I have at the moment no opinion whether this would
be wise or not.

>One strong motivation for punning in OWL 1.1 was to make more RDF  
>graphs legal and to give them a reasonable and implementable semantics.

I would have thought that in OWL 1.0-DL one strong motivation has been to
make many "undesirable" RDF graphs syntactically illegal. For example, the
graphs

  (R11) <x> rdf:type <y> .
  (R12) <y> rdf:type <z> .

  (R21) <x> rdf:type owl:DatatypeProperty .
  (R22) <x> rdf:type owl:ObjectProperty .

  (R31) <x> rdf:type <y> .
  (R32) <x> <y> <z> .

are all syntactically illegal in OWL-1.0-DL, since in order to be
syntactically legal, the following two conditions must be fulfilled by an
RDF graph [1]:

  1) There must be an abstract syntax ontology which can be RDF-mapped to
this graph.
  
  2) The respective abstract syntax ontology must have a separated
vocabulary.

While condition 1) is always fulfilled by the above example graphs,
condition 2) is never. 

The interesting part here is, of course, point 2), which is just the part
that makes punned RDF graphs -- and only those, AFAICT -- syntactically
invalid. So it's true: OWL-1.1-DL+Punning will really succeed in making more
ontologies given in RDF syntax syntactically legal -- namely those, which
have been explicitly made syntactically illegal in OWL-1.0-DL. :-)    

Btw, as you certainly know, there is an alternative characterization of
OWL-DL in chapter 5 of S&AS [2], which is provided there in the sections 5.2
and 5.4. It looks to me that there isn't any concept of "syntactically
illegality" in this definition of OWL-1.0-DL. If this is right, then /every/
RDF graph is a syntactically legal ontology according to this alternative
definition of OWL-1.0-DL. Instead, "illegality" is actually expressed
through semantical /inconsistency/, which one can see well in section 5.4:

   * LVI, IOT, IOC, IDC, IOOP, IODP, IOAP, IOXP, IL, and IX 
     are all pairwise disjoint.

   * For v in the disallowed vocabulary (Section 4.2), 
     SI(v) IN RI - (LVIuIOTuIOCuIDCuIOOPuIODPuIOAPuIOXPuILuIX).

Especially the second item is quite nice, because instead of syntactically
forbidding the use of the "disallowed" vocabulary, it is just thrown out to
semantical nirvana. :)

What I want to say here is that, according to my current understanding of
the OWL-DL characterization in chapter 5 of the S&AS, the above three RDF
graphs {(R1*)}, {(R2*)} and {(R3*)} are all perfectly syntactically legal,
but semantically inconsistent, according to the first item cited above.

So, this OWL-DL characterization, which does not know about syntax errors at
all, doesn't it perfectly address the wish for more syntactically valid RDF?
What more do we need? ;-)

>> When thinking about punning in OWL-1.1-DL, I always differentiated  
>> between
>> two "kinds" of punning:
>>
>>     * punning between individuals and classes,
>>     * punning between data properties and object properties.
>
>I'm afraid that's your own imposed differentiation. Punning has  
>always, technically speaking, been about having an nonseparated  
>vocabulary without imposing limits on how it was nonseparated 

Ok, granted! But for whatever reason I have the vague feeling that I am not
the only one on earth who has been subject to this kind of misunderstanding
in the recent past... :)

>(except  
>for the built-in vocab; which I think could be better handled, from a  
>user perspective, with an annotation space).
>
>[snip]
>
>Cheers,
>Bijan.

Cheers,
Michael

[1] http://www.w3.org/TR/owl-semantics/mapping.html#4.2
[2] http://www.w3.org/TR/owl-semantics/rdfs.html

--
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 Friday, 11 January 2008 23:51:50 UTC