W3C home > Mailing lists > Public > public-owl-comments@w3.org > January 2009

Structures, elements of the structural specification, and equivalence

From: Jonathan Rees <jar@creativecommons.org>
Date: Sun, 25 Jan 2009 13:02:06 -0500
Message-ID: <760bcb2a0901251002p3e1be898s246b23e4284ac49a@mail.gmail.com>
To: public-owl-comments@w3.org

Section 2.1 says that structural equivalence is defined on elements of
the structural specification, which I take to be the members of
classes such as Ontology and Axiom.  It then proceeds to define
structural equivalence as a relation between ESSes.  This doesn't make
sense because the ESSes are already constrained by the UML, so there
simply do not exist distinct ESSes that
differ in ways not licensed by the UML.

For example, according to the UML in figure 7, the members of class
ObjectUnionOf are ESSes that have an association classExpressions to a
*set* of 2 or more classExpression ESSes.  Since the associated set of
classExpressions is unordered (they form a set), the issue of
structural equivalence of ObjectUnionOfs (the first example in 2.1) cannot
arise.

I think the consistent way to look at this is that there are
structures (expressions or syntax trees, specified by the BNF,
ordering always significant), and there are ESSes (specified by the
UML), and they are quite different.  Structures are constrained only
by the functional syntax, while ESSes are like equivalence classes of
structures under structural equivalence.  Structural equivalence is
defined on structures, and each structure has at most one
corresponding ESS.  Two structurally equivalent structures will
correspond to the same ESS.

This lets you say that the structure or expression UnionOf(a:Person
a:Animal) is *different from* (albeit structurally equivalent to) the
structure UnionOf(a:Animal, a:Person), without losing the ability to
say that the ESS UnionOf(a:Person a:Animal) is the *same as* the ESS
UnionOf(a:Animal a:Person).  It also eliminates the mysterious phrase
"are considered to be the same" from section 2.1.

ESS is not a good term, but it should be possible to come up with a
better one, or with a way to be clear that doesn't require such a
term.

```` some quibbles ````

It is very useful that you give a definition of 'ontology' in section
3 as a subclass of the ESS class 'Ontology', but do you really mean
for the definition to be non-normative, as the second-to-last
paragraph of the introduction states?  (The definition of 'ontology'
is by 2.1 not part of the structural specification.)  E.g. would an
application of the model theory to an Ontology that is not an ontology
be appropriate?

I looked at the cited UML document and found it very hard to read.  A
different reference, and/or a reduced dependency on an outside
reference, would make the document easier to process.

I think the reference to object-oriented programming in 2.1 may do
more harm than good.  In particular "classes that are not intended to
be instantiated" is powerfuly dissonant with the way OWL uses the word
"instance".  (Classes can be empty or nonempty; any member of a class
is an instance of the class, even if that's only known by inference;
instancehood is determined by a model, not by an act of
instantiation.)

If there is an OWL version of the UML diagrams, perhaps it could be
informatively included or linked.

Best
Jonathan
Received on Sunday, 25 January 2009 18:02:48 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Sunday, 25 January 2009 18:02:48 GMT