The Peace Process: DOM and namespaces...
tyler at infinet.com
Thu Feb 11 22:45:48 GMT 1999
Marcelo Cantos wrote:
> On Thu, Feb 11, 1999 at 07:50:58AM -0500, Tyler Baker wrote:
> > David Megginson wrote:
> > > Tyler Baker writes:
> > >
> > > > > Preprocess your information, whatever its source.
> > > >
> > > > From an entire database. Pass over the entire document tree and
> > > > prepreprocess everything before actually presenting it to the
> > > > application. This is not practical. In my limited experience on
> > > > these matters I have seen this tried before and with horrendous
> > > > results. Nevertheless, it does not take a computer scientist to
> > > > see the real world problem with this approach.
> > >
> > > That would be silly -- lazy evaluation works fine for this kind of
> > > thing. I hate to sound stupid, but I still fail to see how Namespaces
> > > causes any problems at all for someone dynamically generating a
> > > document from a database -- if you want to use names with a URI part,
> > > use them; if not, don't.
> > Well you have the choice of doing an entire pass over the document and
> > building a map directly or else try and lazily evaluate things and then
> > cache the results of the namespace processing. Then for each time you
> > find a node, you need to look it up in a hashtable somehow. Hashtables
> > are cheap, but not that cheap if you need to do a table lookup for every
> > node you process. So iterating over the entire source tree and building
> > an indexed table may in some circumstances be more efficient than the lazy
> > approach.
> > But you are still faced with the problem of illegal XML Names. If you
> > write the DOM Document out to an XML file or stream you will be emitting
> > illegal XML Names unless you have some URI -> prefix hack to get things
> > back to legal XML.
> As in expat:
> <doc xmlns="www.simdb.com"><p>Hello world!</p></doc>
> <ns0:doc xmlns:ns0="www.simdb.com"><ns0:p
> xmlns:ns0="www.simdb.com">Hello world!</ns0:p></ns0:p>
> Not sure why the second xmlns:ns0 is there. Maybe it just makes life
> easier on the user (no need to traverse the parents).
> Also not sure why the last close tag is </ns0:p>. I guess that's why
> my copy of expat came from the _test_ directory on James's FTP site.
Well, then you no longer have the original document structure you had before but these archane
prefixes in your document which make things completely unreadable from a users perspective. I
might as well just use Java Object Serialization only for serializing an object tree as it
would be faster and be no less understandable to the end-user than all of this automatic
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/ and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)
More information about the Xml-dev