while (count > 0) { attr = makeAttributeNode(node, attributes, (--count));
for (int i = 0; i<count; i++) { attr = makeAttributeNode(node, attributes, i);
	public void startElement(String uri, String localName,				 String qname, Attributes attributes)	    throws SAXException {	    // Get node index and setup parent/child references	    final int node = nextNode();	    linkChildren(node);	    _parentStack[++_sp] = node;	    int count = attributes.getLength();	    // Process attribute list in reverse order and create attr nodes	    if (count > 0) {		int attr = _currentAttributeNode + 1;		_lengthOrAttr[node] = attr;		while (count > 0) {		    attr = makeAttributeNode(node, attributes, (--count));		    _nextSibling2[attr] = attr + 1;		}		_nextSibling2[attr] = DOM.NULL;	    }	    // The element has no attributes	    else {		_lengthOrAttr[node] = DOM.NULL;	    }	    	    	    // Assign an internal type to this element (may exist)	    if ((uri != null) && (localName.length() > 0))		_type[node] = makeElementNode(uri, localName);	    else		_type[node] = makeElementNode(qname);	}