# Chart Messages

This is a help-text file for use with the survey tool. You can add a new row, where the key is a key that the program knows about, and the Text to Insert is what you want to show up as help text, or modify existing text. The software that interprets this expects a particular format, so don't make arbitrary changes (see the end).

Key | Text to Insert
--- | ---
territory_language_information | The language data is provided for localization testing, and is under development for CLDR 1.5. The main goal is to provide approximate figures for the literate, functional population for each language in each territory: that is, the population that is able to read and write each language, and is comfortable enough to use it with computers. The GDP and Literacy figures are taken from the World Bank where available, otherwise supplemented by FactBook data and other sources. The GDP figures are "PPP (constant 2000 international $)". Much of the per-language data is taken from the Ethnologue, but is supplemented and processed using many other sources, including per-country census data. (The focus of the Ethnologue is native speakers, which includes people who are not literate, and excludes people who are functional second-langauge users.) The percentages may add up to more than 100% due to multilingual populations, or may be less than 100% due to illiteracy or because the data has not yet been gathered or processed. Languages with a small population may be omitted. Official status is supplied where available, formatted as {O}. Hovering with the mouse shows a short description. Likely languages and scripts:To see (and verify) the likely languages and scripts for this subtag, click on the country code. Reporting Defects: If you find errors or omissions in this data, please report the information with the bug or add new links, below. XML Source: supplementalData.xml (see the <territoryInfo>, <calendarData>, <weekData>, and <measurementData> elements)
language_territory_information | The language data is provided for localization testing, and is under development for CLDR 1.5. For information on the meaning of the different values, see Territory-Language Information. Reporting Defects: If you find errors or omissions in this data, or add a new territory for a language, see the add new links below. XML Source: supplementalData.xml (see the <territoryInfo> element)
detailed_territory_currency_information | The following table shows when currencies were in use in different countries. See also Decimal Digits and Rounding. The digits column shows the number of digits to use; if there is special rounding (such as for CH), that is in parentheses. The Countries column shows which countries the currency is — or has been — used in, officially. Reporting Defects: If you find errors or omissions in this data, please report the information with a bug report. XML Source: supplementalData.xml (see the <currencyData> element)
languages_and_scripts | This table shows some information about the scripts commonly used with different languages. This information is not complete, and is being enhanced over time. The table is sorted by language; for the same information sorted by script, see Scripts and Languages. The following conventions are used in the table:
Column | Comment
--- | ---
Language | Where there isn't any information in Unicode CLDR as to which languages are written in a given script, the language code is given as Unknown or Invalid Language ("und").
ML | The modern language column shows "O" if the language is not in customary modern use (currently following ISO 639-3 Types: Ancient, Extinct, Historical, or Constructed).
P | The Primary column shows "N" if the language/script combination an official language. For more information, see Language-Territory Information.
Script | Where there isn't any information in Unicode CLDR as to which script is used by a language, the script code is given as Unknown or Invalid Script ("Zzzz").
MS | The modern script column shows "N" if the script is not in customary modern use.
Reporting Defects: If you find errors or omissions in this data, please report the information with a bug report. XML Source: supplementalData.xml (see the <languageData> element)
scripts_and_languages | This table shows some information about the scripts commonly used with different languages. This information is not complete, and is being enhanced over time. The table is sorted by script; for the same information sorted by language, see Languages and Scripts. The following conventions are used in the table:
Column | Comment
--- | ---
Language | Where there isn't any information in Unicode CLDR as to which languages are written in a given script, the language code is given as Unknown or Invalid Language ("und").
ML | The modern language column shows "O" if the language is not in customary modern use (currently following ISO 639-3 Types: Ancient, Extinct, Historical, or Constructed).
P | The Primary column shows "N" if the language/script combination an official language. For more information, see Language-Territory Information.
Script | Where there isn't any information in Unicode CLDR as to which script is used by a language, the script code is given as Unknown or Invalid Script ("Zzzz").
MS | The modern script column shows "N" if the script is not in customary modern use.
Reporting Defects: If you find errors or omissions in this data, please report the information with a bug report. XML Source: supplementalData.xml (see the <languageData> element)
territory_containment_un_m_49 | The Territory Containment table shows the organization of territories and regions according to UN M.49, starting with the World. (CLDR supplements this table with the QO code for outlying areas that would not otherwise be included.) As the last column, the timezone IDs for that country are listed. Reporting Defects: If you find errors or omissions in this data, please report the information with a bug report. However, such reports should be limited to cases where the information here deviates from UN M.49. XML Source: supplementalData.xml (see the <territoryContainment> and <timezoneData> elements)
windows_tzid | The Windows-Tzid table shows the mapping from Windows timezone IDs to the standard TZIDs. Reporting Defects: If you find errors or omissions in this data, please report the information with a bug report. XML Source: supplementalData.xml
character_fallback_substitutions | The Character Fallback Substitutions table shows recommended fallbacks for use when a charset or supported repertoire does not contain a desired character, using the data from characters.xml. There is more than one possible fallback: the recommended usage is that when a character value is not in the desired repertoire the following process is used, whereby the first value that is wholly in the desired repertoire is used. `toNFC`(value) other canonically equivalent sequences, if there are any the explicit substitutes value from characters.xml (in order) `toNFKC`(value) The Explicit, NFC, and NFKC substitutes are shown in the chart by different colors. Note that the character fallbacks do lose information, and should not be used where there is a viable alternative, such as HTML escapes. Reporting Defects: If you find errors or omissions in this data, please report the information with a bug report. XML Source: characters.xml
aliases | Aliases show how to map deprecated codes or aliases onto the ones that should be used to access CLDR data. Most other metadata is not shown in tables; the source data should be consulted. Codes are shown in brackets before or after the English name, eg "Vanuatu [VU]" Reporting Defects: If you find errors or omissions in this data, please report the information with a bug report. XML Source: supplementalMetadata.xml (see the <alias> element)
likely_subtags | There are a number of situations where it is useful to be able to find the most likely language, script, or region, if that information is otherwise missing. For example: Given the language "zh" and the region "TW", what is the most likely script? Given the script "Thai" what is the most likely language or region? Given the region TW, what is the most likely language and script? Conversely, given a locale, it is useful to find out which fields (language, script, or region) may be superfluous, in the sense that they contain the likely tags. For example, "en_Latn" can be simplified down to "en" since "Latn" is the likely script for "en"; "ja_Japn_JP" can be simplified down to "ja". The likelySubtag supplemental data provides default information for computing these values. This data is based on the default content data, the population data, and the the suppress-script data in [BCP47]. It is heuristically derived, and may change over time. The chart shows how the data "fills in" the missing fields in the source values to get the target values. Reporting Defects: If you find errors or omissions in this data, please report the information with a bug report.
language_plural_rules | Languages vary in how they handle plurals of nouns or unit expressions ("hours", "meters", and so on). Some languages have two forms, like English; some languages have only a single form; and some languages have multiple forms (see Slovenian below). CLDR uses short, mnemonic tags for these plural categories: zero one (singular) two (dual) few (paucal) many other (general plural form -- also used if the language only has a single form) These categories are used to provide localized units, with a more natural ways of expressing phrases that vary in plural form, such as "1 hour" vs "2 hours". While they cannot express all the intricacies of natural languages, they allow for more natural phrasing than constructions like "1 hour(s)". These categories are only mnemonics -- the names don't necessarily imply the exact contents of the category. For example, for both English and French the number 1 has the category one (singular). In English, every other number has a plural form, and is given the category other. French is similar, except that the number 0 also has the category one and not other or zero, because the form of units qualified by 0 is also singular. Note that these categories may be different from the forms used for pronouns or other parts of speech. In particular, they are solely concerned with changes that would need to be made if different numbers, expressed with decimal digits, are used with a sentence. If there is a dual form in the language, but it isn't used with decimal numbers, it should not be reflected in the categories. That is, the key feature to look for is: If you were to substitute a different number for "1" in a sentence or phrase, would the rest of the text be required to change? For example, in a caption for a video: "Duration: 1 hour" → "Duration: 3.2 hours" Plural rule syntax: Each plural rule is a condition with a boolean result that specifies whether that rule (i.e. that plural form) applies for a given numeric value n; conditions have the following syntax:
    condition     = and_condition ('or' and_condition)*
    and_condition = relation ('and' relation)*
    relation      = is_relation | in_relation | within_relation | 'n' <EOL>
    is_relation   = expr 'is' ('not')? value
    in_relation   = expr ('not')? 'in' range
    within_relation = expr ('not')? 'within' range
    expr          = 'n' ('mod' value)?
    value         = digit+
    digit         = 0|1|2|3|4|5|6|7|8|9
    range         = value'..'value
Whitespace (defined as Unicode Pattern_White_Space) can occur between or around any of the above tokens. Rules should be mutually exclusive; for a given numeric value, only one rule should apply (i.e. the condition should only be true for one of the pluralRule elements. The difference between 'in' and 'within' is that 'in' only includes integers in the specified range, while 'within' includes all values. 'mod' (modulus) is a remainder operation as defined in Java; for example, the result of "4.3 mod 3" is 1.3. Examples:
one: n is 1 few: n in 2..4 | This defines two rules, for 'one' and 'few'. The condition for 'one' is "n is 1" which means that the number must be equal to 1 for this condition to pass. The condition for 'few' is "n in 2..4" which means that the number must be between 2 and 4 inclusive for this condition to pass. All other numbers are assigned the keyword 'other' by the default rule.
zero: n is 0 or n is not 1 and n mod 100 in 1..19 one: n is 1 | Each rule must not overlap with other rules. Also note that a modulus is applied to n in the last rule, thus its condition holds for 119, 219, 319...
one: n is 1 few: n mod 10 in 2..4 and n mod 100 not in 12..14 | This illustrates conjunction and negation. The condition for 'few' has two parts, both of which must be met: "n mod 10 in 2..4" and "n mod 100 not in 12..14". The first part applies a modulus to n before the test as in the previous example. The second part applies a different modulus and also uses negation, thus it matches all numbers not in 12, 13, 14, 112, 113, 114, 212, 213, 214...
The following is draft data for this version of CLDR, so please look it over carefully. Known omissions are: Data is only available for a limited set of languages, so please supply data for missing cases! The available data may need adjustment if it is inaccurate. Please look over examples of decimal values (such as 1.31) to see which plural form they should have. The default in the absence of other information is for them to have the category other. That is, in expressions like the following (where "hours" could be any countable nouns: minutes, degrees, meters, and so on), what categories should the numbers fall into? 0.23 hours 1.23 hours 2.23 hours 5.23 hours ... Reporting Defects: When you find errors or omissions in this data, please report the information with a bug report. Please give examples of how the forms may differ. Here's an example:
Sample Bug Report
The draft Ukrainian (uk) plural rules are: one: 1, 21, 31, 41, 51, 61... few: 2-4, 22-24, 32-34... other: 0, 5-20, 25-30, 35-40...; 1.31, 2.31, 5.31... Although rules for integer values are correct, there needs to be four categories, with an extra one for fractions. For example: 1 день 2 дні 5 днів 1.31 дня 2.31 дня 5.31 дня
error_locale_header|error_index_header | Please review and correct them. Note that errors in sublocales are often fixed by fixing the main locale. This list is only generated daily, and so may not reflect fixes you have made until tomorrow. (There were production problems in integrating it fully into the Survey tool. However, it should let you see the problems and make sure that they get taken care of.) The table below gives a count for each of the following kinds of items. The focus is on correcting the problems, and getting enough votes for "minimal approval" (status=contributed -- high enough to get incorporated into most implementations). Disputed: Of those voting on an item, if enough switched their vote the item could have minimal approval. Conflicted: For this many items, the organization is losing a vote because of conflicts within the organization. Error: The item has a serious error and must be corrected. Warning: The item has a significant problem that should be corrected. Missing Coverage: These items should be translated but are missing. Missing Votes: These items have translations, but not enough votes for "minimal approval".

The text to insert can be fairly arbitrary HTML. The software that reads this table will search the first column (eg between <td> and </td>) and return the contents of the second column.

WARNING

- It uses a very dumb parser, so make sure that table elements are matched, eg <td> with </td>, and also that <tr>, </tr>, <table>, and </table> are on separate lines.
- The regular expression for the key must match the whole path, so if it is an interior substring, remember to add .* on both ends.