iso3166-1.anubis 6.25 KB
/*
 * Created by SoftArchitect.
 * User: david
 * Date: 24/08/2006
 * Time: 00:15
 * 
 *
 */

read tools/function.anubis

  This list states the country names (official short names in English) in alphabetical 
  order as given in ISO 3166-1 and the corresponding ISO 3166-1-alpha-2 code elements. 
  The list is updated whenever a change to the official code list in ISO 3166-1 is 
  effected by the ISO 3166/MA. It lists 240 official short names and code elements. 
  One line of text contains one entry. 
  A country name and its code element are separated by a semicolon (;).

public type L3CountryCode:
  symbolic,
  iso3166_1(String),
  other(String). 
  
public type L3CountryInfo:
   country_info(List(L3CountryCode) codes,             // like "en", "fr", ...
            String                  flag,
            String                  english_name,
            String                  self_name).        // flag image

public define List(L3CountryInfo)
  standard_countries =
  [
    country_info([iso3166_1("AF")], "af", "Afghanistan", "Afğānistān افغانستان"),
    country_info([iso3166_1("AX")], "ax", "Åland Islands", "Åland, Ahvenanmaan maakunta"),
    country_info([iso3166_1("AL")], "al", "Albania", "Republika e Shqipërisë"),
    country_info([iso3166_1("DZ")], "dz", "Algeria", "Al-Jumhurīyah al-Jazā’irīyah, الجمهورية الجزائرية الديمقراطية الشعبي"),
    country_info([iso3166_1("AD")], "ad", "Andorra", "Principat d'Andorra, Principauté d'Andorre, Principado de Andorra"),
    country_info([iso3166_1("AS")], "as", "American Samoa", "Amerika Samoa"),
    country_info([iso3166_1("FR")], "fr", "France", "France")

  ].

public define L3CountryInfo unknown_country_info =
   country_info([other("unknown")], "unknown", "unknown", "unknown").
   
define L3CountryInfo
  l3_get_country_info 
  ( 
    String country_code,
    List(L3CountryInfo) l 
  ) =
   if l is 
     {
       [ ] then unknown_country_info,
       [h . t] then
         if (country_code = "symb") & member(h.codes, symbolic)    then h
         else if member(h.codes, iso3166_1(country_code))  then h
         else l3_get_country_info(country_code, t)
     }.

public define L3CountryInfo
  l3_get_country_info 
  ( 
    String country_code
  ) =
  l3_get_country_info(country_code, standard_countries)
.

  ANGOLA;AO
  ANGUILLA;AI
  ANTARCTICA;AQ
  ANTIGUA AND BARBUDA;AG
  ARGENTINA;AR
  ARMENIA;AM
  ARUBA;AW
  AUSTRALIA;AU
  AUSTRIA;AT
  AZERBAIJAN;AZ
  BAHAMAS;BS
  BAHRAIN;BH
  BANGLADESH;BD
  BARBADOS;BB
  BELARUS;BY
  BELGIUM;BE
  BELIZE;BZ
  BENIN;BJ
  BERMUDA;BM
  BHUTAN;BT
  BOLIVIA;BO
  BOSNIA AND HERZEGOVINA;BA
  BOTSWANA;BW
  BOUVET ISLAND;BV
  BRAZIL;BR
  BRITISH INDIAN OCEAN TERRITORY;IO
  BRUNEI DARUSSALAM;BN
  BULGARIA;BG
  BURKINA FASO;BF
  BURUNDI;BI
  CAMBODIA;KH
  CAMEROON;CM
  CANADA;CA
  CAPE VERDE;CV
  CAYMAN ISLANDS;KY
  CENTRAL AFRICAN REPUBLIC;CF
  CHAD;TD
  CHILE;CL
  CHINA;CN
  CHRISTMAS ISLAND;CX
  COCOS (KEELING) ISLANDS;CC
  COLOMBIA;CO
  COMOROS;KM
  CONGO;CG
  CONGO, THE DEMOCRATIC REPUBLIC OF THE;CD
  COOK ISLANDS;CK
  COSTA RICA;CR
  COTE D'IVOIRE;CI
  CROATIA;HR
  CUBA;CU
  CYPRUS;CY
  CZECH REPUBLIC;CZ
  DENMARK;DK
  DJIBOUTI;DJ
  DOMINICA;DM
  DOMINICAN REPUBLIC;DO
  ECUADOR;EC
  EGYPT;EG
  EL SALVADOR;SV
  EQUATORIAL GUINEA;GQ
  ERITREA;ER
  ESTONIA;EE
  ETHIOPIA;ET
  FALKLAND ISLANDS (MALVINAS);FK
  FAROE ISLANDS;FO
  FIJI;FJ
  FINLAND;FI
  FRANCE;FR
  FRENCH GUIANA;GF
  FRENCH POLYNESIA;PF
  FRENCH SOUTHERN TERRITORIES;TF
  GABON;GA
  GAMBIA;GM
  GEORGIA;GE
  GERMANY;DE
  GHANA;GH
  GIBRALTAR;GI
  GREECE;GR
  GREENLAND;GL
  GRENADA;GD
  GUADELOUPE;GP
  GUAM;GU
  GUATEMALA;GT
  GUERNSEY; GG
  GUINEA;GN
  GUINEA-BISSAU;GW
  GUYANA;GY
  HAITI;HT
  HEARD ISLAND AND MCDONALD ISLANDS;HM
  HOLY SEE (VATICAN CITY STATE);VA
  HONDURAS;HN
  HONG KONG;HK
  HUNGARY;HU
  ICELAND;IS
  INDIA;IN
  INDONESIA;ID
  IRAN, ISLAMIC REPUBLIC OF;IR
  IRAQ;IQ
  IRELAND;IE
  ISLE OF MAN;IM
  ISRAEL;IL
  ITALY;IT
  JAMAICA;JM
  JAPAN;JP
  JERSEY;JE
  JORDAN;JO
  KAZAKHSTAN;KZ
  KENYA;KE
  KIRIBATI;KI
  KOREA, DEMOCRATIC PEOPLE'S REPUBLIC OF;KP
  KOREA, REPUBLIC OF;KR
  KUWAIT;KW
  KYRGYZSTAN;KG
  LAO PEOPLE'S DEMOCRATIC REPUBLIC;LA
  LATVIA;LV
  LEBANON;LB
  LESOTHO;LS
  LIBERIA;LR
  LIBYAN ARAB JAMAHIRIYA;LY
  LIECHTENSTEIN;LI
  LITHUANIA;LT
  LUXEMBOURG;LU
  MACAO;MO
  MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF;MK
  MADAGASCAR;MG
  MALAWI;MW
  MALAYSIA;MY
  MALDIVES;MV
  MALI;ML
  MALTA;MT
  MARSHALL ISLANDS;MH
  MARTINIQUE;MQ
  MAURITANIA;MR
  MAURITIUS;MU
  MAYOTTE;YT
  MEXICO;MX
  MICRONESIA, FEDERATED STATES OF;FM
  MOLDOVA, REPUBLIC OF;MD
  MONACO;MC
  MONGOLIA;MN
  MONTSERRAT;MS
  MOROCCO;MA
  MOZAMBIQUE;MZ
  MYANMAR;MM
  NAMIBIA;NA
  NAURU;NR
  NEPAL;NP
  NETHERLANDS;NL
  NETHERLANDS ANTILLES;AN
  NEW CALEDONIA;NC
  NEW ZEALAND;NZ
  NICARAGUA;NI
  NIGER;NE
  NIGERIA;NG
  NIUE;NU
  NORFOLK ISLAND;NF
  NORTHERN MARIANA ISLANDS;MP
  NORWAY;NO
  OMAN;OM
  PAKISTAN;PK
  PALAU;PW
  PALESTINIAN TERRITORY, OCCUPIED;PS
  PANAMA;PA
  PAPUA NEW GUINEA;PG
  PARAGUAY;PY
  PERU;PE
  PHILIPPINES;PH
  PITCAIRN;PN
  POLAND;PL
  PORTUGAL;PT
  PUERTO RICO;PR
  QATAR;QA
  REUNION;RE
  ROMANIA;RO
  RUSSIAN FEDERATION;RU
  RWANDA;RW
  SAINT HELENA;SH
  SAINT KITTS AND NEVIS;KN
  SAINT LUCIA;LC
  SAINT PIERRE AND MIQUELON;PM
  SAINT VINCENT AND THE GRENADINES;VC
  SAMOA;WS
  SAN MARINO;SM
  SAO TOME AND PRINCIPE;ST
  SAUDI ARABIA;SA
  SENEGAL;SN
  SERBIA AND MONTENEGRO;CS
  SEYCHELLES;SC
  SIERRA LEONE;SL
  SINGAPORE;SG
  SLOVAKIA;SK
  SLOVENIA;SI
  SOLOMON ISLANDS;SB
  SOMALIA;SO
  SOUTH AFRICA;ZA
  SOUTH GEORGIA AND THE SOUTH SANDWICH ISLANDS;GS
  SPAIN;ES
  SRI LANKA;LK
  SUDAN;SD
  SURINAME;SR
  SVALBARD AND JAN MAYEN;SJ
  SWAZILAND;SZ
  SWEDEN;SE
  SWITZERLAND;CH
  SYRIAN ARAB REPUBLIC;SY
  TAIWAN, PROVINCE OF CHINA;TW
  TAJIKISTAN;TJ
  TANZANIA, UNITED REPUBLIC OF;TZ
  THAILAND;TH
  TIMOR-LESTE;TL
  TOGO;TG
  TOKELAU;TK
  TONGA;TO
  TRINIDAD AND TOBAGO;TT
  TUNISIA;TN
  TURKEY;TR
  TURKMENISTAN;TM
  TURKS AND CAICOS ISLANDS;TC
  TUVALU;TV
  UGANDA;UG
  UKRAINE;UA
  UNITED ARAB EMIRATES;AE
  UNITED KINGDOM;GB
  UNITED STATES;US
  UNITED STATES MINOR OUTLYING ISLANDS;UM
  URUGUAY;UY
  UZBEKISTAN;UZ
  VANUATU;VU
  VENEZUELA;VE
  VIET NAM;VN
  VIRGIN ISLANDS, BRITISH;VG
  VIRGIN ISLANDS, U.S.;VI
  WALLIS AND FUTUNA;WF
  WESTERN SAHARA;EH
  YEMEN;YE
  ZAMBIA;ZM
  ZIMBABWE;ZW