Inheritance/defaulting of attributes

Paul Prescod papresco at technologist.com
Wed Oct 8 15:45:50 BST 1997


Rick Jelliffe wrote:
> I think we should avoid "object-oriented".  

We have to avoid avoiding everything. :)

I know that the concept of subclassing has expression in fields much
broader than object oriented programming. It is a fundamental
mathematical concept that goes back to -- I dunno, Aristotle? It is an
accident of history that we now associate it with OOP.

Inheritance does come from OOP. They found that it was useful to reuse
properties of superclasses (methods and instance variables). I'm sure
that it only took an hour for them to get tired of recopying code from
superclasses to subclasses and to figure out that they need to share
code. I think that we will come to the same conclusion about element
types sharing attributes and content models.

> "object-oriented" is
> often not a useful term, since people seem to switch usage between
> OO as a historical technological movement and OO as some particular
> techniques: e.g. 1) class/instance, 2) methods,  3) messages, 4) inheritance.

I haven't noticed this. I think of "OO" as the set of concepts shared by
Simula, SmallTalk, C++, CLOS and Java. These are typically defined as
"inheritance" (code reuse from parent to child), "encapsulation"
(constraints on access to data) and "polymorphism" (one element
"standing in for" another) I think that polymorphism could also be
called "subclassing". My paper addressed inheritance and subclassing,
but not encapsulation. I don't see encapsulation as being very relevant
to generic documents.
 
> 1) SGML/XML clearly implements the class/instance style of OO: declarations
> and instances.  Some people call this "object-based" rather than OO.

Actually, any language with an extensible type system has classes and
instances. Even Pascal and C.
 
> SGML was historically developed to allow certain types of processing:
> if we have new types of processing models that require new categories
> of information to be marked up, then XML/SGML should be extended
> accordingly.  But lets see some evidence of the need before the
> solution!

I hope I provided that in my essay. An analysis of current DTDs
indicates a real need to me. Most major DTDs reinvent subclassing and
inheritance using the unstructured parameter entity mechanisms.

 Paul Prescod

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)




More information about the Xml-dev mailing list