Just as Eric (Walsh) stated, not only is the perfomance drastically degredated, I found that it becomes increasing bad as I query farther down the document, and performance degredates at a fairly steep rate.
I found that the Xalan 2.1 release is almost as fast as the previous release we were using (1.x), and the bug (?) begins with the Xalan 2.2 release.
We also use XPath querying A TON and on long XML docs, some with complex schemas. Unfortunately, unless something changes, we will not be using the 2.2 release either.
Looking at the source implementation of the XPathAPI, the eval(...) method seems to attempt using a "node identity number"
SEE LINES:
<CODE> int ctxtNode = xpathSupport.getDTMHandleFromNode(contextNode);
return xpath.execute(xpathSupport, ctxtNode, prefixResolver); </CODE>
should eliminate the deteriorating performance as we query farther down the document.
I'm not sure what's actually happening.
_________________________________________________________________ Get your FREE download of MSN Explorer at http://explorer.msn.com/intl.asp.