[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: SAX2 Namespace Support
David Megginson wrote: > > > class QName { > > public: > > wstring ns () const; // http://www.w3c.org/1999/xhtml > > wstring name () const; // p > > wstring nsPrefix () const; // html > > wstring prefixedName () const; // html:p > > > > bool operator== (const QName &rhs) const; > > // ns & name both equal > > private: > > // Probably just a simple pointer to your internal data structures > > }; > > My biggest problem with this (and its Java equivalent) is figuring out > how to handle equality: are two QNames with the same URI part and same > local part equal? What if the prefix is different? What about adding a second method "identical (QName compare)" that takes also the prefix into account? I think it's consistent if the default method (equals () / ==) ignores the "noise". A QName object could also help for the attributes: If the Sax2 AttributeListImpl is implemented like the Sax1 list, it would have up to four Vectors: class AttributeListImpl { Vector prefixedNames; Vector localNames; Vector prefixes; Vector namespaces; ... } Adding an attribute and creating or clearing an AttributeList (= manipulating four Vectors) would be extremely expensive. class AttributeList { Vector QNames; // better: ArrayList ! Qname getAttribute (int index); ... } seems much cheaper, especially if the QName objects are interned..... Best regards Stefan xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@i... Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1 To unsubscribe, mailto:majordomo@i... the following message; unsubscribe xml-dev To subscribe to the digests, mailto:majordomo@i... the following message; subscribe xml-dev-digest List coordinator, Henry Rzepa (mailto:rzepa@i...)
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|