[Bug 19004] [FO30] format-integer tests expecting err:FODF1310

https://www.w3.org/Bugs/Public/show_bug.cgi?id=19004

Christian Gruen <christian.gruen@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
         Resolution|FIXED                       |---

--- Comment #19 from Christian Gruen <christian.gruen@gmail.com> ---
(In reply to comment #18)
> Which in this case means that "#" and "#a"
> are not errors, they are format tokens with an implementation-defined
> meaning, which is likely to be "1".

Thanks! I see. Maybe things get more obvious if we...

- always classify a pattern as "decimal-digit-pattern" if the primary format
token starts with (or contains?) "#"
- limit "any other format token" to single characters, and raise FODF1310
otherwise

Without those changes, I fear that users may easily get confused, and will
hardly understand when an error is raised and when not.

The changed rules would then yield errors for the following queries:

- format-integer(1, '#')
- format-integer(1, '#,')
- format-integer(1, '#a')
- format-integer(1, 'x#')
- format-integer(1, '!!!')

I would even suggest to raise an error whenever "an implementation does not
support a numbering sequence represented by the given token" in order to reject
queries like "format-integer(1, '(')".


> Yes, they do, because the rule in question only applies when you have a
> "decimal digit pattern", and you only have a decimal digit pattern when the
> primary format token contains at least one digit. In fact, the rule cited is
> now always true by definition.

I would propose to rephrase this sentence into "There is at least one
mandatory-digit-sign.". If we should decide to change the parsing rules as
proposed above, this sentence could stay as is.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

Received on Monday, 11 March 2013 09:30:28 UTC