SAX2: Proposed alternative DTD interface

David Brownell db at
Sat Apr 3 01:01:29 BST 1999

Lars Marius Garshol wrote:
> * David Megginson
> |
> | Here's another alternative for SAX2: forget about trying to report
> | DTD declarations as events, and simply make the whole DTD available
> | through an interface with a Parser2.get() call.
> I'm against this. Having an event-based/object-based dichotomy makes
> sense for DTDs just as it does for document instances. Also, this
> breaks with the rest of SAX, is relatively complex and will at some
> point probably be in direct competition with the DOM Level X.

Those are the first things that come to my mind, and they remain
important.  Purity Of Essence actually does matter in an API.

The dilemma is that a parser really does need some objects inside,
e.g. for attribute normalization and general entity inclusion, even
after it completes the DTD.  So it seems like it could be "cheap" to
expose it as objects ... but what about the stuff that it gets rid
of ASAP to reduce memory consumption?  Notations aren't necessary
after they've been reported, neither are some entities (unparsed and
parameter).  Don't force those to stick around.

> Furthermore, this can be built on top of a 100% event-based SAX2.

and that'd be maximally flexible in any case.  Maybe an editor
knows about some sorts of elements/attributes and has a specialized
user interface for them.  And the parser might prefer to discard all
such info after it's done with a document -- something needs to save
them appropriately, in any ase.

I'd go for the event style DTD reporting, letting layers above SAX2
choose how they prefer to manage their DTD knowledge ... perhaps using
DTDs as a subset of some richer schema data representation.

- Dave

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