SAX drivers bug ... or feature !

Ronald Bourret rbourret at ito.tu-darmstadt.de
Wed Nov 18 15:46:27 GMT 1998


Patrice Bonhomme wrote:

> I think there is a little problem with AttributeList implementation 
within
> some of the SAX drivers (i have tested the following code with my SXP SAX 
> driver, the XML4J SAX driver and the AELFRED SAX driver. We are all 
giving the
> same results (gosh...).
>
> This code should write the size of each AttributeList that has been read 
by
> the parser when it reached the end of the Document. But it always prints 
the
> size of the last AtributeList found.
>
> [code snipped]

It is a good bet that all the parsers are doing what I have done in my 
parsers: used a single instance of an AttributeList object, then cleared it 
and reused it for each call to startElement.  Thus, all the references in 
your Vector point to the same object.

This is specifically allowed by the SAX spec.  The documentation for 
AttributeList states, "The instance provided will return valid results only 
during the scope of the startElement invocation (to save it for future use, 
the application must make a copy: the AttributeListImpl helper class 
provides a convenient constructor for doing so)."

-- Ron Bourret


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