/*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
namespace org.accordproject.geo
import org.accordproject.address.PostalAddress from https://models.accordproject.org/address.cto
/**
* http://schema.org/GeoCoordinates
*/
concept GeoCoordinates {
o PostalAddress address optional
o String addressCountry optional
o Double elevation optional
o Double latitude optional
o Double longitude optional
}
/**
* http://schema.org/Place
*/
concept Place {
o PostalAddress address optional
o String branchCode optional
o String faxNumber optional
o GeoCoordinates geo optional
o String globalLocationNumber optional
o String mapUrl optional
o String isicsV4 optional
o String telephone optional
}
/**
* A country
*/
concept Country {
o String name
o CountryCodeISOAlpha2 optional
}
// https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2
enum CountryCodeISOAlpha2 {
o AD // Andorra 1974 .ad ISO 3166-2:AD
o AE // United Arab Emirates 1974 .ae ISO 3166-2:AE
o AF // Afghanistan 1974 .af ISO 3166-2:AF
o AG // Antigua and Barbuda 1974 .ag ISO 3166-2:AG
o AI // Anguilla 1985 .ai ISO 3166-2:AI AI previously represented French Afar and Issas
o AL // Albania 1974 .al ISO 3166-2:AL
o AM // Armenia 1992 .am ISO 3166-2:AM
o AO // Angola 1974 .ao ISO 3166-2:AO
o AQ // Antarctica 1974 .aq ISO 3166-2:AQ Covers the territories south of 60° south latitude Code taken from name in French: Antarctique
o AR // Argentina 1974 .ar ISO 3166-2:AR
o AS // American Samoa 1974 .as ISO 3166-2:AS
o AT // Austria 1974 .at ISO 3166-2:AT
o AU // Australia 1974 .au ISO 3166-2:AU Includes the Ashmore and Cartier Islands and the Coral Sea Islands
o AW // Aruba 1986 .aw ISO 3166-2:AW
o AX // Åland Islands 2004 .ax ISO 3166-2:AX An autonomous province of Finland
o AZ // Azerbaijan 1992 .az ISO 3166-2:AZ
o BA // Bosnia and Herzegovina 1992 .ba ISO 3166-2:BA
o BB // Barbados 1974 .bb ISO 3166-2:BB
o BD // Bangladesh 1974 .bd ISO 3166-2:BD
o BE // Belgium 1974 .be ISO 3166-2:BE
o BF // Burkina Faso 1984 .bf ISO 3166-2:BF Name changed from Upper Volta (HV)
o BG // Bulgaria 1974 .bg ISO 3166-2:BG
o BH // Bahrain 1974 .bh ISO 3166-2:BH
o BI // Burundi 1974 .bi ISO 3166-2:BI
o BJ // Benin 1977 .bj ISO 3166-2:BJ Name changed from Dahomey (DY)
o BL // Saint Barthélemy 2007 .bl ISO 3166-2:BL
o BM // Bermuda 1974 .bm ISO 3166-2:BM
o BN // Brunei Darussalam 1974 .bn ISO 3166-2:BN ISO country name follows UN designation (common name: Brunei)
o BO // Bolivia, Plurinational State of 1974 .bo ISO 3166-2:BO ISO country name follows UN designation (common name and previous ISO country name: Bolivia)
o BQ // Bonaire, Sint Eustatius and Saba 2010 .bq ISO 3166-2:BQ Consists of three Caribbean "special municipalities", which are part of the Netherlands proper: Bonaire, Sint Eustatius, and Saba (the BES Islands) Previous ISO country name: Bonaire, Saint Eustatius and Saba BQ previously represented British Antarctic Territory
o BR // Brazil 1974 .br ISO 3166-2:BR
o BS // Bahamas 1974 .bs ISO 3166-2:BS
o BT // Bhutan 1974 .bt ISO 3166-2:BT
o BV // Bouvet Island 1974 .bv ISO 3166-2:BV Belongs to Norway
o BW // Botswana 1974 .bw ISO 3166-2:BW
o BY // Belarus 1974 .by ISO 3166-2:BY Code taken from previous ISO country name: Byelorussian SSR (now assigned ISO 3166-3 code BYAA) Code assigned as the country was already a UN member since 1945[14]
o BZ // Belize 1974 .bz ISO 3166-2:BZ
o CA // Canada 1974 .ca ISO 3166-2:CA
o CC // Cocos (Keeling) Islands 1974 .cc ISO 3166-2:CC
o CD // Congo, the Democratic Republic of the 1997 .cd ISO 3166-2:CD Name changed from Zaire (ZR)
o CF // Central African Republic 1974 .cf ISO 3166-2:CF
o CG // Congo 1974 .cg ISO 3166-2:CG
o CH // Switzerland 1974 .ch ISO 3166-2:CH Code taken from name in Latin: Confoederatio Helvetica
o CI // Côte d'Ivoire 1974 .ci ISO 3166-2:CI ISO country name follows UN designation (common name: Ivory Coast)
o CK // Cook Islands 1974 .ck ISO 3166-2:CK
o CL // Chile 1974 .cl ISO 3166-2:CL
o CM // Cameroon 1974 .cm ISO 3166-2:CM
o CN // China 1974 .cn ISO 3166-2:CN
o CO // Colombia 1974 .co ISO 3166-2:CO
o CR // Costa Rica 1974 .cr ISO 3166-2:CR
o CU // Cuba 1974 .cu ISO 3166-2:CU
o CV // Cabo Verde 1974 .cv ISO 3166-2:CV
o CW // Curaçao 2010 .cw ISO 3166-2:CW
o CX // Christmas Island 1974 .cx ISO 3166-2:CX
o CY // Cyprus 1974 .cy ISO 3166-2:CY
o CZ // Czechia 1993 .cz ISO 3166-2:CZ Previous ISO country name: Czech Republic
o DE // Germany 1974 .de ISO 3166-2:DE Code taken from name in German: Deutschland Code used for West Germany before 1990 (previous ISO country name: Germany, Federal Republic of)
o DJ // Djibouti 1977 .dj ISO 3166-2:DJ Name changed from French Afar and Issas (AI)
o DK // Denmark 1974 .dk ISO 3166-2:DK
o DM // Dominica 1974 .dm ISO 3166-2:DM
o DO // Dominican Republic 1974 .do ISO 3166-2:DO
o DZ // Algeria 1974 .dz ISO 3166-2:DZ Code taken from name in Kabyle: Dzayer
o EC // Ecuador 1974 .ec ISO 3166-2:EC
o EE // Estonia 1992 .ee ISO 3166-2:EE Code taken from name in Estonian: Eesti
o EG // Egypt 1974 .eg ISO 3166-2:EG
o EH // Western Sahara 1974 .eh ISO 3166-2:EH Previous ISO country name: Spanish Sahara (code taken from name in Spanish: Sahara español)
o ER // Eritrea 1993 .er ISO 3166-2:ER
o ES // Spain 1974 .es ISO 3166-2:ES Code taken from name in Spanish: España
o ET // Ethiopia 1974 .et ISO 3166-2:ET
o FI // Finland 1974 .fi ISO 3166-2:FI
o FJ // Fiji 1974 .fj ISO 3166-2:FJ
o FK // Falkland Islands (Malvinas) 1974 .fk ISO 3166-2:FK ISO country name follows UN designation due to the Falkland Islands sovereignty dispute (local common name: Falkland Islands)[15]
o FM // Micronesia, Federated States of 1986 .fm ISO 3166-2:FM Previous ISO country name: Micronesia
o FO // Faroe Islands 1974 .fo ISO 3166-2:FO Code taken from name in Faroese: Føroyar
o FR // France 1974 .fr ISO 3166-2:FR Includes Clipperton Island
o GA // Gabon 1974 .ga ISO 3166-2:GA
o GB // United Kingdom of Great Britain and Northern Ireland 1974 .gb (.uk) ISO 3166-2:GB Code taken from Great Britain (from official name: United Kingdom of Great Britain and Northern Ireland)[16] .uk is the primary ccTLD of the United Kingdom instead of .gb (see code UK, which is exceptionally reserved)
o GD // Grenada 1974 .gd ISO 3166-2:GD
o GE // Georgia 1992 .ge ISO 3166-2:GE GE previously represented Gilbert and Ellice Islands
o GF // French Guiana 1974 .gf ISO 3166-2:GF Code taken from name in French: Guyane française
o GG // Guernsey 2006 .gg ISO 3166-2:GG a British Crown dependency
o GH // Ghana 1974 .gh ISO 3166-2:GH
o GI // Gibraltar 1974 .gi ISO 3166-2:GI
o GL // Greenland 1974 .gl ISO 3166-2:GL
o GM // Gambia 1974 .gm ISO 3166-2:GM
o GN // Guinea 1974 .gn ISO 3166-2:GN
o GP // Guadeloupe 1974 .gp ISO 3166-2:GP
o GQ // Equatorial Guinea 1974 .gq ISO 3166-2:GQ Code taken from name in French: Guinée équatoriale
o GR // Greece 1974 .gr ISO 3166-2:GR
o GS // South Georgia and the South Sandwich Islands 1993 .gs ISO 3166-2:GS
o GT // Guatemala 1974 .gt ISO 3166-2:GT
o GU // Guam 1974 .gu ISO 3166-2:GU
o GW // Guinea-Bissau 1974 .gw ISO 3166-2:GW
o GY // Guyana 1974 .gy ISO 3166-2:GY
o HK // Hong Kong 1974 .hk ISO 3166-2:HK
o HM // Heard Island and McDonald Islands 1974 .hm ISO 3166-2:HM
o HN // Honduras 1974 .hn ISO 3166-2:HN
o HR // Croatia 1992 .hr ISO 3166-2:HR Code taken from name in Croatian: Hrvatska
o HT // Haiti 1974 .ht ISO 3166-2:HT
o HU // Hungary 1974 .hu ISO 3166-2:HU
o ID // Indonesia 1974 .id ISO 3166-2:ID
o IE // Ireland 1974 .ie ISO 3166-2:IE
o IL // Israel 1974 .il ISO 3166-2:IL
o IM // Isle of Man 2006 .im ISO 3166-2:IM a British Crown dependency
o IN // India 1974 .in ISO 3166-2:IN
o IO // British Indian Ocean Territory 1974 .io ISO 3166-2:IO
o IQ // Iraq 1974 .iq ISO 3166-2:IQ
o IR // Iran, Islamic Republic of 1974 .ir ISO 3166-2:IR ISO country name follows UN designation (common name: Iran)
o IS // Iceland 1974 .is ISO 3166-2:IS Code taken from name in Icelandic: Ísland
o IT // Italy 1974 .it ISO 3166-2:IT
o JE // Jersey 2006 .je ISO 3166-2:JE a British Crown dependency
o JM // Jamaica 1974 .jm ISO 3166-2:JM
o JO // Jordan 1974 .jo ISO 3166-2:JO
o JP // Japan 1974 .jp ISO 3166-2:JP
o KE // Kenya 1974 .ke ISO 3166-2:KE
o KG // Kyrgyzstan 1992 .kg ISO 3166-2:KG
o KH // Cambodia 1974 .kh ISO 3166-2:KH Code taken from former name: Khmer Republic Previous ISO country name: Kampuchea
o KI // Kiribati 1979 .ki ISO 3166-2:KI
o KM // Comoros 1974 .km ISO 3166-2:KM Code taken from name in Comorian: Komori
o KN // Saint Kitts and Nevis 1974 .kn ISO 3166-2:KN Previous ISO country name: Saint Kitts-Nevis-Anguilla
o KP // Korea, Democratic People's Republic of 1974 .kp ISO 3166-2:KP ISO country name follows UN designation (common name: North Korea)
o KR // Korea, Republic of 1974 .kr ISO 3166-2:KR ISO country name follows UN designation (common name: South Korea)
o KW // Kuwait 1974 .kw ISO 3166-2:KW
o KY // Cayman Islands 1974 .ky ISO 3166-2:KY
o KZ // Kazakhstan 1992 .kz ISO 3166-2:KZ Previous ISO country name: Kazakstan
o LA // Lao People's Democratic Republic 1974 .la ISO 3166-2:LA ISO country name follows UN designation (common name: Laos)
o LB // Lebanon 1974 .lb ISO 3166-2:LB
o LC // Saint Lucia 1974 .lc ISO 3166-2:LC
o LI // Liechtenstein 1974 .li ISO 3166-2:LI
o LK // Sri Lanka 1974 .lk ISO 3166-2:LK
o LR // Liberia 1974 .lr ISO 3166-2:LR
o LS // Lesotho 1974 .ls ISO 3166-2:LS
o LT // Lithuania 1992 .lt ISO 3166-2:LT
o LU // Luxembourg 1974 .lu ISO 3166-2:LU
o LV // Latvia 1992 .lv ISO 3166-2:LV
o LY // Libya 1974 .ly ISO 3166-2:LY Previous ISO country name: Libyan Arab Jamahiriya
o MA // Morocco 1974 .ma ISO 3166-2:MA Code taken from name in French: Maroc
o MC // Monaco 1974 .mc ISO 3166-2:MC
o MD // Moldova, Republic of 1992 .md ISO 3166-2:MD ISO country name follows UN designation (common name and previous ISO country name: Moldova)
o ME // Montenegro 2006 .me ISO 3166-2:ME
o MF // Saint Martin (French part) 2007 .mf ISO 3166-2:MF The Dutch part of Saint Martin island is assigned code SX
o MG // Madagascar 1974 .mg ISO 3166-2:MG
o MH // Marshall Islands 1986 .mh ISO 3166-2:MH
o MK // Macedonia, the former Yugoslav Republic of 1993 .mk ISO 3166-2:MK ISO country name follows UN designation (due to Macedonia naming dispute; official name used by country itself: Republic of Macedonia) Code taken from name in Macedonian: Makedonija
o ML // Mali 1974 .ml ISO 3166-2:ML
o MM // Myanmar 1989 .mm ISO 3166-2:MM Name changed from Burma (BU)
o MN // Mongolia 1974 .mn ISO 3166-2:MN
o MO // Macao 1974 .mo ISO 3166-2:MO Previous ISO country name: Macau
o MP // Northern Mariana Islands 1986 .mp ISO 3166-2:MP
o MQ // Martinique 1974 .mq ISO 3166-2:MQ
o MR // Mauritania 1974 .mr ISO 3166-2:MR
o MS // Montserrat 1974 .ms ISO 3166-2:MS
o MT // Malta 1974 .mt ISO 3166-2:MT
o MU // Mauritius 1974 .mu ISO 3166-2:MU
o MV // Maldives 1974 .mv ISO 3166-2:MV
o MW // Malawi 1974 .mw ISO 3166-2:MW
o MX // Mexico 1974 .mx ISO 3166-2:MX
o MY // Malaysia 1974 .my ISO 3166-2:MY
o MZ // Mozambique 1974 .mz ISO 3166-2:MZ
o NA // Namibia 1974 .na ISO 3166-2:NA
o NC // New Caledonia 1974 .nc ISO 3166-2:NC
o NE // Niger 1974 .ne ISO 3166-2:NE
o NF // Norfolk Island 1974 .nf ISO 3166-2:NF
o NG // Nigeria 1974 .ng ISO 3166-2:NG
o NI // Nicaragua 1974 .ni ISO 3166-2:NI
o NL // Netherlands 1974 .nl ISO 3166-2:NL
o NO // Norway 1974 .no ISO 3166-2:NO
o NP // Nepal 1974 .np ISO 3166-2:NP
o NR // Nauru 1974 .nr ISO 3166-2:NR
o NU // Niue 1974 .nu ISO 3166-2:NU
o NZ // New Zealand 1974 .nz ISO 3166-2:NZ
o OM // Oman 1974 .om ISO 3166-2:OM
o PA // Panama 1974 .pa ISO 3166-2:PA
o PE // Peru 1974 .pe ISO 3166-2:PE
o PF // French Polynesia 1974 .pf ISO 3166-2:PF Code taken from name in French: Polynésie française
o PG // Papua New Guinea 1974 .pg ISO 3166-2:PG
o PH // Philippines 1974 .ph ISO 3166-2:PH
o PK // Pakistan 1974 .pk ISO 3166-2:PK
o PL // Poland 1974 .pl ISO 3166-2:PL
o PM // Saint Pierre and Miquelon 1974 .pm ISO 3166-2:PM
o PN // Pitcairn 1974 .pn ISO 3166-2:PN
o PR // Puerto Rico 1974 .pr ISO 3166-2:PR
o PS // Palestine, State of 1999 .ps ISO 3166-2:PS Previous ISO country name: Palestinian Territory, Occupied Consists of the West Bank and the Gaza Strip
o PT // Portugal 1974 .pt ISO 3166-2:PT
o PW // Palau 1986 .pw ISO 3166-2:PW
o PY // Paraguay 1974 .py ISO 3166-2:PY
o QA // Qatar 1974 .qa ISO 3166-2:QA
o RE // Réunion 1974 .re ISO 3166-2:RE
o RO // Romania 1974 .ro ISO 3166-2:RO
o RS // Serbia 2006 .rs ISO 3166-2:RS
o RU // Russian Federation 1992 .ru ISO 3166-2:RU ISO country name follows UN designation (common name: Russia)
o RW // Rwanda 1974 .rw ISO 3166-2:RW
o SA // Saudi Arabia 1974 .sa ISO 3166-2:SA
o SB // Solomon Islands 1974 .sb ISO 3166-2:SB Code taken from former name: British Solomon Islands
o SC // Seychelles 1974 .sc ISO 3166-2:SC
o SD // Sudan 1974 .sd ISO 3166-2:SD
o SE // Sweden 1974 .se ISO 3166-2:SE
o SG // Singapore 1974 .sg ISO 3166-2:SG
o SH // Saint Helena, Ascension and Tristan da Cunha 1974 .sh ISO 3166-2:SH Previous ISO country name: Saint Helena
o SI // Slovenia 1992 .si ISO 3166-2:SI
o SJ // Svalbard and Jan Mayen 1974 .sj ISO 3166-2:SJ Consists of two arctic territories of Norway: Svalbard and Jan Mayen
o SK // Slovakia 1993 .sk ISO 3166-2:SK SK previously represented Sikkim
o SL // Sierra Leone 1974 .sl ISO 3166-2:SL
o SM // San Marino 1974 .sm ISO 3166-2:SM
o SN // Senegal 1974 .sn ISO 3166-2:SN
o SO // Somalia 1974 .so ISO 3166-2:SO
o SR // Suriname 1974 .sr ISO 3166-2:SR
o SS // South Sudan 2011 .ss ISO 3166-2:SS
o ST // Sao Tome and Principe 1974 .st ISO 3166-2:ST
o SV // El Salvador 1974 .sv ISO 3166-2:SV
o SX // Sint Maarten (Dutch part) 2010 .sx ISO 3166-2:SX The French part of Saint Martin island is assigned code MF
o SY // Syrian Arab Republic 1974 .sy ISO 3166-2:SY ISO country name follows UN designation (common name: Syria)
o SZ // Swaziland 1974 .sz ISO 3166-2:SZ
o TC // Turks and Caicos Islands 1974 .tc ISO 3166-2:TC
o TD // Chad 1974 .td ISO 3166-2:TD Code taken from name in French: Tchad
o TF // French Southern Territories 1979 .tf ISO 3166-2:TF Covers the French Southern and Antarctic Lands except Adélie Land Code taken from name in French: Terres australes françaises
o TG // Togo 1974 .tg ISO 3166-2:TG
o TH // Thailand 1974 .th ISO 3166-2:TH
o TJ // Tajikistan 1992 .tj ISO 3166-2:TJ
o TK // Tokelau 1974 .tk ISO 3166-2:TK
o TL // Timor-Leste 2002 .tl ISO 3166-2:TL Name changed from East Timor (TP)
o TM // Turkmenistan 1992 .tm ISO 3166-2:TM
o TN // Tunisia 1974 .tn ISO 3166-2:TN
o TO // Tonga 1974 .to ISO 3166-2:TO
o TR // Turkey 1974 .tr ISO 3166-2:TR
o TT // Trinidad and Tobago 1974 .tt ISO 3166-2:TT
o TV // Tuvalu 1977 .tv ISO 3166-2:TV
o TW // Taiwan, Province of China 1974 .tw ISO 3166-2:TW Covers the current jurisdiction of the Republic of China ISO country name follows UN designation (due to political status of Taiwan within the UN)[16] (common name: Taiwan)
o TZ // Tanzania, United Republic of 1974 .tz ISO 3166-2:TZ ISO country name follows UN designation (common name: Tanzania)
o UA // Ukraine 1974 .ua ISO 3166-2:UA Previous ISO country name: Ukrainian SSR Code assigned as the country was already a UN member since 1945[14]
o UG // Uganda 1974 .ug ISO 3166-2:UG
o UM // United States Minor Outlying Islands 1986 .um ISO 3166-2:UM Consists of nine minor insular areas of the United States: Baker Island, Howland Island, Jarvis Island, Johnston Atoll, Kingman Reef, Midway Islands, Navassa Island, Palmyra Atoll, and Wake Island
o US // United States of America 1974 .us ISO 3166-2:US
o UY // Uruguay 1974 .uy ISO 3166-2:UY
o UZ // Uzbekistan 1992 .uz ISO 3166-2:UZ
o VA // Holy See 1974 .va ISO 3166-2:VA Covers Vatican City, territory of the Holy See Previous ISO country name: Vatican City State (Holy See)
o VC // Saint Vincent and the Grenadines 1974 .vc ISO 3166-2:VC
o VE // Venezuela, Bolivarian Republic of 1974 .ve ISO 3166-2:VE ISO country name follows UN designation (common name and previous ISO country name: Venezuela)
o VG // Virgin Islands, British 1974 .vg ISO 3166-2:VG
o VI // Virgin Islands, U.S. 1974 .vi ISO 3166-2:VI
o VN // Viet Nam 1974 .vn ISO 3166-2:VN ISO country name follows UN designation (common name: Vietnam) Code used for Republic of Viet Nam (Common Name:South Vietnam) before 1977
o VU // Vanuatu 1980 .vu ISO 3166-2:VU Name changed from New Hebrides (NH)
o WF // Wallis and Futuna 1974 .wf ISO 3166-2:WF
o WS // Samoa 1974 .ws ISO 3166-2:WS Code taken from former name: Western Samoa
o YE // Yemen 1974 .ye ISO 3166-2:YE Previous ISO country name: Yemen, Republic of Code used for North Yemen before 1990
o YT // Mayotte 1993 .yt ISO 3166-2:YT
o ZA // South Africa 1974 .za ISO 3166-2:ZA Code taken from name in Dutch: Zuid-Afrika
o ZM // Zambia 1974 .zm ISO 3166-2:ZM
o ZW // Zimbabwe 1980 .zw ISO 3166-2:ZW Name changed from Southern Rhodesia (RH)
}