An instance of this class is used to represent the set of attributes for an element that are either directly specified or provided through a default value in the grammar for the document. XMLAttrList carries the attributes associated with an element from the scanner up to the application level (via the SAX AtributeList). Because all the attributes are bundled up together before being presented to the application, we don't have a way to build up an attribute value from pieces, most notably entity references.
There is typically one instance of this class for each instance of a parser. The parser may either use this object to hold the attributes of a single element, calling releaseAttrList() before each new element, or it may use this object to hold the attributes of all of the elements in the document.
To start saving a new set of attributes, the startAttrList() method is called, returning a handle for the attribute list. All addAttr() calls will be added to the set until a call is made to endAttrList(). A handle of -1 is used to indicate that there are no attributes in the set.
When an attribute is added to the set, the type of the attribute and an indicator of whether it was specified explicitly or through a default is provided.
The attributes in the set may be accessed either through the getFirstAttr() and getNextAttr() iteration interface, or the getAttributeList() method may be used to access the attribute list through the SAX AttributeList
interface.
@version $Id: XMLAttrList.java,v 1.5 2000/10/31 17:40:06 jeffreyr Exp $