W3C home > Mailing lists > Public > public-webont-comments@w3.org > December 2002

owl:sameClassAs

From: Brian McBride <bwm@hplb.hpl.hp.com>
Date: Sun, 15 Dec 2002 15:51:41 +0000
Message-Id: <5.1.0.14.0.20021215142024.0207ebb8@0-mail-1.hpl.hp.com>
To: public-webont-comments@w3.org
Cc: jjc@hplb.hpl.hp.com

I was reading through the feature synopis

   http://www.w3.org/TR/2002/WD-owl-features-20020729/#s3.2

where I found:

[[*  sameClassAs: Two classes may be stated to be the same (i.e., they may 
be stated to be different names for the same set of individuals)...]]

I thought, that's odd, that's not how RDFS classes work, given the natural 
interpretation of "sameAs".

In the reference:

   http://www.w3.org/TR/2002/WD-owl-ref-20021112/#sameClassAs-def

I find:

[[ Each owl:sameClassAs element asserts that C is equivalent to the 
class-expression in the element (ie. C and all the class-expression must 
have the same instances);]]

which is a bit more circumspect, introducing the concept of 
"equivalence".  Could it be that classes with the same membership are 
equivalent but not necessarily identical?  Is class equivalence defined 
anywhere?  Is this the definition of class equivalence?

I wonder if this really is a reference document where I'd expect to find a 
definition of what sameClassAs means and check that abstract.  Its a bit 
bland about the purpose of this document.  Oh, and in passing I notice that 
the status section says this WD is the first version of the OWL Spec, but 
there is also a link to a previous version.

In the reference under class expressions, I find:

[[Each class expression either refers to a named class, namely the class 
that is identified by the URI, or implicitly defines an anonymous class, 
respectively the class that contains exactly the enumerated elements ...]

That "the class that contains ..." suggests that there is only one such 
class.  Hmm, could scotch previous hypothesis, but maybe this is only a 
miswrite and it should be "a class that contains ...".

And then, also in the reference I find:

[[owl:Class, a subclass of rdfs:Class]]

which suggests that owl classes do behave like rdfs classes, unless there 
can only ever be one owl class with a given membership.

In the guide the notion of class equivalence is used, but not defined:

   http://www.w3.org/TR/2002/WD-owl-guide-20021104/#sameClassAs1

Dare I brave the semantics doc?  I don't grok that stuff, but maybe I'll 
find the answer to my question.

Owl lite does indeed seem to have an EquivalentClass(...).  But its hard to 
tell what it means, because I'm looking for the omission of an axiom and 
I'm not sure I'm understanding this.  Looking at the semantics stuff I find 
some text explaining the relation between RDF and OWL:  +1 to the authors.

   http://www.w3.org/TR/2002/WD-owl-semantics-20021108/rdfs.html#5.1

[[
All of the OWL vocabulary is defined on the 'OWL universe', which is a 
collection of RDFS classes that are intended to circumscribe the domain of 
application of the OWL vocabulary: owl:Thing, owl:Class and owl:Property. 
The RDFS class extension of owl:Thing comprises the individuals of the OWL 
universe. The RDFS class extension of owl:Class comprises the classes of 
the OWL universe. The RDFS class extension of owl:Property comprises the 
properties of the OWL universe.

There are two different styles of using OWL. In the more free-wheeling 
style, called OWL/Full here, these three classes are identified with their 
RDFS counterparts. In OWL/Full, as in RDFS, resources can be both an 
individual and a class, or, in fact, even an individual, a class, and a 
property. In the more restrictive style, called OWL/DL here, these three 
classes are different from their RDFS counterparts and, moreover, pairwise 
disjoint.
]]

My first reading of that was that it said the pair of classes rdfs:Class 
and owl:Class are disjoint in OWL/DL.  But that would be madness, since 
owl:Class is a subclass of rdfs:Class.  I think this means:

[[In the more restrictive style, called OWL/DL here, owl:Thing, owl:Class 
and owl:Property are different from their RDFS counterparts.  Moreover, 
owl:Thing, owl:Class and owl:Property are pairwise disjoint.
]]

Which is interesting in its own right, as it means that OWL/DL can't handle 
datatypes that are both classes and interpretation properties, which I'd 
been assuming was ok.  But doesn't answer my question.

Giving up at this point, I have the following conclusions:

o different parts of the text are suggestive of different assumptions by 
their authors at the time of writing.  this confusion may be more 
widespread than just the items I have highlighted.

o given the significant use that the reference document is making of the 
notion of class equivalence, I suggest a 'first class' definition of the 
term, rather than hiding it in a parenthetical comment.

o text somewhere (the guide?) explaining the relationship between owl and 
rdf concepts for the not so technical like me would be helpful.

o if my assumption that owl:sameClassAs means has same members as, but does 
not mean they are identical (i.e. indistinguishable), then I find the term 
owl:sameClassAs confusing.  owl:equivalentClassAs would suite the rest of 
the terminology better.  owl:sameMembersAs would be more descriptive.

o the abstract for the reference document might be more specific about the 
document's purpose.

Sorry for the ramble - I was trying to convey to the authors/editors the 
experience of using the docs for a particular purpose.

Brian
Received on Sunday, 15 December 2002 10:50:14 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:43:27 GMT