Re: OWL equivalentClass question

On Fri, Jul 13, 2012 at 10:30 AM, David Booth <david@dbooth.org> wrote:

> 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.
>

That would be a bug in the skolemization spec, if there is a bug. The idea
is that new stuff is considered a bug if it breaks old stuff, not the other
way around.

-Alan



>
> 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 17:09:09 UTC