Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
Description
When building from a DOM, the builder creates a NodeNamespaceContext for each element and each time, it goes up all parent elements iterating over all the attributes. That's expensive.
Attaching a patch that changes the NodeNamespaceContext to store the contxt in the user data. It can then combine the current elemets with the parents very quickly.
Also, if the same DOM is used multiple times, it can be much faster as no contexts need to be created.
Downside: requires DOM level 3, but XmlSchema already doesn't work if DOM level isn't level 3. (WSCOMMONS-358)