KDE Core/ISO Codes
ISO Codes in KDE
KDE uses ISO standard codes in a number of places, primarily the Country Code, Language Code and Currency Code in KLocale. Currently KDE maintains our own data files for these codes and our own translations which imposes a maintenance burden to keep the codes and translations up to date.
The Debian iso-codes project maintains a package that includes xml files of various ISO Codes and translations for them in po files. This project is well maintained and regularly updated and is used by many projects and distro's for this. It would make sense to adopt iso-codes as the source for our codes and translations.
ISO 3166 Country Code
http://git.debian.org/?p=iso-codes/iso-codes.git;a=blob;f=iso_3166/iso_3166.xml
The iso-codes project xml format is as follows:
<!DOCTYPE iso_3166_entries [ <!ELEMENT iso_3166_entries (iso_3166_entry+, iso_3166_3_entry*)> <!ELEMENT iso_3166_entry EMPTY> <!ATTLIST iso_3166_entry alpha_2_code CDATA #REQUIRED alpha_3_code CDATA #REQUIRED numeric_code CDATA #REQUIRED common_name CDATA #IMPLIED name CDATA #REQUIRED official_name CDATA #IMPLIED > <!ELEMENT iso_3166_3_entry EMPTY> <!ATTLIST iso_3166_3_entry alpha_4_code CDATA #REQUIRED alpha_3_code CDATA #REQUIRED numeric_code CDATA #IMPLIED date_withdrawn CDATA #IMPLIED names CDATA #REQUIRED comment CDATA #IMPLIED > ]>
Some example entries are:
<iso_3166_entry alpha_2_code="AF" alpha_3_code="AFG" numeric_code="004" name="Afghanistan" official_name="Islamic Republic of Afghanistan" />
<iso_3166_3_entry alpha_4_code="YUCS" alpha_3_code="YUG" numeric_code="891" date_withdrawn="1993-07-28" names="Yugoslavia, Socialist Federal Republic of" />
Translation Status
http://translationproject.org/domain/iso_3166.html