Composition of DTDs was Inheritance in XML

Meltsner, Kenneth J (Kenneth.J.Meltsner@jci.com)
Mon, 20 Apr 1998 08:59:15 -0500


I think the value of XML in these cases is its "composability" - the
ability to develop a new DTD by "adding" together previously defined DTDs.
If I want to write the perfect catalog DTD, I don't have to reinvent
linking or styles; I can concentrate on modeling the relationships between
parts and systems and part numbers instead.

Aggregation/composition is a legitimate alternative to inheritance for many
applications, but tends to get used less often in class-instance object
systems.
In prototype-based OO systems, like the UI toolkits Garnet and Amulet,
it's the usual way of building new objects or of specializing the behavior
of old ones.

The namespace spec goes a long way to making this more possible.

Ken Meltsner

-----Original Message-----
From: Peter Murray-Rust <peter@ursus.demon.co.uk>
[...]
This is actually a good example of where I think XML has a lot to offer. In
designing complex systems it is a good idea to re-use well-tested
components where possible. If, for example, your power station relies on
mathematics, physics, chemistry, safety protocols, etc. then it will make
sense to re-use those developed in a community-wide fashion. In an XML
document it is straightforward to detect the namespaces used and to
separate the components. I find it much easier to extract the separate
information components from an XML file than (say) an RTF document.