Cleanup debug output and format code.
Speed up 10% by elimination duplicate choices.
Fix "anyName" and "xml" namespace related bugs.
Fix bugs related to name resultion and oneOrMore element.
Add ability to quickly create a pattern without looking up information in the memoization cache.
Use memoization on all pattern creating functions.
Set element hash to its id value.Now all patterns can have a hash value.
Change the new implementation to use the refactored reference resolution.All unit tests still pass, but validating a huge ODT document still takes longer than I want to wait.
Resolve references in such a way that each element definition gets a unique id.This enables implementation of a hash function for the patterns, which in turn is needed to curb exponential scaling behavior as explained in the derivative.html document.
Do not create pattern members if they are empty. This should save quite a bit of memory.
Also available in: