startElement(XmlParser p, String elname, java.util.Dictionary attributes)
Note the use of the Dictionary abstract base class here. Hashtable is
derived from Dictionary, as is my Trie class that I released a
couple of years ago. There are a couple of advantages to this
approach:
1) It can be implemented efficiently, without requiring allocation of
a hash table: you could return anything derived from
java.util.Dictionary, including a simple sequential lookup in an
array of attributes.
2) It makes the users' work much easier, since they can just use
/**
* Handle the start of an element.
*/
startElement (XmlParser p, String elname, Dictionary attributes)
{
String id = (String)attributes.get("id");
String role = (String)attributes.get("role");
[...]
}
(instead of)
/**
* Handle the start of an element.
*/
startElement (XmlParser p, String elname, Attribute attributes[])
{
String id = null;
String role = null;
for (int i = 0; i < attributes.length; i++) {
if (attributes[i].getName().equals("id")) {
id = attributes[i].getValue();
} else if (attributes[i].getName().equals("role")) {
role = attributes[i].getValue();
}
}
[...]
}
Comments?
All the best,
David
-- David Megginson ak117@freenet.carleton.ca Microstar Software Ltd. dmeggins@microstar.com http://home.sprynet.com/sprynet/dmeggins/xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@ic.ac.uk Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ To (un)subscribe, mailto:majordomo@ic.ac.uk the following message; (un)subscribe xml-dev To subscribe to the digests, mailto:majordomo@ic.ac.uk the following message; subscribe xml-dev-digest List coordinator, Henry Rzepa (mailto:rzepa@ic.ac.uk)