- From: Reece Dunn <msclrhd@googlemail.com>
- Date: Tue, 25 Apr 2023 22:31:08 +0100
- To: Michael Kay <mike@saxonica.com>
- Cc: public-xslt-40@w3.org
- Message-ID: <CAGdtn25xz_1Dj3g727emuTKf2cv82Qv-WWPFOUkb=nM-JzwsHQ@mail.gmail.com>
On Tue, 25 Apr 2023 at 21:29, Michael Kay <mike@saxonica.com> wrote:
> It was suggested during the meeting that spreadsheet column labels can be
> interpreted as base-26 numbers.
>
> I can't immediately see how this is supposed to work.
>
> The typical sequence is A, B, C, ... Z, AA, AB, AC, ...
>
> What is the zero-digit here? It can't be A, because then A would be 0 and
> AA would also be 0.
>
In spreadsheets (Excel, LibreOffice Calc, etc.) the first cell A1 is the
coordinates (1, 1). -- That is, there is no 0 digit.
> If A=1, with radix=27, then Z=26 and AA=28 so there is a gap in the
> sequence.
>
> While the sequence is logical and practical, I can't see any way to
> interpret the column label as a base-N number.
>
In https://www.w3.org/TR/css-counter-styles-3/, that defines several
algorithms for formatting numbers. These include:
1. Alphabetic (https://www.w3.org/TR/css-counter-styles-3/#alphabetic-system)
e.g. upper-alpha -- These don't have a defined symbol for "0". The
algorithm performs a `value = value - 1` at each step in the loop.
2. Numeric (https://www.w3.org/TR/css-counter-styles-3/#numeric-system)
e.g. decimal -- These have a defined symbol for "0". The algorithm works
like the alphabetic algorithm, but has a special case when the value is
"0", and does not subtract 1 from value at each step.
3. Additive (https://www.w3.org/TR/css-counter-styles-3/#additive-system)
e.g. armenian, lower-roman -- These are specified as a map of (symbol,
value) pairs. Note that in the roman numerals case, it defines symbols for
the subtractive case (e.g. `map { 5: "v", 4: "iv", 1: "i" }`).
There are several other systems, but I don't think those are relevant to
parsing number formats. The specification defines a range of number formats
from different languages (see
https://www.w3.org/TR/css-counter-styles-3/#simple-numeric and
https://www.w3.org/TR/css-counter-styles-3/#complex-predefined-counters).
Kind regards,
Reece
> Michael Kay
> Saxonica
>
>
>
>
>
>
>
Received on Tuesday, 25 April 2023 21:31:26 UTC