Re: DOM Core Level 3 questions

DEFINITION, Base URI: Standard XML terminology. The URI from which the base
document was loaded, if applicable. Null if the document was synthetic or
otherwise has no URI.

DEFINITION, Document Order:  Standard XML terminology.  The order in which
the data is encountered when parsing or generating an XML text stream. An
element's ordering position is determined by its start tag. This is
equivalent to a depth-first preorder walk of the DOM tree.

     "lookupNamespacePrefix/URI --  What does the spec mean by
     starting from this node?"
Standard Namespace behavior. Namespaces inherit from parent/ancestor
elements, unless redefined/undefined. Lookup is performed starting from the
node on which this method is invoked, but may have to look upward in the
tree to obtain the proper answer.

     "normalizeNS - are there examples of unnormalized trees
     and normalized trees to reference?"
A namespace-unnormalized tree would typically be one where some or all
nodes use undeclared namespaces, or use prefixes which aren't bound to the
node's namespace, or have namespaces but don't have any prefix at all.
These are all legal states for the DOM, since namespaces are officially
just "syntactic sugar" (per the Namespace Recommendation), but they're a
complication that some application code may not want to deal with -- just
as successive Text nodes are legal in the DOM but may be a nuisance for
some applications to process. Running normalizeNS() will reconcile these by
changing/creating/defining prefixes in some reasonable manner.

The algorithm currently described in the Working Draft is one proposed
"reasonable manner", included for discussion. As you can see by the many
open issues, a significant amount of discussion is still required.


     "if a DOM is being built via SAX2, is there enough information
     to support the namespace functions in DOM Core Level 3 without
     modifications to SAX2?"
I'm not sure what question you're asking. There are SAX2-driven DOM
builders already in widespread use. I don't think anything we're doing
requires more namespace information; we're just doing a bit more with it
once we have it.


______________________________________
Joe Kesselman  / IBM Research

Received on Monday, 23 April 2001 09:24:13 UTC