- From: Drew McDermott <drew.mcdermott@yale.edu>
- Date: Wed, 11 Feb 2004 18:53:09 -0500 (EST)
- To: www-rdf-logic@w3.org
> [Eric Jain]
> Is there a way to indicate that a Class should be abstract, i.e. that no
> direct instances are allowed to exist?
Owl classes are like set-theory classes, not like OOP classes. There
is no notion of "direct instance."
In mathematics, a class or set is nothing but a ... bunch or ... group
or ... (hmmm) set of objects. If x is an element of set S, it's
pointless to try to find a set S' such that x elt S' and S' subset S.
There will always be such an S', usually quite a large number. If you
change the "subset" to "proper subset," then the only time there can
fail to be such an S' is if S = {x}.
In OOP, classes aren't classes of objects, just convenient packages of
methods and such. An object x can be an instance of S', and S' be a
subclass of S, without x being an instance of S in any useful sense.
Of course, it's an instance by fiat, but what I mean is that if there
is a set of properties that is intended to hold for elements of S and
fail to hold for elements outside of S, then all those properties
could fail to hold for x.
--
-- Drew McDermott
Yale Computer Science Department
Received on Wednesday, 11 February 2004 18:53:12 UTC