SAX drivers bug ... or feature !

Toivo Lainevool tlainevool at
Sat Nov 21 20:53:29 GMT 1998

---david at wrote:
> Toivo Lainevool writes:
>  > If your worried about the performance of the parser, just setting
>  > the attributeList to null would be faster than doing the
>  > AttributeListImpl::clear() which would cause a removeAllElement()
>  > on each of the underlying member vectors.  If your cranking away
>  > with the parser, chances are the low priority gc task wouldn't be
>  > fired while your doing this, unless you hit your memory limit.
> You're confusing AttributeListImpl with AttributeList -- AttributeList
> is an interface, not a class.  While AttributeListImpl is available
> for those who want it (such as a client program that needs to copy a
> few attribute lists), most SAX drivers provide a more efficient
> implementation, which is often an adapter of the parser's own, native
> interface.

I won't waste any more bandwidth on this list going into more
implementation details and performance ramifications, but i'd just
like to finish this though off. (I wouldn't mind discussing this issue
off of the list if anyone wants to continue it.)

There seems to be a tradeoff here between ease of use of the parser
(the client code needs to know to copy the AttributeList to hang onto
it) vs. flexibility of parser implementation (allowing the parser to
re-use the Attribute list).  This decision depends on the motivation
of the original design.  Since David was involved in this and I
wasn't, I won't second guess the decision.  I think as long as the
ramification of this decision is recorded properly in the
documentation, it shouldn't be a problem.


Toivo Lainevool
Get your free address at

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at
Archived as:
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