xsl-list
[Top] [All Lists]

RE: Namespace problem

2004-09-14 12:00:03

It's really a DOM-style implementation, and the namespace 
axis just goes 
up the tree and gathers up the nodes.  So, this breaks when 
you really on 
generate-id() as a hack to implement node identity, and also 
in the case, 
where you use the parent axis.  In the first case, there's no 
work-around, 
while in the second case, there is.


Saxon, as a matter of interest, does exactly the same thing internally, 
but
when you use the namespace axis explicitly it creates a transient 
namespace
node with the right parent pointer. This is sufficiently rare that the 
cost
hardly matters.

My initial intention was to do the same thing in Xalan-C.  However, I was 
worried that tracking the lifetime of the nodes would be expensive.  Also, 
having transient nodes could affect API users because they would end up 
with node-sets containing nodes that were not in the initial source tree 
and had a potentially different lifetime.

I'm just happy that XPath 2.0 has given implementers the wiggle room to 
get rid of namespace nodes altogether.

Dave


<Prev in Thread] Current Thread [Next in Thread>