[
Lists Home |
Date Index |
Thread Index
]
- From: Michael.Kay@icl.com
- To: xml-dev@ic.ac.uk
- Date: Tue, 16 Feb 1999 10:21:37 -0000
> -----Original Message-----
> From: Bill la Forge [mailto:b.laforge@jxml.com]
>
> What I'm more inclined to do in this SAX/DOM marriage,
> is to create an alternative to the SAX helper class,
> AttributeListImpl, which also implements
> public Attr setAttribute(Attr newAttr);
> and
> public Attr removeAttribute(String name);
> and
> public Attr getAttribute(String name);
>
Unifying the DOM and SAX API's for attributes is a laudable aim but it's a
little bit more complicated than this.
1 - the DOM interfaces that return Attr are called setAttributeNode(),
getAttributeNode(), removeAttributeNode().
2 - Attr is a subclass of Node and as such is required to implement all
sorts of functionality that seems inappropriate in SAX, e.g. the ability to
locate the owning Document and the ability to retrieve the contents of the
attribute with entities unexpanded.
3 - The DOM methods setAttribute() etc work in terms of Strings, which is
closer to the SAX model, but has some irritating differences: for example
getAttribute() in the DOM returns the same value for an absent attribute and
a zero-length attribute. And of course, they throw different exceptions.
In SAXON 4.0 I use the SAX AttributeList interface, but when processing
using the DOM, I use an implementation of SAX AttributeList which is
actually a wrapper to the DOM Element.
Mike Kay
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/ and on CD-ROM/ISBN 981-02-3594-1
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)
|