- From: Holger Knublauch <holger@topquadrant.com>
- Date: Mon, 9 Nov 2009 13:06:12 -0800
- To: public-owl-dev@w3.org
Dear group, I am unsure about the right (and best) way of mapping user-defined OWL 2 datatypes to RDF graphs. I have been skimming through the OWL specs but all examples I saw were of the following format (see http://www.w3.org/TR/2009/REC-owl2-syntax-20091027/#Datatype_Definitions ): a:SSN rdf:type rdfs:Datatype . a:SSN owl:equivalentClass _:x . _:x rdf:type rdfs:Datatype . _:x owl:onDatatype xsd:string . _:x owl:withRestrictions ( _:y ) . _:y xsd:pattern "[0-9]{3}-[0-9]{2}-[0-9]{4}" . This means that a datatype is an instance of rdfs:Datatype that has an owl:equivalentClass of another (anonymous) datatype which then points to the fact restrictions as an rdf:List. 1) Would it also be allowed to use rdfs:subClassOf instead of owl:equivalentClass? 2) Would it be legal to attach the restrictions directly on the named datatype instead of going through the (very verbose!) blank node, e.g. a:SSN rdf:type rdfs:Datatype . a:SSN owl:onDatatype xsd:string . a:SSN owl:withRestrictions ( _:y ) . a:SSN xsd:pattern "[0-9]{3}-[0-9]{2}-[0-9]{4}" . 3) Is it legal (and good practice) to subclass existing datatypes, such as a:SNN rdfs:subClass xsd:string . Thanks for clarifying these, so that we can built the best practices into our tools. Holger
Received on Monday, 9 November 2009 21:07:00 UTC