SAX: Method Name Collisions

David Megginson ak117 at freenet.carleton.ca
Mon Apr 13 16:21:22 BST 1998


Tyler Baker writes:

 > > 1. Programmers can import SAX classes into their own namespaces
 > >    with less danger of collision (they will often have their
 > >    own "Parser" and "DocumentHandler" classes).  Experienced programmers
 > >    might snort at this, but I have had several messages from people
 > >    who couldn't understand why their code wasn't compiling properly.
 > 
 > This is very much more evident I have found with method naming
 > collisions than actual class naming collisions.  The class naming
 > collisions can be fixed by explicitly naming the entire package
 > qualified name for classes which collide.  With interfaces there is
 > no mechanism to do this.  If you have a class which implements two
 > interfaces that may have the same method declarations and
 > signature, then you are pretty much SOL as far as figuring out what
 > should be returned.

The biggest offender is SAXAttributeList:

  public int getLength ();
  public String getName (int i);
  public String getType (int i);
  public String getValue (int i);
  public String getType (String name);
  public String getValue (String name);

To minimise method-name collisions, we would have to do something like
this:

  public int getAttributeListLength ();
  public String getAttributeName (int i);
  public String getAttributeType (int i);
  public String getAttributeValue (int i);
  public String getAttributeType (String name);
  public String getAttributeValue (String name);

The first, "getAttributeListLength", is the ugliest.  It is simple to
avoid this problem by creating a separate class for SAXAttributeList,
rather than implementing it in the main driver -- what does everyone
else think about this question?


Thanks, and all the best,


David

-- 
David Megginson                 ak117 at freenet.carleton.ca
Microstar Software Ltd.         dmeggins at microstar.com
      http://home.sprynet.com/sprynet/dmeggins/

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