- From: Michael Schneider <schneid@fzi.de>
- Date: Sat, 7 Jun 2008 16:51:09 +0200
- To: <public-owl-wg@w3.org>
- Cc: "Boris Motik" <boris.motik@comlab.ox.ac.uk>
- Message-ID: <0EF30CAA69519C4CB91D01481AEA06A096B302@judith.fzi.de>
Dear all! With this mail, I am trying to bring our discussion on ISSUE-104 (disallowed vocabulary) a step forward. I wrote on 2008-06-03 in <http://lists.w3.org/Archives/Public/public-owl-wg/2008Jun/0023.html>: >> (A) Backwards Compatibility: >> The set of disallowed vocabulary covers URIs, >> which were allowed to be used in OWL 1 DL. >> Hence, we have a backwards-compatibility issue. Boris Motik answered on Wednesday, June 04 in <http://lists.w3.org/Archives/Public/public-owl-wg/2008Jun/0028.html>: >I accept that (A) might be an issue. Before we decide on the way >forward, however, I would appreciate it is you could provide us >with a list of vocabulary that actually causes problems. And this is what I am doing hereby (even without having an official ACTION :-)). But before I come up with the list, I first want to state what my understanding of the situation is. The disallowed vocabulary in OWL 1 DL is specified as an explicit list of URIs in <http://www.w3.org/TR/owl-semantics/mapping.html#4.2> All the URIs in this section's first "Definition" are completely disallowed to be used in a custom way. So they may only occur as syntax elements. For example, it is disallowed in OWL 1 DL to state rdf:type rdf:type rdf:type since the URI 'rdf:type' does not only occur as a syntax element (middle position), but also as an individual (LHS) and as a class (RHS). There is a second "Definition" which itemizes a set of URIs which may at least be applied as classes or properties, respectively. So these URIs are only /restricted/ in their use within OWL DL ontologies, not completely disallowed. According to this, it is actually allowed to have, for example, the following statements in an OWL 1 DL ontology in RDF graph form: :w rdf:type rdf:Statement . :u rdf:_42 "Hello World!"^^xsd:string . AFAIU, every URI, which is not listed in this section, is actually allowed to be used in a completely unrestricted way. Below is a list of all existing URIs within the RDF, RDFS and OWL 1 namespace. According to the list, I may use the property 'rdf:value' in every way, which looks strange. Even more strange: Use of 'rdfs:Literal', 'owl:Thing' and 'owl:Nothing' is completely unrestricted, while use of 'rdfs:Datatype' and 'rdfs:Resource' is completely disallowed. Even 'owl:imports' may be used in an arbitrary way. I wonder whether this list has been properly reviewed by the old OWL WG. It seems pretty buggy to me. One can see that allowing the use of the reification vocabulary and parts of the container vocabulary was deliberate, since it is explicitly mentioned. But for many of the non-mentioned URIs it is at least unclear to me, why it should be allowed to use it in an unrestricted way. I think, one of the participants of the old OWL-WG should comment on this, so that we are able to proceed. Cheers, Michael == List of RDF(S) and OWL 1 vocabulary (ordered lexicographically) == Here is what the annotations mean: * "[ ]" custom use is disallowed (i.e. listed in first "Definition") * "[c]" may be used as a class (according to second "Definition") * "[p]" may be used as a property (according to second "Definition") * "[*]" unrestricted use allowed (URI not listed in section 4.2) === RDF vocabulary === * [p] rdf:_n // for n >= 1 * [c] rdf:Alt * [c] rdf:Bag * [ ] rdf:first * [ ] rdf:List * [ ] rdf:nil * [p] rdf:object * [p] rdf:predicate * [ ] rdf:Property * [ ] rdf:rest * [c] rdf:Seq * [c] rdf:Statement * [p] rdf:subject * [ ] rdf:type * [*] rdf:value * [*] rdf:XMLLiteral === RDFS vocabulary === * [ ] rdfs:Class * [*] rdfs:comment * [ ] rdfs:Container * [ ] rdfs:ContainerMembershipProperty * [ ] rdfs:Datatype * [ ] rdfs:domain * [*] rdfs:isDefinedBy * [*] rdfs:label * [*] rdfs:Literal * [ ] rdfs:member * [ ] rdfs:range * [ ] rdfs:Resource * [*] rdfs:seeAlso * [ ] rdfs:subClassOf * [ ] rdfs:subPropertyOf === OWL vocabulary === * [ ] owl:AllDifferent * [ ] owl:allValuesFrom * [ ] owl:AnnotationProperty * [*] owl:backwardCompatibleWith * [ ] owl:cardinality * [ ] owl:Class * [ ] owl:complementOf * [ ] owl:DataRange * [ ] owl:DatatypeProperty * [ ] owl:DeprecatedClass * [ ] owl:DeprecatedProperty * [ ] owl:differentFrom * [ ] owl:disjointWith * [ ] owl:distinctMembers * [ ] owl:equivalentClass * [ ] owl:equivalentProperty * [ ] owl:FunctionalProperty * [ ] owl:hasValue * [*] owl:imports * [*] owl:incompatibleWith * [ ] owl:intersectionOf * [ ] owl:InverseFunctionalProperty * [ ] owl:inverseOf * [ ] owl:maxCardinality * [ ] owl:minCardinality * [*] owl:Nothing * [ ] owl:ObjectProperty * [ ] owl:oneOf * [ ] owl:onProperty * [ ] owl:Ontology * [ ] owl:OntologyProperty * [*] owl:priorVersion * [ ] owl:Restriction * [ ] owl:sameAs * [ ] owl:someValuesFrom * [ ] owl:SymmetricProperty * [*] owl:Thing * [ ] owl:TransitiveProperty * [ ] owl:unionOf * [*] owl:versionInfo
Received on Saturday, 7 June 2008 14:51:51 UTC