[ 
https://issues.apache.org/jira/browse/XERCESC-1816?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Snelson updated XERCESC-1816:
----------------------------------

    Attachment: regex_patch

This patch implements XPath 2.0 / XQuery regular expression semantics as the 
non-XML Schema mode. Changes include:

1) Well commented the RegularExpression API
2) Refactored the parser to only parse XML Schema and XPath 2.0 RE syntax
3) Fixed multi-digit back references
4) Removed unused Token and Op types and classes
5) Removed unused compile and match code
6) Private methods and data members changed to protected to aid sub-classing

Note: this patch removes 4 files - ModifierToken.hpp, ModifierToken.cpp, 
ConditionToken.hpp and ConditionToken.cpp. These have been removed from the 
makefiles, but not from any relevant project files.

This patch increases the number of failing XSTS tests by 4 - each test has been 
checked and confirmed as the required behaviour (the tests are wrong).

As an added bonus, the patch includes a small fix to a bug in the 
CurlURLInputStream, found while running tests.

> Multi-character escape classes don't work correctly in regular expressions
> --------------------------------------------------------------------------
>
>                 Key: XERCESC-1816
>                 URL: https://issues.apache.org/jira/browse/XERCESC-1816
>             Project: Xerces-C++
>          Issue Type: Bug
>          Components: Validating Parser (XML Schema)
>    Affects Versions: 2.8.0, 3.0.0
>            Reporter: John Snelson
>         Attachments: regex_patch
>
>
> The regular expressions "\i", "\I", "\c" and "\C" do not work as specified in 
> the XML Schema specification:
> http://www.w3.org/TR/xmlschema-2/#nt-MultiCharEsc
> In fact, "\I" and "\C" cause an infinite loop during the parsing of the 
> regular expression, "\i" seems to only match the letter "i", and "\c" gives 
> the error:
> A character in U+0040-U+005f must follow '\c'.
> I'd be happy to attempt to fix this bug, but I need some guidance as to what 
> the code for "\c" is actually meant to be doing.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to