This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
This test tests "format-integer(1234, '123١')", and expects "FODF1310" to be thrown, but the spec says, under 4.6.1: A mandatory-digit-sign is a ·character· in Unicode category Nd. All mandatory-digit-signs within the format token must be from the same digit family, where a digit family is a sequence of ten consecutive characters in Unicode category Nd, having digit values 0 through 9. Within the format token, these digits are interchangeable: a three-digit number may thus be indicated equivalently by 000, 001, or 999. and later: If the primary format token contains at least one Unicode digit then it is taken as a decimal digit pattern, and in this case it must match the regular expression ^((\p{Nd}|#|[^\p{N}\p{L}])+?)$. The digit "١", or "١" or "ARABIC-INDIC DIGIT ONE" is part of \p{Nd} and therefore fits the above regular expression. According to the earlier interchangeable rule, I think the correct outcome is "1234" for this test.
It seems to me that this format string clearly violates the rule All mandatory-digit-signs within the format token must be from the same digit family and violating one rule is enough to make it an error. Perhaps you are misreading "these digits are interchangeable": it is intended to mean that the digits within a digit family are interchangeable.
> All mandatory-digit-signs within the format token must be from the same > digit family I think I didn't know / get / understand what "digit family" means. The way I understood it, it is either Nd, Nl or No. Reading it again, I see that it is written clearly and I even quoted it in comment#0: "[...]where a digit family is a sequence of ten consecutive characters[...]". And yes, the characters in this test are clearly not consecutive within a range of 10 digits.
Resolving the bug as invalid.