- From: Alan Ruttenberg <alanruttenberg@gmail.com>
- Date: Mon, 25 Jul 2011 03:28:44 -0400
- To: public-owl-comments@w3.org
- Message-ID: <CAFKQJ8=cyr4cZ87rNeCADp-tmXfxF2a-wAm6tUXVSXiFZsmmdg@mail.gmail.com>
It may be worth clarifying the following: http://www.w3.org/TR/2009/REC-owl2-syntax-20091027/#Declaration_Consistencysays: An ontology *O* is said to have *consistent declarations* if each IRI *I* occurring in the axiom closure of *O* in position of an entity with a type *T* is declared in *O* as having type *T*. OWL 2 ontologies are not required to have consistent declarations: an ontology *may* be used even if its declarations are not consistent. However, in the RDF parsing spec, it seems we *do* need declaration consistency. For example: _:x *rdf:type* *owl:Restriction* . _:x *owl:onProperty* y . _:x *owl:hasSelf* "true"^^*xsd:boolean* . { OPE(y) ≠ ε } ObjectHasSelf( OPE(y) ) Here we wouldn't say { OPE(y) ≠ ε } If declaration consistency was optional we would only need DPE(y) = ε, APE(y) = ε As it is now we have "At the end of this process, the graph *G* *must* be empty.". So if OPE(y) = ε these triples would not be parsed, we would end parsing the RDF with the "MUST" violated. That situation is potentially confusing [1] given "an ontology *may* be used even if its declarations are not consistent", although technically that statement would only apply to the *results* of the RDF parsing which are apparently always declaration consistent. Perhaps a note either in Syntax 5.8.2 or somewhere in Mapping to RDF Graphs. -Alan [1] http://sourceforge.net/tracker/?func=detail&aid=3015732&group_id=90989&atid=595534
Received on Monday, 25 July 2011 07:29:51 UTC