SAX2 RFD: Inheritance vs. Modification vs. Amalgamation

Gabe Beged-Dov begeddov at
Thu May 20 03:01:33 BST 1999

David Brownell wrote:

> > 3. Create a separate interface org.xml.sax.ParserProps (or something
> >    like that), and require SAX2 drivers to implement both interfaces.
> The primary difference between this and #1 is that this defines another
> interface, and I don't see a benefit to that.

A separate interface for create time negotiation of steady state capabilities provides both
API and implementation efficiency. Again, I would refer you to Doug Schmidts excellent
coverage of this design pattern (albiet in a different domain, i.e. network transports).

This can also be thought of as a smart factory that actually does capability matching as
opposed to just providing a trivial implementation indirection.

The idea that you can do this by first creating the default parser and then negotiating thru
its interface, and then under the covers creating a different parser that matches the agreed
capabilities just doesn't seem that appealing.

Cordially from Corvallis,

Gabe Beged-Dov

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at
Archived as: and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo at the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at

More information about the Xml-dev mailing list