RE: SUMMARY: Treating a class as both an instance and as a class, i.e., a metaclass

Hi Roger,

I generally agree with what Thomas said, but I think some of the errors he
points out are actually problems with the ontology you proposed.  Here's the
way I would set it up:

Aircraft is the class of all aircraft, whose instances are actual planes.
It has properties wingspan, range, etc.  F16 is then a subclass of Aircraft,
since its instances are actual F16's, a subset of Aircraft.  However, there
is also a (meta)class AircraftModel, whose instances are F16, B1, etc.  The
AircraftModel class may have properties such as modelWingspan, modelRange,
etc.  Instances of AircraftModel have values for these properties (e.g. the
F16 has a modelWingspan of 10 meters) that are then "distributed" onto their
instances.

I think this is a better model.  I believe it addresses Thomas's concerns
while maintaining F16's use as both a class and an instance.

(Incidentally, I haven't learned OWL or DAML yet, but it seems to me that
this idea of a class holding default property values for its instances is a
common one, and ought to be standardized.)

		-- P.

--
  Piotr Kaminski (piotr@ideanest.com)
  It's the heart afraid of breaking that never learns to dance.
 

Received on Thursday, 13 March 2003 05:32:40 UTC