Functions, operators, and data types for XPath 2.0

The standard URI resolver now handles escaped percent signs in URIs correctly. Previously it contained code to compensate for a bug in earlier Java releases, which meant that it stopped working when the Java bug was fixed.

The regular expression parser used for XPath functions such as matches(), and also for the pattern facet in XML Schema, now allows constructs such as [+-] which were disallowed by the XML Schema Proposed Edited Recommendation (March 2004) and then re-allowed by the Second Edition (October 2004).