Store the variables from the Schematron in a linked hashmap, to preserve their order. They are then evaluated in the order they are declared.
Before this, variables were sorted with the longest first. We were replacing variable references with their expressions, so starting with the longest was needed. With the new way of evaluating variables, this caused problems when a variable referenced another variable that has a shorter name.
This changes the IPSXPathVariables interface to return maps and sets, instead of navigable maps and sorted sets. It does not seem that the specifics of these types were used.
Add unit test that checks the correction of this bug.
Store the variables from the Schematron in a linked hashmap, to preserve their order. They are then evaluated in the order they are declared.
Before this, variables were sorted with the longest first. We were replacing variable references with their expressions, so starting with the longest was needed. With the new way of evaluating variables, this caused problems when a variable referenced another variable that has a shorter name.
This changes the IPSXPathVariables interface to return maps and sets, instead of navigable maps and sorted sets. It does not seem that the specifics of these types were used.
Add unit test that checks the correction of this bug.
Fixes #177.