- From: Peter F. Patel-Schneider <pfps@research.bell-labs.com>
- Date: Sun, 04 Nov 2007 08:42:43 -0500 (EST)
- To: schneid@fzi.de
- Cc: public-owl-dev@w3.org
From: "Michael Schneider" <schneid@fzi.de> Subject: RE: [OWLWG-COMMENT] Punning and the "properties for classes" use case Date: Fri, 2 Nov 2007 20:37:16 +0100 > Hi Peter! > > Before I answer to your complete mail, I would like to inquire some > information about the following point: > > Peter F. Patel-Schneider wrote: > > > I wrote: > > > >> Let's regard for example the following situation: > >> > >> (1) <c1> a owl:Class . > >> (2) <p> a owl:ObjectProperty . > >> (3) <c1> <p> <x> . > > > >In OWL 1.1 > > > > Declaration(OWLClass(c1)) > > Declaration(ObjectProperty(p)) > > ObjectPropertyAssertion(p c1 x) > > > >which should also have > > > > Declaration(Individual(c1)) > > Declaration(Individual(x)) > > > >> While OWL-1.0-DL will not allow this combination of axioms, > > > >Not true, > > > > Class(c1) > > ObjectProperty(p) > > Individual(c1 value(p x)) > > > >is valid OWL DL abstract syntax. (It is true that the RDF translation > >for this OWL DL KB is not defined.) > > If it wasn't you, I would have immediately answered that this is a syntax > error. But now I am confused. In the above three Abstract Syntax expressions > you state, the name "c1" appears both in a "Class()" expression and in a > "Individual()" expression. This is clearly against the "strictly separated > parts of the OWL universe" semantics in OWL-DL, and Abstract Syntax is not > used for OWL-Full, so this should definitly not be accepted by an OWL-DL > parser. >From OWL S&AS, Section 4.2 **************************** Definition: A collection of OWL DL ontologies and axioms and facts in abstract syntax form, O, has a separated vocabulary if 1. the ontologies in O, taken together, do not use any URI reference as more than one of a class ID, a datatype ID, an individual ID, an individual-valued property ID, a data-valued property ID, an annotation property ID, an ontology property ID, or an ontology ID; 2. the ontologies in O, taken together, provide a type for every individual ID; 3. the ontologies in O, except as the values of annotations, only use the class-only vocabulary as class IDs; only use the datatype-only vocabulary as datatype IDs; only use rdfs:Literal in data ranges; only use the property-only vocabulary as datavaluedProperty IDs, individualvaluedProperty IDs, or annotationProperty IDs; only use the built-in classes as class IDs; only use the built-in datatypes as datatype IDs; only use the built-in annotation properties as annotationProperty IDs; only use the built-in ontology properties as ontologyProperty IDs; and do not mention any disallowed vocabulary. Definition: An RDF graph is an OWL DL ontology in RDF graph form if it is equal (see below for a slight relaxation) to a result of the transformation to triples above of a collection of OWL DL ontologies and axioms and facts in abstract syntax form that has a separated vocabulary. For the purposes of determining whether an RDF graph is an OWL DL ontology in RDF graph form, cardinality restrictions are explicitly allowed to use constructions like "1"^^xsd:integer so long as the data value so encoded is a non-negative integer. ********************************** However, these are not restrictions on OWL DL, per se, just on translating OWL DL ontologies into RDF. > I'm afraid that I do not know any OWL-DL validator for Abstract > Syntax, otherwise I could easily check. But even if it turned out to be > allowed, I would rather think that this is a bug in the OWL spec, not an > intended feature. Or is there some intention behind this? Well, a simple examination of the section of OWL S&AS on the grammar for the OWL DL abstract syntax would show that non-separated vocabularies are allowed. There was an intention, in my mind at least, to explicitly allow non-separated vocabularies in OWL DL. > Cheers, > Michael peter
Received on Sunday, 4 November 2007 13:53:41 UTC