Schedule (Tentative)

Date Phase
02.10 v21.0 Released
02.29 v22 Data Submission Starts
06.22 v22 Release
For details, see Release Schedule.
See also Notification Services.

Update Currency Codes

  • Go to http://www.iso.org/iso/en/prods-services/popstds/currencycodeslist.html
    • (you can set up a watch for changes in this page with http://www.watchthatpage.com )
    • WARNING: this needs to be checked periodically, since ISO does not keep accurate histories!
    • Best is to get on the notification list. If one is missed, try
      • http://web.archive.org/web/*sa_/http://www.iso.org/iso/en/prods-services/popstds/currencycodeslist.html
    • Also see http://publications.europa.eu/code/en/en-5000700.htm  for background info.
  • Save the page as {cldrdata}\tools\java\org\unicode\cldr\util\data/currency_codes_list-1.htm
    • Sanity check against the old, and check it in.
  • Run the program ExtractIsoCurrencyData, with the input being that file and the output being currencycodeslist.txt
    • You should now have a cleaned-up, tab-delimited plaintext file, at currencycodeslist.txt
    • Use CVS Diff to verify the contents, and check in.
    • If you are using Eclipse, refresh the file system (F5)
  • Run CountItems -Dmethod=generateCurrencyItems to generate the new currency list.
    • Verify that no currencies are removed. If one would be, add it to IsoCurrencyParser.oldValues, and rerun CountItems.
    • It will print a list of items at the end that need to be added to the ISO4217.txt file. Add as described below.
    • CountItems will also list the data from the file, for cross-checking SupplementalData
    • If any country changes the use of a currency, verify that there is a corresponding entry in SupplementalData
    • Since ISO doesn't publish the exact data change (!), just make sure it is ballpark.
    • For new stuff, see below.
  • Adding a currency:
    • In SupplementalData:
    • If it has unusual rounding or number of digits, add to:
      • <fractions>
      • <info iso4217="ADP" digits="0" rounding="0"/>
      • ...
    • For each country in which it comes into use, add a line for when it becomes valid
      • <region iso3166="TR">
      • <currency iso4217="TRY" from="2005-01-01"/>
    • Add the code to the file java/org/unicode/cldr/util/data/ISO4217.txt. This is important, since it is used to get the valid codes for the survey tool.
      • Example:
        • currency | TRY | new Turkish Lira | TR | TURKEY | C
      • Mark the old code in java/org/unicode/cldr/util/data/ISO4217.txt as deprecated.
        • currency | TRL | Old Turkish Lira | TR | TURKEY | O
  • Changing currency.
    • If the currency goes out of use in a country, then add the last day of use, such as:
      • <region iso3166="TR">
      • <currency iso4217="TRL" from="1922-11-01"/>
      • =>
      • <region iso3166="TR">
      • <currency iso4217="TRL" from="1922-11-01" to="2005-12-31"/>
    • Edit common/main/en.xml to add the new names (or change old ones) based on the descriptions.
      • If there is a collision between a new and old name, the old one typically changes to
        • "old X" or "X (1983-2003)".
    • Run CountItems -Dfile.encoding=UTF-8 -DSHOW_FILES -Xmx512M -Dmethod=getSubtagVariables
      • Replace the section of supplementalMetadata.xml <variable id="$currency" type="choice">
  • Do Regenerate Charts