2.4 numFmt Extensions

This section specifies additional values to be used for the format attribute of the numFmt element, as specified in [ISO/IEC29500-1:2016] section 17.9.17. The following two tables specify the strings used for the format attribute.

Each row in the first table specifies a string, along with a corresponding value from the simple type ST_NumberFormat, as specified in [ISO/IEC29500-1:2016] section 17.18.59. If the value of the format attribute is equal to the string in the left column, the numbering format applied is specified by the value in the right column, as specified in [ISO/IEC29500-1:2016] section 17.18.59.

String

Attribute value

U+FF71, U+FF72, U+FF73, ...

aiueo

U+30A2, U+30A4, U+30A6, ...

aiueoFullWidth

U+0623, U+0628, U+062C, ...

arabicAbjad

U+0623, U+0628, U+062A, ...

arabicAlpha

One, Two, Three, ...

cardinalText

U+002A, U+2020, U+2021, ...

chicago

U+4E00, U+5341, U+4E00U+25CBU+25CB(U+7B80), ...

chineseCounting

U+4E00, U+5341, U+4E00U+767E(U+7B80), ...

chineseCountingThousand

U+58F9, U+8D30, U+53C1, ...

chineseLegalSimplified

U+3131, U+3134, U+3137, ...

chosung

U+0031

decimal

U+2460, U+2461, U+2462, ...

decimalEnclosedCircle

U+2488, U+2489, U+248A, ...

decimalEnclosedFullstop

U+2474, U+2475, U+2476, ...

decimalEnclosedParen

U+FF11, U+FF12, U+FF13, ...

decimalFullWidth

U+0030U+0031, U+0030U+0032, U+0030U+0033, ...

decimalZero

U+AC00, U+B098, U+B2E4, ...

ganada

U+05D0, U+05D9, U+05E7, ...

hebrew1

U+05D0, U+05D1, U+05D2, ...

hebrew2

U+0031, U+0041, U+0042, ...

hex

U+0905, U+0906, U+0907, ...

hindiConsonants

U+090FU+0915, U+0926U+094B, U+0924U+0940U+0928, ...

hindiCounting

U+0967, U+0968, U+0969, ...

hindiNumbers

U+0915, U+0916, U+0917, ...

hindiVowels

U+4E00, U+4E00U+3007, U+4E00U+3007U+3007, ...

ideographDigital

U+3220, U+3221, U+3222, ...

ideographEnclosedCircle

U+58F9, U+8CB3, U+53C3, ...

ideographLegalTraditional

U+7532, U+4E59, U+4E19, ...

ideographTraditional

U+5B50, U+4E11, U+5BC5, ...

ideographZodiac

U+7532U+5B50, U+4E59U+4E11, U+4E19U+5BC5, ...

ideographZodiacTraditional

U+FF72, U+FF9B, U+FF8A, ...

iroha

U+30A4, U+30ED, U+30CF, ...

irohaFullWidth

U+4E00, U+4E8C, U+4E09, ...

japaneseCounting

U+4E00, U+4E8C, U+4E09, U+4E07, ...

japaneseDigitalTenThousand

U+58F1, U+5F10, U+53C2, ...

japaneseLegal

U+C77C, U+C774, U+C0BC, ...

koreanCounting

U+C77C, U+C77CU+C601, U+C77CU+C601U+C601, ...

koreanDigital

U+4E00, U+4E00U+96F6, U+4E00U+96F6U+96F6, ...

koreanDigital2

U+D558U+B098, U+B458, U+C14B, ...

koreanLegal

U+0061

lowerLetter

U+0069

lowerRoman

[Empty string]

none

- 1 -, - 2 -, - 3 -, ...

numberInDash

1st, 2nd, 3rd, ...

ordinal

First, Second, Third, ...

ordinalText

U+0430, U+0431, U+0432, ...

russianLower

U+0410, U+0411, U+0412, ...

russianUpper

U+4E00, U+5341, U+4E00U+25CBU+25CB(U+7E41), ...

taiwaneseCounting

U+4E00, U+5341, U+4E00U+767E(U+7E41), ...

taiwaneseCountingThousand

U+4E00, U+4E00U+25CB, U+4E00U+25CBU+25CB(U+7E41), ...

taiwaneseDigital

U+0E2BU+0E19U+0E36U+0E48U+0E07, U+0E2AU+0E2DU+0E07, U+0E2AU+0E32U+0E21, ...

thaiCounting

U+0E01, U+0E02, U+0E04, ...

thaiLetters

U+0E51, U+0E52, U+0E53, ...

thaiNumbers

U+0041

upperLetter

U+0049

upperRoman

U+006DU+00F4U+0323U+0074, U+0068U+0061U+0069, U+0062U+0061, ...

vietnameseCounting

Furthermore, the following table specifies the sequence for additional values of the format attribute.

String

Description

U+0041, U+00C7, U+011C, ...

Specifies that the sequence MUST consist of uppercase Turkish alphabet.

To determine the text that is displayed for any value, this sequence specifies a set of characters that represent positions 1–29 and then those same characters are combined with each other to construct the remaining values.

The set of characters used by this numbering format for values 1–29 is U+0041-U+0043, U+00C7, U+0044-U+0047, U+011E, U+0048, U+0049, U+0130, U+004A-U+004F, U+00D6, U+0050, U+0052, U+0053, U+015E, U+0054, U+0055, U+00DC, U+0056, U+0059, U+005A, respectively.

For values greater than 29, the text displayed MUST be constructed as follows:

  1. Repeatedly subtract the size of the set (29) from the value until the result is equal to or less than the size of the set.

  2. The remainder determines which character to use from the preceding set, and that character is written once and then repeated the number of times the size of the set was subtracted from the original value.

U+0061, U+00E7, U+011D, ...

Specifies that the sequence MUST consist of lowercase Turkish alphabet.

To determine the text that is displayed for any value, this sequence specifies a set of characters that represent positions 1–29 and then those same characters are combined with each other to construct the remaining values.

The set of characters used by this numbering format for values 1–29 is U+0061-U+0063, U+00E7, U+0064-U+0067, U+011F, U+0068, U+0131, U+0069-U+006F, U+00F6, U+0070, U+0072, U+0073, U+015F, U+0074, U+0075, U+00FC, U+0076, U+0079, U+007A, respectively.

For values greater than 29, the text displayed MUST be constructed as follows:

  1. Repeatedly subtract the size of the set (29) from the value until the result is equal to or less than the size of the set.

  2. The remainder determines which character to use from the preceding set, and that character is written once and then repeated the number of times the size of the set was subtracted from the original value.

U+0410, U+0419, U+041A, ...

Specifies that the sequence MUST consist of uppercase Bulgarian alphabet.

To determine the text that is displayed for any value, this sequence specifies a set of characters that represent positions 1–29 and then those same characters are combined with each other to construct the remaining values.

The set of characters used by this numbering format for values 1–29 is U+0410-U+042A, U+042E, U+042F, respectively.

For values greater than 29, the text displayed MUST be constructed as follows:

  1. Repeatedly subtract the size of the set (29) from the value until the result is equal to or less than the size of the set.

  2. The remainder determines which character to use from the preceding set, and that character is written once and then repeated the number of times the size of the set was subtracted from the original value.

U+0430, U+0439, U+043A, ...

Specifies that the sequence MUST consist of lowercase Bulgarian alphabet.

To determine the text that is displayed for any value, this sequence specifies a set of characters that represent positions 1–29 and then those same characters are combined with each other to construct the remaining values.

The set of characters used by this numbering format for values 1–29 is U+0430-U+044A, U+044E, U+044F, respectively.

For values greater than 29, the text displayed MUST be constructed as follows:

  1. Repeatedly subtract the size of the set (29) from the value until the result is equal to or less than the size of the set.

  2. The remainder determines which character to use from the preceding set, and that character is written once and then repeated the number of times the size of the set was subtracted from the original value.

U+0391, U+0392, U+0393, ...

Specifies that the sequence MUST consist of uppercase Greek alphabet.

This sequence specifies a set of characters that represent positions 1-9 (U+0391-U+0395, U+03A3U+03A4, U+0396-U+0398), a set of characters that represent 10, 20, 30, …, 90 (U+0399-U+03A0, U+03DE), and a set of characters that represent 100, 200, 300, …, 900 (U+03A1, U+03A3-U+03A9, U+03E0).

To determine the text that is displayed for values between 1 and 999, choose the appropriate character from the preceding sets for the units, the tens, and the hundreds position of the value. Write the hundreds character (if present), then the tens (if present) to the right of the hundreds character, and finally the units (if present) to the right of the tens character.

To determine the text that is displayed for values between 1000 and 9999, write the character U+002C, followed to the right by the appropriate character from the units set (U+0391-U+0395, U+03A3U+03A4, U+0396-U+0398) for the thousands position. Then use the preceding paragraph to determine the hundreds, tens, and units. Position those characters to the right of the thousands position.

For values larger than 9999, repeatedly subtract 9999 until the value is smaller than 9999. Use the preceding paragraphs to determine the text corresponding to the resulting value.

U+03B1, U+03B2, U+03B3, ...

Specifies that the sequence MUST consist of lowercase Greek alphabet.

This sequence specifies a set of characters that represent positions 1-9 (U+03B1-U+03B5, U+03C3U+03C4, U+03B6-U+03B8), a set of characters that represent 10, 20, 30, …, 90 (U+03B9-U+03C0, U+03DF), and a set of characters that represent 100, 200, 300, …, 900 (U+03C1, U+03C3-U+03C9, U+03E1).

To determine the text that is displayed for values between 1 and 999, choose the appropriate character from the preceding sets for the units, the tens, and the hundreds position of the value. Write the hundreds character (if present), then the tens (if present) to the right of the hundreds character, and finally the units (if present) to the right of the tens character.

To determine the text that is displayed for values between 1000 and 9999, write the character U+002C, followed by the appropriate character from the units set (U+0391-U+0395, U+03A3U+03A4, U+0396-U+0398) for the thousands position. Then use the preceding paragraph to determine the hundreds, tens, and units. Position those characters to the right of the thousands position.

For values larger than 9999, repeatedly subtract 9999 until the value is smaller than 9999. Use the preceding paragraphs to determine the text corresponding to the resulting value.

001, 002, 003, ...

Specifies that the sequence MUST consist of Arabic numbering with up to two zeros added to numbers 1 through 99.

To determine the text that is displayed for any value, this sequence specifies a set of paired characters (zero followed by one or two additional symbols) that represent positions 1–99, and then those same characters are combined with each other to construct the remaining values.

The set of characters used by this numbering format for values 0–9 is U+0030–U+0039. For values greater than the size of the set, the number MUST be constructed by following these steps:

  1. Divide the value by 10 and write the symbol that represents the remainder.

  2. Divide the quotient of the previous division by 10 and write the symbol, which represents the remainder, to the left of the existing position.

  3. Repeat step 2 until the remaining value is equal to zero.

0001, 0002, 0003, ...

Specifies that the sequence MUST consist of Arabic numbering with up to three zeros added to numbers 1 through 999.

To determine the text that is displayed for any value, this sequence specifies a set of paired characters (zero followed by up to three additional symbols) that represent positions 1–999, and then those same characters are combined with each other to construct the remaining values.

The set of characters used by this numbering format for values 0–9 is U+0030–U+0039. For values greater than the size of the set, the number MUST be constructed by following these steps:

  1. Divide the value by 10 and write the symbol that represents the remainder.

  2. Divide the quotient of the previous division by 10 and write the symbol, which represents the remainder, to the left of the existing position.

  3. Repeat step 2 until the remaining value is equal to zero.

00001, 00002, 00003, ...

Specifies that the sequence MUST consist of Arabic numbering with up to four zeros added to numbers 1 through 9999.

To determine the text that is displayed for any value, this sequence specifies a set of paired characters (zero followed by up to three additional symbols) that represent positions 1–9999, and then those same characters are combined with each other to construct the remaining values.

The set of characters used by this numbering format for values 0–9 is U+0030–U+0039. For values greater than the size of the set, the number MUST be constructed by following these steps:

  1. Divide the value by 10 and write the symbol that represents the remainder.

  2. Divide the quotient of the previous division by 10 and write the symbol, which represents the remainder, to the left of the existing position.

  3. Repeat step 2 until the remaining value is equal to zero.