Paola, (01)
It's not a thorny issue. The facts are very clear. (02)
PDM> thanks for opening up a possibly thorny issue (03)
JFS>> Bottom line: If good programming practices can support
>> full multiple inheritance, there is no justification for
>> an ontology that does not support multiple inheritance. (04)
The problems that many people have observed with multiple
inheritance are no worse than the problems that occur even
with single inheritance: Many people think they can define
a type hierarchy just by drawing a bunch of lines in a diagram. (05)
Fundamental principle: The paths through a type hierarchy are
implied by the type definitions. They are not things that can
be defined independently by some programmer or knowledge engineer.
This fact was the foundation for Aristotle's syllogisms, and
Leibniz observed that it automatically leads to multiple
inheritance (except in the most trivial cases). (06)
We have all seen numerous horrible examples of type hierarchies
that people created by drawing lines. They result in very badly
designed programs and ontologies, even with single inheritance.
The solution is simple: (07)
Use automated means to derive the type hierarchy from the
definitions. This method is suitable for ontologies and
for object-oriented programming systems. Such a derivation
*guarantees* consistency. (08)
And the result of the automated methods is multiple inheritance. (09)
John (010)
_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
Subscribe/Config: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/
Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/
To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx (011)
|