PureXML/Sources/Regex
Mihaela Mihaljevic a0ccd017f5 fix(regex): recognize the full XSD Unicode block set in \p{Is...}
Only about fifteen Unicode blocks were tabulated, so a pattern over any other
block (\p{IsArmenian}, \p{IsTamil}, \p{IsHangulJamo}, and many more) failed to
compile and rejected valid instances. The table now carries the Unicode 3.1
blocks the XSD regular-expression appendix fixes; surrogate blocks are omitted
since surrogates are not scalar values, and Specials uses the main FFF0..FFFD
range. Each range is verified bidirectionally by the XSTS corpus: valid
in-block instances pass and invalid out-of-block instances still fail, so no
range over-covers.

XSTS: valid instances rejected 502 to 395. Baseline updated; regression test
covers in-block matches, out-of-block rejection, and unknown block names.

Refs #147, #129.
2026-06-13 18:04:25 +02:00
..
RegexAutomaton.swift fix(schema,regex): bound NFA state explosion and class-subtraction crash; land XSTS baseline 2026-06-13 18:04:25 +02:00
RegexCategory.swift fix(regex): recognize the full XSD Unicode block set in \p{Is...} 2026-06-13 18:04:25 +02:00
RegexParser.swift fix(schema,regex): bound NFA state explosion and class-subtraction crash; land XSTS baseline 2026-06-13 18:04:25 +02:00
RegexSyntax.swift feat(regex): Unicode category escapes and character-class subtraction 2026-06-08 15:15:46 +02:00