- From: David Booth <david@dbooth.org>
- Date: Fri, 13 Jul 2012 10:30:12 -0400
- To: Michael Schneider <schneid@fzi.de>
- Cc: semantic-web@w3.org, nathan@webr3.org
On Fri, 2012-07-13 at 15:05 +0200, Michael Schneider wrote: > [Hrmph, I found another error in my first post. So forget > all my previous posts, here is complete rewrite with the > errors being fixed.] > > Hi Nathan! > > In the context of datatypes and data ranges (including > datatype restrictions, as you use them in your examples), > the term "owl:equivalentClass" is used in the RDF syntax > of OWL 2 for stating /datatype definitions/; see [1] for > the specification of datatype definitions, and Table 16 > in [2] for the reverse RDF mapping from the RDF encoding > of datatype definitions to their OWL 2 functional syntax > counterparts. > > Further, from the last entry of Table 12 in [2], you can > see that the RDF encoding of /datatype restrictions/ is > only defined for blank nodes (as in your first example), > so the mapping of datatype definitions does not apply if > a URI is used instead (as in your second example). So if the blank nodes are skolemized, http://dvcs.w3.org/hg/rdf/raw-file/default/rdf-concepts/index.html#section-skolemization then the OWL 2 mapping breaks? This sounds like a bug in the mapping algorithm. David > > Hence, only the first of your two examples is syntactically > valid in OWL 2 DL, and its meaning is, as you certainly > intended, to define a name (URI) for the given datatype > restriction. > > [1] > <http://www.w3.org/TR/2009/REC-owl2-syntax-20091027/#Datatype_Definitions> > [2] <http://www.w3.org/TR/2009/REC-owl2-mapping-to-rdf-20091027/> > > Best, > Michael > > > Am 13.07.2012 14:17, schrieb Nathan: > >> Hi all, > >> > >> I'm looking to define a few Datatype's, and wondered why > >> owl:equivalentClass is used for all complex types in the > >> primer/documentation. > >> > >> For example what's the difference between: > >> > >> :personAge owl:equivalentClass > >> [ rdf:type rdfs:Datatype; > >> owl:onDatatype xsd:integer; > >> owl:withRestrictions ( > >> [ xsd:minInclusive "0"^^xsd:integer ] > >> [ xsd:maxInclusive "150"^^xsd:integer ] > >> ) > >> ] . > >> > >> and: > >> > >> :personAge rdf:type rdfs:Datatype; > >> owl:onDatatype xsd:integer; > >> owl:withRestrictions ( > >> [ xsd:minInclusive "0"^^xsd:integer ] > >> [ xsd:maxInclusive "150"^^xsd:integer ] > >> ) . > >> > >> Is the second example valid, any reasons not to do it, what am I missing > >> here? > >> > >> TIA, > >> > >> Nathan > >> > > > -- David Booth, Ph.D. http://dbooth.org/ Opinions expressed herein are those of the author and do not necessarily reflect those of his employer.
Received on Friday, 13 July 2012 14:30:47 UTC