The FOTS test re00056 is:
(every $s in tokenize('', ',')
satisfies matches($s, '^(?:[^a-d-b-c])$'))
and
(every $s in tokenize('a-b,c-c,ab,cc', ',')
satisfies not(matches($s, '^(?:[^a-d-b-c])$')))
The regular expression [^a-d-b-c] seems wrong. The "a-d" means "'a' through 'd', i.e., abcd, and the "b-c" means "'b' through 'c', i.e., "bc". However, the '-' between the 'd' and 'b' makes no sense. It can't mean "'d' through 'b'" since 'b' is less than 'd', nor can it mean "a-d without 'b' and without 'c'," i.e., range subtraction per <http://www.w3.org/TR/xmlschema-2/#nt-charClassSub>.
Similarly, the FOTS test re00086 is:
(every $s in tokenize(',a-1x-7,c-4z-9,a-1z-8a-1z-9,a1z-9,a-1z8,a-1,z-9', ',')
satisfies matches($s, '^(?:[a-c-1-4x-z-7-9]*)$'))
and
(every $s in tokenize('', ',')
satisfies not(matches($s, '^(?:[a-c-1-4x-z-7-9]*)$')))
The regular expression [a-c-1-4x-z-7-9] seems wrong for the same reason. This may be a limitation of ICU.
Added W3C bug: /www.w3. org/Bugs/ Public/ show_bug. cgi?id= 21425
https:/
Marked this issue as "Invalid".