[XML-SIG] IPC 10 BoF notes (Re: minidom changes & additional modules)

Uche Ogbuji uche.ogbuji@fourthought.com
Fri, 15 Feb 2002 08:50:56 -0700


Aargh!  I'm so sorry, even though Fred posted a reminder I keep forgetting to 
post my notes from the BoF.

The key determination that was made was to add support for XPath evaluation to 
the DOM apis, perhaps in the form:

#get DOM node somehow
node.evaluate(".//*")

Which would return a node list of all the descendant nodes.  Of course any 
other XPath expression my be used, and the node on which evaluate was called 
would serve as the context.

Issues I see that need to be resolved:

* How to define variable bindings and extension function definitions
* Whether to maintain context position and context size info
* How to resolve the ordering of returned node sets (I assume all node sets 
would be sorted into doc order and turned into node lists on output, but we 
never decided)
* Whether to turn this into a generic query system a la XML:DB, which would 
allow other query modes, such as XPointer?

Here are my actual notes (sketchy, unfortunately, because at the latter parts 
I got too much into the dicussion ;-) )

New DOM BOF
-----------

How many peeps using XML/DOM/both are using it for : 5 of us
Data only: 8
DOM for data: 3 people


SAX
4DOM
minidom
pulldom

Orchard
p/cDomlette
Xerces DOM
Pyxie


Problems
--------

DOM is confusing: API is non-intuitive, not Pythonic, Java-style function call 
style

minidom gives no guidance on navigation

DOM is not lexically consistent (no round-tripping)

Slow and memory intensive


Andrew Dalke discussed particular problem he had with manipulating XML that 
was generated from non-XML formats.


A consensus began to emerge that we move towards minidom+XPath as an 
experimental fix for DOM usability.


Was discussed that pDomlette is redundant against minidom.  Mike Olson will 
work on minidom/pDomlette merging.



-- 
Uche Ogbuji                               Principal Consultant
uche.ogbuji@fourthought.com               +1 303 583 9900 x 101
Fourthought, Inc.                         http://Fourthought.com 
4735 East Walnut St, Boulder, CO 80301-2537, USA
XML strategy, XML tools (http://4Suite.org), knowledge management