- From: Michael Wessel <wessel@racer-systems.com>
- Date: Tue, 10 Nov 2009 11:02:44 +0100
- To: public-owl-comments@w3.org
- Cc: Marko Luther <luther@docomolab-euro.com>, Thorsten Liebig <thorsten.liebig@uni-ulm.de>, Olaf Noppens <Olaf.Noppens@uni-ulm.de>
- Message-Id: <200911101102.44954.wessel@racer-systems.com>
Hello,
to whom it may concern - I have prepared a ZIP archive which fixes some errors
/ omissions from the OWL primer knowledge bases in the various syntaxes
(attached). Some axioms were added here and there in order to make sure that
all three KBs contain the same set of axioms.
I am summerizing the errors and omissions I have found in the following
(or just use a diff tool, the original versions of the primer KBs are in the
subfolder orig of the archive, as of November 10, 2009):
*** Funtional syntax:
- missing datatype declaration
Declaration( Datatype( :minorAge ) )
- missing class assertion axiom
ClassAssertion( :Person :John )
- missing axioms
SameIndividual( :James :Jim )
*** OWL RDF syntax:
- missing datatype declaration
<rdfs:Datatype rdf:about="minorAge"/>
- missing axiom
<owl:ObjectProperty rdf:about="hasChild">
<owl:equivalentProperty rdf:resource="&otherOnt;child"/>
</owl:ObjectProperty>
- erroneous datarange specification:
<owl:DatatypeProperty rdf:about="hasAge">
<rdfs:domain rdf:resource="Person"/>
<rdfs:range
rdfs:Datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"/>
<owl:equivalentProperty rdf:resource="&otherOnt;age"/>
</owl:DatatypeProperty>
<owl:FunctionalProperty rdf:about="hasAge"/>
should read
<owl:DatatypeProperty rdf:about="hasAge">
<rdfs:domain rdf:resource="Person"/>
<rdfs:range>
<rdfs:Datatype rdf:about="&xsd;nonNegativeInteger"/>
</rdfs:range>
<owl:equivalentProperty rdf:resource="&otherOnt;age"/>
</owl:DatatypeProperty>
<owl:FunctionalProperty rdf:about="hasAge"/>
(I dont think that is a valid RDF/XML abbreviation - our XML/RDF parsers
complain here)
- bad axiom
<owl:Class rdf:about="Person">
<rdfs:comment>Represents the set of all people.</rdfs:comment>
<owl:equivalentClass rdf:resource="Human"/>
<owl:hasKey rdf:parseType="Collection">
<owl:ObjectProperty rdf:about="hasSSN"/>
</owl:hasKey>
</owl:Class>
should read
<owl:DatatypeProperty rdf:about="hasSSN"/>
- bad axiom
<owl:Class rdf:about="Orphan">
<owl:equivalentClass>
<owl:Restriction>
<owl:onProperty>
<owl:ObjectProperty>
<owl:inverseOf rdf:resource="hasChild"/>
</owl:ObjectProperty>
</owl:onProperty>
<owl:Class rdf:resource="Dead"/>
</owl:Restriction>
</owl:equivalentClass>
</owl:Class>
should read
<owl:allValuesFrom rdf:resource="Dead"/>
- different cardinality restriction than in the other
syntax versions of the KB:
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<owl:Class>
<owl:oneOf rdf:parseType="Collection">
<rdf:Description rdf:about="Mary"/>
<rdf:Description rdf:about="Bill"/>
<rdf:Description rdf:about="Meg"/>
</owl:oneOf>
</owl:Class>
<owl:Class rdf:about="Female"/>
</owl:intersectionOf>
<rdfs:subClassOf>
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<owl:Class rdf:about="Parent"/>
<owl:Restriction>
<owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">
2
</owl:maxCardinality>
<owl:onProperty rdf:resource="hasChild"/>
</owl:Restriction>
<owl:Restriction>
<owl:onProperty rdf:resource="hasChild"/>
<owl:allValuesFrom rdf:resource="Female"/>
</owl:Restriction>
</owl:intersectionOf>
</owl:Class>
</rdfs:subClassOf>
</owl:Class>
should read
<owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">
1
</owl:maxCardinality>
- missing same-as axiom for Jack:
<rdf:Description rdf:about="Jack">
<owl:sameAs rdf:resource="John"/>
...
*** OWL XML syntax:
- missing declaration
<Declaration>
<ObjectProperty IRI="hasHusband"/>
</Declaration>
- missing axiom
<FunctionalDataProperty IRI="hasAge"/>
- bad axiom
<HasKey>
<Class IRI="Person"/>
<ObjectProperty IRI="hasSSN"/>
</HasKey>
should read (?)
<HasKey>
<Class IRI="Person"/>
<DataProperty IRI="hasSSN"/>
</HasKey>
- missing axiom
<FunctionalDataProperty>
<DataProperty IRI="hasHusband"/>
</FunctionalDataProperty>
- missing axiom
<SameIndividual>
<NamedIndividual IRI="John"/>
<NamedIndividual IRI="Jack"/>
</SameIndividual>
- missing axiom
<ClassAssertion>
<Class IRI="Person"/>
<NamedIndividual IRI="John"/>
</ClassAssertion>
Also, it would be nice if an ontology were imported which actually existed on
the web...
Regards
Michael Wessel
--
Racer Systems GmbH & Co. KG
Blumenau 50 | Tel.: +49 40/88306820
22089 Hamburg | Fax: +49 40/88306821
Germany | www.racer-systems.com
Attachments
- application/zip attachment: owl-primer.zip
Received on Tuesday, 10 November 2009 10:55:38 UTC