This package provides classes associated with numbering and the
It is possible to extend the range of numberings available by providing a Numberer
for a specific language. This must be registered with the
In earlier releases, there was a fixed relationship between the language and the
implementing class (the Numberer was always named Numberer_xx where xx is the language code,
corresponding to the value of the lang attribute in
xsl:number). From Saxon 9.2,
this relationship no longer exists.
These classes also include code to support the localization of dates as defined
in the XSLT
format-dateTime() group of functions.
Numberer_en provides the standard numbering options. As well as the
format tokens defined in the XSLT 1.0 specification (for example, "1", "001", "a", "i") it supports
other numbering options including:
- Greek upper and lower case letters
- Cyrillic upper and lower case letters
- Hebrew letters
- Japanese: Hiragana-A, Hiragana-B, Katakana-A, or Katakana-B letters, and Kanji digits
- English words: the format token "one" produces numbers such as "twenty five"
Localizations for a number of European languages are provided in package
In Saxon-PE and Saxon-EE these are issued in binary form as part of the Saxon JAR. For Saxon-HE, they are
issued only in source code form.
Class Summary Class Description AbstractNumbererClass AbstractNumberer is a base implementation of Numberer that provides language-independent default numbering This supports the xsl:number element. AlphanumericThis class contains static utility methods to test whether a character is alphanumeric, as defined by the rules of xsl:number: that is, whether it is in one of the Unicode categories Nd, Nl, No, Lu, Ll, Lt, Lm or Lo In Saxon 9.9 the data has been regenerated from Unicode 10.0.0. IrregularGroupFormatterHandles grouping separators when formatting a number in cases where the grouping separators are not at regular intervals NamedTimeZoneThis class attempts to identify a timezone name, given the date (including the time zone offset) and the country. Numberer_enNumberer class for the English language. NumberFormatterClass NumberFormatter defines a method to format a ArrayList of integers as a character string according to a supplied format specification. NumericGroupFormatterA NumericGroupFormatter is responsible for insertion of grouping separators into a formatted number (for example, reformatting "1234" as "1,234"). RegularGroupFormatterA RegularGroupFormatter is a NumericGroupFormatter that inserts a separator at constant intervals through a number: for example, a comma after every three digits counting from the right.