I feel that I should remind a point of object oriented programming:
There is many way to see subclassing. The vision adopted by ISO specification
(which is also the vision that I suggest to adopt) is in the sense of
"specialization", not necessarly "having more attributes". Thinks verb "to be",
not "to have". Sometime a subclass has *less* attributes than the parent class.
Example given by ISO 19107 (geometry): Circle extends Ellipse, because a Circle
is an Ellipse in the special case where the minor and major axis have the same
length. But it has *less* attributes: Ellipse have 2 (the axis length), Circle
have only 1 (the radius).
So subclassing is not for "have some optional attributes". If we had this
approach with ISO 19115, the ~100 metadata interfaces (full of optional
attributes) whould explode in thousands of interfaces.
Martin
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Geotools-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-devel