[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: SAX2: Interning names in namespaces
David Brownell wrote: > > Stefan Haustein wrote: > > > > Terje Norderhaug wrote: > > > At 4:46 AM 2/5/00, Stefan Haustein wrote: > > > > Terje Norderhaug wrote: > > > > > >> I suggest that parsers interns each name as a separate string in the > > > >> namespace it belong to. ... > > > > would expect that both strings are java-interned. Also, you > > would not be able to compare just against a constant. > No, but a static variable is possible. Don't forget, the bindings may be dynamic, that is they change from document to document to document, or element to element, but the name is, in fact, static. > It'd be 'string.equals', the pricey one. The work to keep track > of the appropriately interned strings would be too subtle to keep > right in most systems. For starters, if I've got two subsystems > spitting out names, how can they coordinate to use the same pool > of interned names for each namespace?? Yeech. > > I'd vote against this namespace-specific interning. I´d vote for it. I not only would vote for it, I already did vote for it in the earlier discussions re the SAX2 interface. I've also been using an interface of this form for the last year to handle QNames. Lisp offers the advantage, that the reader provides a syntax for this, which make the declaration unnecessary. Even absent such niceties, the coding overhead is minor: instead of using constant strings, they are simply declared and interned in their declaration. Just think of them as if they were resources. The SAX2 interface already exposes a name interning mechanism, so the handful of extra methods can't be an issue.
|
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
|