Re: (compatibility) proposal to resolve ISSUE-137

My proposal addresses ISSUE-137
  http://www.w3.org/2007/OWL/tracker/issues/137
which states:

*****
In OWL 1 one could have Ontology A, B with A importing B.

A:  :foo rdf:type rdfs:Class
B:  :foo rdf:type owl:Class

In OWL 2, A  would be rejected as syntactically invalid because no part
of the reverse mapping handles the single triple with rdfs:Class 

An analogous situation arises with rdf:Property
*****

and the use case in 
  http://lists.w3.org/Archives/Public/public-owl-wg/2008Aug/0225.html
which is:

*****
> Further, I expect that almost all RDF graphs that contain
>
> 	ex:foo rdf:type rdf:Property
>
> will also use ex:foo *as* a property, perhaps like
>
> 	ex:subject ex:foo ex:object
>
> The proposed change would not result in graphs like this being
> acceptable OWL 2 DL.

If there is another declaration somewhere else in the imports closure  
that declares foo as an ObjectProperty, DatatypeProperty, or  
AnnotationProperty, then this graph will be acceptable. That is the  
expected use case.
*****

These do not address *imported* ontologies - they only address
*importing* ontologies.   My proposal addresses the issue and the use
case above, *not* anything else.

peter




From: Alan Ruttenberg <alanruttenberg@gmail.com>
Subject: Re: (compatibility) proposal to resolve ISSUE-137
Date: Fri, 22 Aug 2008 09:54:58 -0400

> Not surprisingly, this is a better solution to the problem. Thanks.
> 
> On Aug 22, 2008, at 9:08 AM, Peter F. Patel-Schneider wrote:
> 
> > Because ISSUE-137 involves backward compatibility, it is worthwhile to
> > try to do something that might otherwise not be indicated.
> >
> > The basic idea of this proposal is to remove extraneous rdfs:Class and
> > rdf:Property typing triples on URIs if (and only if) there is a
> > declaration in the imports closure that makes the typing triple redundant.
> >
> > So the graph
> > 	ex:foo rdf:type rdf:Property
> > would not be covered, but
> > 	_:x rdf:type owl:Ontology
> > 	_:x owl:imports ex:ontology
> > 	ex:foo rdf:type rdf:Property
> > 	ex:subject ex:foo ex:object
> > would be covered if the graph at ex:ontology looked something like
> > 	ex:foo rdf:type owl:ObjectProperty
> 
> Just to clarify, the expected situation would be something more like:
> 
> 	ex:foo rdf:type rdf:Property
> 	ex:subject ex:foo ex:object
> 
> would be covered if the graph was located at ex:ontology and the
> following ontology imported it.
> Ontology(ex:cleanup
>      Import(ex:ontology)	
>      Declaration(ObjectProperty(ex:foo))

This is a very different expected situation.  My proposal does not
address this, as it only speaks to ISSUE-137 and the use case previously
espoused.

> Note that even prior to this proposed change, the graph at ex:ontology
> could have been
> 	ex:subject ex:foo ex:object
> 
> -Alan
> 
> > The only change would be to the reverse mapping.  It would go
> > something
> > like:
> >
> > 1/ Remove Table 4 and the paragraph just before it.
> >
> > 2/ Add
> >
> > *************
> > Section 3.3+ Backwards Compatability for Typing Triples
> >
> > Next, for backwards compatibility with OWL DL, certain redundant
> > rdf:type triples are removed from G.
> >
> > Table X. Triples to be Deleted for Backwards Compatibility with OWL DL
> >
> > If AllDecl(O) contains this declaration ...
> > 	... then these triples are deleted in G, if present.
> >
> > Declaration(Class(*:x))
> > 	*:x rdf:type rdfs:Class
> >
> > Declaration(Datatype(*:x))
> > 	*:x rdf:type rdfs:Class 	
> >
> > Declaration(ObjectProperty(*:x))
> > 	*:x rdf:type rdf:Property
> >
> > Declaration(DataProperty(*:x))
> > 	*:x rdf:type rdf:Property
> >
> > Declaration(AnnotationProperty(*:x))
> > 	*:x rdf:type rdf:Property
> >
> >
> > Table Y. More Triples to be Deleted for Backwards Compatibility with
> > OWL DL
> >
> > If G contains this pattern ....
> > 	... then these triples are deleted in G.
> >
> > x rdf:type owl:Ontology 	
> > 	x rdf:type owl:Ontology 	
> >
> > x rdf:type owl:DataRange
> > x rdf:type rdfs:Class 	
> > 	x rdf:type rdfs:Class
> >
> > x rdf:type owl:Restriction
> > x rdf:type rdfs:Class 	
> > 	x rdf:type rdfs:Class
> >
> > x rdf:type owl:Restriction
> > x rdf:type owl:Class 	
> > 	x rdf:type owl:Class
> >
> > x rdf:type rdf:List
> > x rdf:first y
> > x rdf:rest z 	
> > 	x rdf:type rdf:List
> >
> > *************
> >
> > peter

Received on Friday, 22 August 2008 14:07:44 UTC