From 4c21a7ffc9a4915673cb2c2843963919e664e627 Mon Sep 17 00:00:00 2001 From: Henrique Moody Date: Fri, 19 Mar 2021 14:59:31 +0100 Subject: [PATCH] Revert "Use "sokil/php-isocodes" on SubdivisionCode" This reverts commit 9c9c76ebfbf8821738accb76a80cabb954cdd99e. --- bin/update-iso-codes | 98 ++++++++++ composer.json | 2 - data/iso_3166-2/AD.json | 13 ++ data/iso_3166-2/AE.json | 13 ++ data/iso_3166-2/AF.json | 40 ++++ data/iso_3166-2/AG.json | 14 ++ data/iso_3166-2/AI.json | 5 + data/iso_3166-2/AL.json | 54 ++++++ data/iso_3166-2/AM.json | 17 ++ data/iso_3166-2/AN.json | 5 + data/iso_3166-2/AO.json | 24 +++ data/iso_3166-2/AQ.json | 5 + data/iso_3166-2/AR.json | 30 +++ data/iso_3166-2/AS.json | 11 ++ data/iso_3166-2/AT.json | 15 ++ data/iso_3166-2/AU.json | 14 ++ data/iso_3166-2/AW.json | 5 + data/iso_3166-2/AX.json | 5 + data/iso_3166-2/AZ.json | 84 +++++++++ data/iso_3166-2/BA.json | 19 ++ data/iso_3166-2/BB.json | 17 ++ data/iso_3166-2/BD.json | 78 ++++++++ data/iso_3166-2/BE.json | 19 ++ data/iso_3166-2/BF.json | 64 +++++++ data/iso_3166-2/BG.json | 34 ++++ data/iso_3166-2/BH.json | 10 + data/iso_3166-2/BI.json | 24 +++ data/iso_3166-2/BJ.json | 18 ++ data/iso_3166-2/BL.json | 5 + data/iso_3166-2/BM.json | 17 ++ data/iso_3166-2/BN.json | 10 + data/iso_3166-2/BO.json | 15 ++ data/iso_3166-2/BQ.json | 9 + data/iso_3166-2/BR.json | 33 ++++ data/iso_3166-2/BS.json | 38 ++++ data/iso_3166-2/BT.json | 26 +++ data/iso_3166-2/BV.json | 5 + data/iso_3166-2/BW.json | 22 +++ data/iso_3166-2/BY.json | 13 ++ data/iso_3166-2/BZ.json | 12 ++ data/iso_3166-2/CA.json | 19 ++ data/iso_3166-2/CC.json | 11 ++ data/iso_3166-2/CD.json | 32 ++++ data/iso_3166-2/CF.json | 23 +++ data/iso_3166-2/CG.json | 18 ++ data/iso_3166-2/CH.json | 32 ++++ data/iso_3166-2/CI.json | 20 ++ data/iso_3166-2/CK.json | 21 +++ data/iso_3166-2/CL.json | 22 +++ data/iso_3166-2/CM.json | 16 ++ data/iso_3166-2/CN.json | 40 ++++ data/iso_3166-2/CO.json | 39 ++++ data/iso_3166-2/CR.json | 13 ++ data/iso_3166-2/CS.json | 10 + data/iso_3166-2/CU.json | 22 +++ data/iso_3166-2/CV.json | 30 +++ data/iso_3166-2/CW.json | 5 + data/iso_3166-2/CX.json | 5 + data/iso_3166-2/CY.json | 12 ++ data/iso_3166-2/CZ.json | 118 ++++++++++++ data/iso_3166-2/DE.json | 22 +++ data/iso_3166-2/DJ.json | 12 ++ data/iso_3166-2/DK.json | 11 ++ data/iso_3166-2/DM.json | 16 ++ data/iso_3166-2/DO.json | 38 ++++ data/iso_3166-2/DZ.json | 54 ++++++ data/iso_3166-2/EC.json | 30 +++ data/iso_3166-2/EE.json | 21 +++ data/iso_3166-2/EG.json | 33 ++++ data/iso_3166-2/EH.json | 5 + data/iso_3166-2/ER.json | 12 ++ data/iso_3166-2/ES.json | 75 ++++++++ data/iso_3166-2/ET.json | 17 ++ data/iso_3166-2/FI.json | 25 +++ data/iso_3166-2/FJ.json | 25 +++ data/iso_3166-2/FK.json | 5 + data/iso_3166-2/FM.json | 10 + data/iso_3166-2/FO.json | 5 + data/iso_3166-2/FR.json | 124 +++++++++++++ data/iso_3166-2/GA.json | 15 ++ data/iso_3166-2/GB.json | 227 +++++++++++++++++++++++ data/iso_3166-2/GD.json | 13 ++ data/iso_3166-2/GE.json | 18 ++ data/iso_3166-2/GF.json | 5 + data/iso_3166-2/GG.json | 5 + data/iso_3166-2/GH.json | 16 ++ data/iso_3166-2/GI.json | 5 + data/iso_3166-2/GL.json | 11 ++ data/iso_3166-2/GM.json | 12 ++ data/iso_3166-2/GN.json | 47 +++++ data/iso_3166-2/GP.json | 5 + data/iso_3166-2/GQ.json | 15 ++ data/iso_3166-2/GR.json | 71 +++++++ data/iso_3166-2/GS.json | 5 + data/iso_3166-2/GT.json | 28 +++ data/iso_3166-2/GU.json | 5 + data/iso_3166-2/GW.json | 18 ++ data/iso_3166-2/GY.json | 16 ++ data/iso_3166-2/HK.json | 24 +++ data/iso_3166-2/HM.json | 10 + data/iso_3166-2/HN.json | 24 +++ data/iso_3166-2/HR.json | 27 +++ data/iso_3166-2/HT.json | 16 ++ data/iso_3166-2/HU.json | 49 +++++ data/iso_3166-2/ID.json | 47 +++++ data/iso_3166-2/IE.json | 35 ++++ data/iso_3166-2/IL.json | 12 ++ data/iso_3166-2/IM.json | 5 + data/iso_3166-2/IN.json | 42 +++++ data/iso_3166-2/IO.json | 14 ++ data/iso_3166-2/IQ.json | 24 +++ data/iso_3166-2/IR.json | 37 ++++ data/iso_3166-2/IS.json | 14 ++ data/iso_3166-2/IT.json | 132 +++++++++++++ data/iso_3166-2/JE.json | 5 + data/iso_3166-2/JM.json | 20 ++ data/iso_3166-2/JO.json | 18 ++ data/iso_3166-2/JP.json | 53 ++++++ data/iso_3166-2/KE.json | 53 ++++++ data/iso_3166-2/KG.json | 15 ++ data/iso_3166-2/KH.json | 31 ++++ data/iso_3166-2/KI.json | 9 + data/iso_3166-2/KM.json | 9 + data/iso_3166-2/KN.json | 22 +++ data/iso_3166-2/KP.json | 17 ++ data/iso_3166-2/KR.json | 23 +++ data/iso_3166-2/KW.json | 12 ++ data/iso_3166-2/KY.json | 5 + data/iso_3166-2/KZ.json | 24 +++ data/iso_3166-2/LA.json | 24 +++ data/iso_3166-2/LB.json | 14 ++ data/iso_3166-2/LC.json | 16 ++ data/iso_3166-2/LI.json | 17 ++ data/iso_3166-2/LK.json | 40 ++++ data/iso_3166-2/LR.json | 21 +++ data/iso_3166-2/LS.json | 16 ++ data/iso_3166-2/LT.json | 76 ++++++++ data/iso_3166-2/LU.json | 18 ++ data/iso_3166-2/LV.json | 125 +++++++++++++ data/iso_3166-2/LY.json | 28 +++ data/iso_3166-2/MA.json | 93 ++++++++++ data/iso_3166-2/MC.json | 23 +++ data/iso_3166-2/MD.json | 43 +++++ data/iso_3166-2/ME.json | 29 +++ data/iso_3166-2/MF.json | 5 + data/iso_3166-2/MG.json | 5 + data/iso_3166-2/MH.json | 32 ++++ data/iso_3166-2/MK.json | 91 +++++++++ data/iso_3166-2/ML.json | 15 ++ data/iso_3166-2/MM.json | 21 +++ data/iso_3166-2/MN.json | 28 +++ data/iso_3166-2/MO.json | 5 + data/iso_3166-2/MP.json | 10 + data/iso_3166-2/MQ.json | 5 + data/iso_3166-2/MR.json | 21 +++ data/iso_3166-2/MS.json | 5 + data/iso_3166-2/MT.json | 74 ++++++++ data/iso_3166-2/MU.json | 23 +++ data/iso_3166-2/MV.json | 26 +++ data/iso_3166-2/MW.json | 37 ++++ data/iso_3166-2/MX.json | 38 ++++ data/iso_3166-2/MY.json | 22 +++ data/iso_3166-2/MZ.json | 17 ++ data/iso_3166-2/NA.json | 20 ++ data/iso_3166-2/NC.json | 9 + data/iso_3166-2/NE.json | 14 ++ data/iso_3166-2/NF.json | 5 + data/iso_3166-2/NG.json | 43 +++++ data/iso_3166-2/NI.json | 23 +++ data/iso_3166-2/NL.json | 18 ++ data/iso_3166-2/NO.json | 26 +++ data/iso_3166-2/NP.json | 25 +++ data/iso_3166-2/NR.json | 20 ++ data/iso_3166-2/NU.json | 5 + data/iso_3166-2/NZ.json | 23 +++ data/iso_3166-2/OM.json | 17 ++ data/iso_3166-2/PA.json | 19 ++ data/iso_3166-2/PE.json | 32 ++++ data/iso_3166-2/PF.json | 11 ++ data/iso_3166-2/PG.json | 28 +++ data/iso_3166-2/PH.json | 104 +++++++++++ data/iso_3166-2/PK.json | 14 ++ data/iso_3166-2/PL.json | 22 +++ data/iso_3166-2/PM.json | 8 + data/iso_3166-2/PN.json | 5 + data/iso_3166-2/PR.json | 5 + data/iso_3166-2/PS.json | 22 +++ data/iso_3166-2/PT.json | 26 +++ data/iso_3166-2/PW.json | 22 +++ data/iso_3166-2/PY.json | 24 +++ data/iso_3166-2/QA.json | 14 ++ data/iso_3166-2/RE.json | 5 + data/iso_3166-2/RO.json | 48 +++++ data/iso_3166-2/RS.json | 38 ++++ data/iso_3166-2/RU.json | 89 +++++++++ data/iso_3166-2/RW.json | 11 ++ data/iso_3166-2/SA.json | 19 ++ data/iso_3166-2/SB.json | 16 ++ data/iso_3166-2/SC.json | 31 ++++ data/iso_3166-2/SD.json | 24 +++ data/iso_3166-2/SE.json | 27 +++ data/iso_3166-2/SG.json | 11 ++ data/iso_3166-2/SH.json | 9 + data/iso_3166-2/SI.json | 218 ++++++++++++++++++++++ data/iso_3166-2/SJ.json | 8 + data/iso_3166-2/SK.json | 14 ++ data/iso_3166-2/SL.json | 11 ++ data/iso_3166-2/SM.json | 15 ++ data/iso_3166-2/SN.json | 20 ++ data/iso_3166-2/SO.json | 24 +++ data/iso_3166-2/SR.json | 16 ++ data/iso_3166-2/SS.json | 5 + data/iso_3166-2/ST.json | 8 + data/iso_3166-2/SV.json | 20 ++ data/iso_3166-2/SX.json | 5 + data/iso_3166-2/SY.json | 20 ++ data/iso_3166-2/SZ.json | 10 + data/iso_3166-2/TC.json | 20 ++ data/iso_3166-2/TD.json | 29 +++ data/iso_3166-2/TF.json | 5 + data/iso_3166-2/TG.json | 11 ++ data/iso_3166-2/TH.json | 84 +++++++++ data/iso_3166-2/TJ.json | 11 ++ data/iso_3166-2/TK.json | 9 + data/iso_3166-2/TL.json | 19 ++ data/iso_3166-2/TM.json | 12 ++ data/iso_3166-2/TN.json | 30 +++ data/iso_3166-2/TO.json | 11 ++ data/iso_3166-2/TR.json | 87 +++++++++ data/iso_3166-2/TT.json | 21 +++ data/iso_3166-2/TV.json | 14 ++ data/iso_3166-2/TW.json | 28 +++ data/iso_3166-2/TZ.json | 36 ++++ data/iso_3166-2/UA.json | 33 ++++ data/iso_3166-2/UG.json | 132 +++++++++++++ data/iso_3166-2/UM.json | 15 ++ data/iso_3166-2/US.json | 63 +++++++ data/iso_3166-2/UY.json | 25 +++ data/iso_3166-2/UZ.json | 20 ++ data/iso_3166-2/VA.json | 5 + data/iso_3166-2/VC.json | 12 ++ data/iso_3166-2/VE.json | 31 ++++ data/iso_3166-2/VG.json | 5 + data/iso_3166-2/VI.json | 9 + data/iso_3166-2/VN.json | 69 +++++++ data/iso_3166-2/VU.json | 12 ++ data/iso_3166-2/WF.json | 9 + data/iso_3166-2/WS.json | 17 ++ data/iso_3166-2/XK.json | 5 + data/iso_3166-2/YE.json | 28 +++ data/iso_3166-2/YT.json | 5 + data/iso_3166-2/ZA.json | 15 ++ data/iso_3166-2/ZM.json | 16 ++ data/iso_3166-2/ZW.json | 16 ++ docs/rules/SubdivisionCode.md | 4 +- library/Helpers/Subdivisions.php | 52 ++++++ library/Rules/SubdivisionCode.php | 37 +--- tests/unit/Rules/SubdivisionCodeTest.php | 7 +- 258 files changed, 6780 insertions(+), 33 deletions(-) create mode 100755 bin/update-iso-codes create mode 100644 data/iso_3166-2/AD.json create mode 100644 data/iso_3166-2/AE.json create mode 100644 data/iso_3166-2/AF.json create mode 100644 data/iso_3166-2/AG.json create mode 100644 data/iso_3166-2/AI.json create mode 100644 data/iso_3166-2/AL.json create mode 100644 data/iso_3166-2/AM.json create mode 100644 data/iso_3166-2/AN.json create mode 100644 data/iso_3166-2/AO.json create mode 100644 data/iso_3166-2/AQ.json create mode 100644 data/iso_3166-2/AR.json create mode 100644 data/iso_3166-2/AS.json create mode 100644 data/iso_3166-2/AT.json create mode 100644 data/iso_3166-2/AU.json create mode 100644 data/iso_3166-2/AW.json create mode 100644 data/iso_3166-2/AX.json create mode 100644 data/iso_3166-2/AZ.json create mode 100644 data/iso_3166-2/BA.json create mode 100644 data/iso_3166-2/BB.json create mode 100644 data/iso_3166-2/BD.json create mode 100644 data/iso_3166-2/BE.json create mode 100644 data/iso_3166-2/BF.json create mode 100644 data/iso_3166-2/BG.json create mode 100644 data/iso_3166-2/BH.json create mode 100644 data/iso_3166-2/BI.json create mode 100644 data/iso_3166-2/BJ.json create mode 100644 data/iso_3166-2/BL.json create mode 100644 data/iso_3166-2/BM.json create mode 100644 data/iso_3166-2/BN.json create mode 100644 data/iso_3166-2/BO.json create mode 100644 data/iso_3166-2/BQ.json create mode 100644 data/iso_3166-2/BR.json create mode 100644 data/iso_3166-2/BS.json create mode 100644 data/iso_3166-2/BT.json create mode 100644 data/iso_3166-2/BV.json create mode 100644 data/iso_3166-2/BW.json create mode 100644 data/iso_3166-2/BY.json create mode 100644 data/iso_3166-2/BZ.json create mode 100644 data/iso_3166-2/CA.json create mode 100644 data/iso_3166-2/CC.json create mode 100644 data/iso_3166-2/CD.json create mode 100644 data/iso_3166-2/CF.json create mode 100644 data/iso_3166-2/CG.json create mode 100644 data/iso_3166-2/CH.json create mode 100644 data/iso_3166-2/CI.json create mode 100644 data/iso_3166-2/CK.json create mode 100644 data/iso_3166-2/CL.json create mode 100644 data/iso_3166-2/CM.json create mode 100644 data/iso_3166-2/CN.json create mode 100644 data/iso_3166-2/CO.json create mode 100644 data/iso_3166-2/CR.json create mode 100644 data/iso_3166-2/CS.json create mode 100644 data/iso_3166-2/CU.json create mode 100644 data/iso_3166-2/CV.json create mode 100644 data/iso_3166-2/CW.json create mode 100644 data/iso_3166-2/CX.json create mode 100644 data/iso_3166-2/CY.json create mode 100644 data/iso_3166-2/CZ.json create mode 100644 data/iso_3166-2/DE.json create mode 100644 data/iso_3166-2/DJ.json create mode 100644 data/iso_3166-2/DK.json create mode 100644 data/iso_3166-2/DM.json create mode 100644 data/iso_3166-2/DO.json create mode 100644 data/iso_3166-2/DZ.json create mode 100644 data/iso_3166-2/EC.json create mode 100644 data/iso_3166-2/EE.json create mode 100644 data/iso_3166-2/EG.json create mode 100644 data/iso_3166-2/EH.json create mode 100644 data/iso_3166-2/ER.json create mode 100644 data/iso_3166-2/ES.json create mode 100644 data/iso_3166-2/ET.json create mode 100644 data/iso_3166-2/FI.json create mode 100644 data/iso_3166-2/FJ.json create mode 100644 data/iso_3166-2/FK.json create mode 100644 data/iso_3166-2/FM.json create mode 100644 data/iso_3166-2/FO.json create mode 100644 data/iso_3166-2/FR.json create mode 100644 data/iso_3166-2/GA.json create mode 100644 data/iso_3166-2/GB.json create mode 100644 data/iso_3166-2/GD.json create mode 100644 data/iso_3166-2/GE.json create mode 100644 data/iso_3166-2/GF.json create mode 100644 data/iso_3166-2/GG.json create mode 100644 data/iso_3166-2/GH.json create mode 100644 data/iso_3166-2/GI.json create mode 100644 data/iso_3166-2/GL.json create mode 100644 data/iso_3166-2/GM.json create mode 100644 data/iso_3166-2/GN.json create mode 100644 data/iso_3166-2/GP.json create mode 100644 data/iso_3166-2/GQ.json create mode 100644 data/iso_3166-2/GR.json create mode 100644 data/iso_3166-2/GS.json create mode 100644 data/iso_3166-2/GT.json create mode 100644 data/iso_3166-2/GU.json create mode 100644 data/iso_3166-2/GW.json create mode 100644 data/iso_3166-2/GY.json create mode 100644 data/iso_3166-2/HK.json create mode 100644 data/iso_3166-2/HM.json create mode 100644 data/iso_3166-2/HN.json create mode 100644 data/iso_3166-2/HR.json create mode 100644 data/iso_3166-2/HT.json create mode 100644 data/iso_3166-2/HU.json create mode 100644 data/iso_3166-2/ID.json create mode 100644 data/iso_3166-2/IE.json create mode 100644 data/iso_3166-2/IL.json create mode 100644 data/iso_3166-2/IM.json create mode 100644 data/iso_3166-2/IN.json create mode 100644 data/iso_3166-2/IO.json create mode 100644 data/iso_3166-2/IQ.json create mode 100644 data/iso_3166-2/IR.json create mode 100644 data/iso_3166-2/IS.json create mode 100644 data/iso_3166-2/IT.json create mode 100644 data/iso_3166-2/JE.json create mode 100644 data/iso_3166-2/JM.json create mode 100644 data/iso_3166-2/JO.json create mode 100644 data/iso_3166-2/JP.json create mode 100644 data/iso_3166-2/KE.json create mode 100644 data/iso_3166-2/KG.json create mode 100644 data/iso_3166-2/KH.json create mode 100644 data/iso_3166-2/KI.json create mode 100644 data/iso_3166-2/KM.json create mode 100644 data/iso_3166-2/KN.json create mode 100644 data/iso_3166-2/KP.json create mode 100644 data/iso_3166-2/KR.json create mode 100644 data/iso_3166-2/KW.json create mode 100644 data/iso_3166-2/KY.json create mode 100644 data/iso_3166-2/KZ.json create mode 100644 data/iso_3166-2/LA.json create mode 100644 data/iso_3166-2/LB.json create mode 100644 data/iso_3166-2/LC.json create mode 100644 data/iso_3166-2/LI.json create mode 100644 data/iso_3166-2/LK.json create mode 100644 data/iso_3166-2/LR.json create mode 100644 data/iso_3166-2/LS.json create mode 100644 data/iso_3166-2/LT.json create mode 100644 data/iso_3166-2/LU.json create mode 100644 data/iso_3166-2/LV.json create mode 100644 data/iso_3166-2/LY.json create mode 100644 data/iso_3166-2/MA.json create mode 100644 data/iso_3166-2/MC.json create mode 100644 data/iso_3166-2/MD.json create mode 100644 data/iso_3166-2/ME.json create mode 100644 data/iso_3166-2/MF.json create mode 100644 data/iso_3166-2/MG.json create mode 100644 data/iso_3166-2/MH.json create mode 100644 data/iso_3166-2/MK.json create mode 100644 data/iso_3166-2/ML.json create mode 100644 data/iso_3166-2/MM.json create mode 100644 data/iso_3166-2/MN.json create mode 100644 data/iso_3166-2/MO.json create mode 100644 data/iso_3166-2/MP.json create mode 100644 data/iso_3166-2/MQ.json create mode 100644 data/iso_3166-2/MR.json create mode 100644 data/iso_3166-2/MS.json create mode 100644 data/iso_3166-2/MT.json create mode 100644 data/iso_3166-2/MU.json create mode 100644 data/iso_3166-2/MV.json create mode 100644 data/iso_3166-2/MW.json create mode 100644 data/iso_3166-2/MX.json create mode 100644 data/iso_3166-2/MY.json create mode 100644 data/iso_3166-2/MZ.json create mode 100644 data/iso_3166-2/NA.json create mode 100644 data/iso_3166-2/NC.json create mode 100644 data/iso_3166-2/NE.json create mode 100644 data/iso_3166-2/NF.json create mode 100644 data/iso_3166-2/NG.json create mode 100644 data/iso_3166-2/NI.json create mode 100644 data/iso_3166-2/NL.json create mode 100644 data/iso_3166-2/NO.json create mode 100644 data/iso_3166-2/NP.json create mode 100644 data/iso_3166-2/NR.json create mode 100644 data/iso_3166-2/NU.json create mode 100644 data/iso_3166-2/NZ.json create mode 100644 data/iso_3166-2/OM.json create mode 100644 data/iso_3166-2/PA.json create mode 100644 data/iso_3166-2/PE.json create mode 100644 data/iso_3166-2/PF.json create mode 100644 data/iso_3166-2/PG.json create mode 100644 data/iso_3166-2/PH.json create mode 100644 data/iso_3166-2/PK.json create mode 100644 data/iso_3166-2/PL.json create mode 100644 data/iso_3166-2/PM.json create mode 100644 data/iso_3166-2/PN.json create mode 100644 data/iso_3166-2/PR.json create mode 100644 data/iso_3166-2/PS.json create mode 100644 data/iso_3166-2/PT.json create mode 100644 data/iso_3166-2/PW.json create mode 100644 data/iso_3166-2/PY.json create mode 100644 data/iso_3166-2/QA.json create mode 100644 data/iso_3166-2/RE.json create mode 100644 data/iso_3166-2/RO.json create mode 100644 data/iso_3166-2/RS.json create mode 100644 data/iso_3166-2/RU.json create mode 100644 data/iso_3166-2/RW.json create mode 100644 data/iso_3166-2/SA.json create mode 100644 data/iso_3166-2/SB.json create mode 100644 data/iso_3166-2/SC.json create mode 100644 data/iso_3166-2/SD.json create mode 100644 data/iso_3166-2/SE.json create mode 100644 data/iso_3166-2/SG.json create mode 100644 data/iso_3166-2/SH.json create mode 100644 data/iso_3166-2/SI.json create mode 100644 data/iso_3166-2/SJ.json create mode 100644 data/iso_3166-2/SK.json create mode 100644 data/iso_3166-2/SL.json create mode 100644 data/iso_3166-2/SM.json create mode 100644 data/iso_3166-2/SN.json create mode 100644 data/iso_3166-2/SO.json create mode 100644 data/iso_3166-2/SR.json create mode 100644 data/iso_3166-2/SS.json create mode 100644 data/iso_3166-2/ST.json create mode 100644 data/iso_3166-2/SV.json create mode 100644 data/iso_3166-2/SX.json create mode 100644 data/iso_3166-2/SY.json create mode 100644 data/iso_3166-2/SZ.json create mode 100644 data/iso_3166-2/TC.json create mode 100644 data/iso_3166-2/TD.json create mode 100644 data/iso_3166-2/TF.json create mode 100644 data/iso_3166-2/TG.json create mode 100644 data/iso_3166-2/TH.json create mode 100644 data/iso_3166-2/TJ.json create mode 100644 data/iso_3166-2/TK.json create mode 100644 data/iso_3166-2/TL.json create mode 100644 data/iso_3166-2/TM.json create mode 100644 data/iso_3166-2/TN.json create mode 100644 data/iso_3166-2/TO.json create mode 100644 data/iso_3166-2/TR.json create mode 100644 data/iso_3166-2/TT.json create mode 100644 data/iso_3166-2/TV.json create mode 100644 data/iso_3166-2/TW.json create mode 100644 data/iso_3166-2/TZ.json create mode 100644 data/iso_3166-2/UA.json create mode 100644 data/iso_3166-2/UG.json create mode 100644 data/iso_3166-2/UM.json create mode 100644 data/iso_3166-2/US.json create mode 100644 data/iso_3166-2/UY.json create mode 100644 data/iso_3166-2/UZ.json create mode 100644 data/iso_3166-2/VA.json create mode 100644 data/iso_3166-2/VC.json create mode 100644 data/iso_3166-2/VE.json create mode 100644 data/iso_3166-2/VG.json create mode 100644 data/iso_3166-2/VI.json create mode 100644 data/iso_3166-2/VN.json create mode 100644 data/iso_3166-2/VU.json create mode 100644 data/iso_3166-2/WF.json create mode 100644 data/iso_3166-2/WS.json create mode 100644 data/iso_3166-2/XK.json create mode 100644 data/iso_3166-2/YE.json create mode 100644 data/iso_3166-2/YT.json create mode 100644 data/iso_3166-2/ZA.json create mode 100644 data/iso_3166-2/ZM.json create mode 100644 data/iso_3166-2/ZW.json create mode 100644 library/Helpers/Subdivisions.php diff --git a/bin/update-iso-codes b/bin/update-iso-codes new file mode 100755 index 00000000..725d36ed --- /dev/null +++ b/bin/update-iso-codes @@ -0,0 +1,98 @@ +#!/usr/bin/env bash +# Usage: {script} TLD_FILENAME +# Update list of TLD + +set -euo pipefail + +declare -r IFS=$'\n' +declare -r REPOSITORY_URL="https://salsa.debian.org/iso-codes-team/iso-codes.git" +declare -r REPOSITORY_DIRECTORY=$(mktemp --directory) +declare -r LIBRARY_DIRECTORY="${1}" + +clone_repository() +{ + echo "Cloning repository ${REPOSITORY_URL}" + git clone --quiet "${REPOSITORY_URL}" "${REPOSITORY_DIRECTORY}" +} + +list_iso_3166() +{ + local -r number_of_items=${1} + local -r filename=${2} + + for index in $(seq 0 ${number_of_items}); do + local json=$(jq ".[][${index}]" < "${filename}") + local alpha_2=$(jq ".alpha_2" <<< "${json}" | tr '"' "'") + local alpha_3=$(jq ".alpha_3" <<< "${json}" | tr '"' "'") + local numeric=$(jq ".numeric" <<< "${json}" | tr '"' "'") + local name=$(jq -r ".name" <<< "${json}") + echo " [${alpha_2}, ${alpha_3}, ${numeric}], // ${name}" + done +} + +update_country_codes() +{ + local -r iso_3166_1_filename="${REPOSITORY_DIRECTORY}/data/iso_3166-1.json" + local -r iso_3166_1_count=$(grep "alpha_3" "${iso_3166_1_filename}" | wc --lines) + local -r iso_3166_3_filename="${REPOSITORY_DIRECTORY}/data/iso_3166-3.json" + local -r iso_3166_3_count=$(grep "alpha_3" "${iso_3166_3_filename}" | wc --lines) + local -r temporary_filename=$(mktemp) + local -r country_rule_filename="${LIBRARY_DIRECTORY}/Rules/CountryCode.php" + + echo "Updating country codes using ISO 3166-1 and ISO 3166-3" + { + sed -n '/^ "${temporary_filename}" + mv "${temporary_filename}" "${country_rule_filename}" +} + +rule_from_country_code() +{ + local country_code=${1,,} + + echo "${LIBRARY_DIRECTORY}/Rules/SubdivisionCode/${country_code^}SubdivisionCode.php" +} + +update_subdivision_codes() +{ + local -r iso_3166_2_filename="${REPOSITORY_DIRECTORY}/data/iso_3166-2.json" + local -r iso_3166_2_count=$(grep --word-regexp "code" "${iso_3166_2_filename}" | wc --lines) + local -r temporary_filename=$(mktemp) + local last_country_code="" + local last_country_rule="" + + echo "Updating subdivision codes using ISO 3166-2" + + for index in $(seq 0 $[iso_3166_2_count - 1]); do + local json=$(jq ".[][${index}]" < "${iso_3166_2_filename}") + local code=$(jq -r ".code" <<< "${json}") + local name=$(jq -r ".name" <<< "${json}") + + local current_country_code=$(cut --delimiter "-" --fields 1 <<< "${code}") + local current_country_rule=$(rule_from_country_code ${current_country_code}) + + if [[ ${last_country_code} != ${current_country_code} ]] && [[ ! -z "${last_country_code}" ]]; then + sed -n '/^ \]/,/^}/p' "${last_country_rule}" >> "${temporary_filename}" + cat "${temporary_filename}" > "${last_country_rule}" + fi + + if [[ ${last_country_code} != ${current_country_code} ]]; then + echo "- Updating ${current_country_code}" + sed -n '/^ "${temporary_filename}" + fi + + echo " '$(cut --delimiter "-" --fields 2 <<< ${code})', // ${name}" >> "${temporary_filename}" + + last_country_code=${current_country_code} + last_country_rule=${current_country_rule} + done +} + +clone_repository +update_country_codes +update_subdivision_codes diff --git a/composer.json b/composer.json index 8e92b280..a2737f2b 100644 --- a/composer.json +++ b/composer.json @@ -17,7 +17,6 @@ "require": { "php": "^7.3 || ^8.0", "respect/stringifier": "^0.2.0", - "sokil/php-isocodes": "^3.3", "symfony/polyfill-mbstring": "^1.2" }, "require-dev": { @@ -39,7 +38,6 @@ "ext-fileinfo": "File Information", "ext-mbstring": "Multibyte String Functions", "egulias/email-validator": "Strict (RFC compliant) email validation", - "sokil/php-isocodes": "To enable ISO codes validations", "symfony/validator": "Use Symfony validator through Respect\\Validation", "zendframework/zend-validator": "Use Zend Framework validator through Respect\\Validation" }, diff --git a/data/iso_3166-2/AD.json b/data/iso_3166-2/AD.json new file mode 100644 index 00000000..76ade068 --- /dev/null +++ b/data/iso_3166-2/AD.json @@ -0,0 +1,13 @@ +{ + "source": "http://www.geonames.org/AD/administrative-division-andorra.html", + "country": "Andorra", + "subdivisions": { + "02": "Canillo", + "03": "Encamp", + "04": "La Massana", + "05": "Ordino", + "06": "Sant Julia de Lòria", + "07": "Andorra la Vella", + "08": "Escaldes-Engordany" + } +} diff --git a/data/iso_3166-2/AE.json b/data/iso_3166-2/AE.json new file mode 100644 index 00000000..c4580c93 --- /dev/null +++ b/data/iso_3166-2/AE.json @@ -0,0 +1,13 @@ +{ + "source": "http://www.geonames.org/AE/administrative-division-united-arab-emirates.html", + "country": "United Arab Emirates", + "subdivisions": { + "AJ": "'Ajman", + "AZ": "Abu Zaby", + "DU": "Dubayy", + "FU": "Al Fujayrah", + "RK": "R'as al Khaymah", + "SH": "Ash Shariqah", + "UQ": "Umm al Qaywayn" + } +} diff --git a/data/iso_3166-2/AF.json b/data/iso_3166-2/AF.json new file mode 100644 index 00000000..43a164c1 --- /dev/null +++ b/data/iso_3166-2/AF.json @@ -0,0 +1,40 @@ +{ + "source": "http://www.geonames.org/AF/administrative-division-afghanistan.html", + "country": "Afghanistan", + "subdivisions": { + "BAL": "Balkh province", + "BAM": "Bamian province", + "BDG": "Badghis province", + "BDS": "Badakhshan province", + "BGL": "Baghlan province", + "DAY": "Dāykundī", + "FRA": "Farah province", + "FYB": "Faryab province", + "GHA": "Ghazni province", + "GHO": "Ghowr province", + "HEL": "Helmand province", + "HER": "Herat province", + "JOW": "Jowzjan province", + "KAB": "Kabul province", + "KAN": "Kandahar province", + "KAP": "Kapisa province", + "KDZ": "Kondoz province", + "KHO": "Khost province", + "KNR": "Konar province", + "LAG": "Laghman province", + "LOG": "Lowgar province", + "NAN": "Nangrahar province", + "NIM": "Nimruz province", + "NUR": "Nurestan province", + "PAN": "Panjshir", + "PAR": "Parwan province", + "PIA": "Paktia province", + "PKA": "Paktika province", + "SAM": "Samangan province", + "SAR": "Sar-e Pol province", + "TAK": "Takhar province", + "URU": "Uruzgān province", + "WAR": "Wardak province", + "ZAB": "Zabol province" + } +} diff --git a/data/iso_3166-2/AG.json b/data/iso_3166-2/AG.json new file mode 100644 index 00000000..fc867857 --- /dev/null +++ b/data/iso_3166-2/AG.json @@ -0,0 +1,14 @@ +{ + "source": "http://www.geonames.org/AG/administrative-division-antigua-and-barbuda.html", + "country": "Antigua and Barbuda", + "subdivisions": { + "03": "Saint George", + "04": "Saint John", + "05": "Saint Mary", + "06": "Saint Paul", + "07": "Saint Peter", + "08": "Saint Philip", + "10": "Barbuda", + "11": "Redonda" + } +} diff --git a/data/iso_3166-2/AI.json b/data/iso_3166-2/AI.json new file mode 100644 index 00000000..e6e2c40d --- /dev/null +++ b/data/iso_3166-2/AI.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/AI/administrative-division-anguilla.html", + "country": "Anguilla", + "subdivisions": [] +} diff --git a/data/iso_3166-2/AL.json b/data/iso_3166-2/AL.json new file mode 100644 index 00000000..da27641c --- /dev/null +++ b/data/iso_3166-2/AL.json @@ -0,0 +1,54 @@ +{ + "source": "http://www.geonames.org/AL/administrative-division-albania.html", + "country": "Albania", + "subdivisions": { + "01": "Berat", + "02": "Durres", + "03": "Elbasan", + "04": "Fier", + "05": "Gjirokaster", + "06": "Korce", + "07": "Kukes", + "08": "Lezhe", + "09": "Diber", + "10": "Shkoder", + "11": "Tirane", + "12": "Vlore", + "BR": "Berat", + "BU": "Bulqize", + "DI": "Diber", + "DL": "Delvine", + "DR": "Durres", + "DV": "Devoll", + "EL": "Elbasan", + "ER": "Kolonje", + "FR": "Fier", + "GJ": "Gjirokaster", + "GR": "Gramsh", + "HA": "Has", + "KA": "Kavaje", + "KB": "Kurbin", + "KC": "Kucove", + "KO": "Korce", + "KR": "Kruje", + "KU": "Kukes", + "LB": "Librazhd", + "LE": "Lezhe", + "LU": "Lushnje", + "MK": "Mallakaster", + "MM": "Malesi e Madhe", + "MR": "Mirdite", + "MT": "Mat", + "PG": "Pogradec", + "PQ": "Peqin", + "PR": "Permet", + "PU": "Puke", + "SH": "Shkoder", + "SK": "Skrapar", + "SR": "Sarande", + "TE": "Tepelene", + "TP": "Tropoje", + "TR": "Tirane", + "VL": "Vlore" + } +} diff --git a/data/iso_3166-2/AM.json b/data/iso_3166-2/AM.json new file mode 100644 index 00000000..00eebd94 --- /dev/null +++ b/data/iso_3166-2/AM.json @@ -0,0 +1,17 @@ +{ + "source": "http://www.geonames.org/AM/administrative-division-armenia.html", + "country": "Armenia", + "subdivisions": { + "AG": "Aragatsotn", + "AR": "Ararat", + "AV": "Armavir", + "ER": "Yerevan", + "GR": "Geghark'unik'", + "KT": "Kotayk'", + "LO": "Lorri", + "SH": "Shirak", + "SU": "Syunik'", + "TV": "Tavush", + "VD": "Vayots' Dzor" + } +} diff --git a/data/iso_3166-2/AN.json b/data/iso_3166-2/AN.json new file mode 100644 index 00000000..acecdba3 --- /dev/null +++ b/data/iso_3166-2/AN.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/AN/administrative-division-netherlands-antilles.html", + "country": "Netherlands Antilles", + "subdivisions": [] +} diff --git a/data/iso_3166-2/AO.json b/data/iso_3166-2/AO.json new file mode 100644 index 00000000..f789db67 --- /dev/null +++ b/data/iso_3166-2/AO.json @@ -0,0 +1,24 @@ +{ + "source": "http://www.geonames.org/AO/administrative-division-angola.html", + "country": "Angola", + "subdivisions": { + "BGO": "Bengo", + "BGU": "Benguela province", + "BIE": "Bie", + "CAB": "Cabinda", + "CCU": "Cuando-Cubango", + "CNN": "Cunene", + "CNO": "Cuanza Norte", + "CUS": "Cuanza Sul", + "HUA": "Huambo province", + "HUI": "Huila province", + "LNO": "Lunda Norte", + "LSU": "Lunda Sul", + "LUA": "Luanda", + "MAL": "Malange", + "MOX": "Moxico", + "NAM": "Namibe", + "UIG": "Uige", + "ZAI": "Zaire" + } +} diff --git a/data/iso_3166-2/AQ.json b/data/iso_3166-2/AQ.json new file mode 100644 index 00000000..68c05eb1 --- /dev/null +++ b/data/iso_3166-2/AQ.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/AQ/administrative-division-antarctica.html", + "country": "Antarctica", + "subdivisions": [] +} diff --git a/data/iso_3166-2/AR.json b/data/iso_3166-2/AR.json new file mode 100644 index 00000000..b7e48a5f --- /dev/null +++ b/data/iso_3166-2/AR.json @@ -0,0 +1,30 @@ +{ + "source": "http://www.geonames.org/AR/administrative-division-argentina.html", + "country": "Argentina", + "subdivisions": { + "A": "Salta", + "B": "Buenos Aires Province", + "C": "Ciudad Autónoma de Buenos Aires", + "D": "San Luis", + "E": "Entre Rios", + "F": "La Rioja", + "G": "Santiago del Estero", + "H": "Chaco", + "J": "San Juan", + "K": "Catamarca", + "L": "La Pampa", + "M": "Mendoza", + "N": "Misiones", + "P": "Formosa", + "Q": "Neuquen", + "R": "Rio Negro", + "S": "Santa Fe", + "T": "Tucuman", + "U": "Chubut", + "V": "Tierra del Fuego", + "W": "Corrientes", + "X": "Cordoba", + "Y": "Jujuy", + "Z": "Santa Cruz" + } +} diff --git a/data/iso_3166-2/AS.json b/data/iso_3166-2/AS.json new file mode 100644 index 00000000..bcac7782 --- /dev/null +++ b/data/iso_3166-2/AS.json @@ -0,0 +1,11 @@ +{ + "source": "http://www.geonames.org/AS/administrative-division-american-samoa.html", + "country": "American Samoa", + "subdivisions": { + "E": "Eastern", + "M": "Manu'a", + "R": "Rose Island", + "S": "Swains Island", + "W": "Western" + } +} diff --git a/data/iso_3166-2/AT.json b/data/iso_3166-2/AT.json new file mode 100644 index 00000000..fffcd3cb --- /dev/null +++ b/data/iso_3166-2/AT.json @@ -0,0 +1,15 @@ +{ + "source": "http://www.geonames.org/AT/administrative-division-austria.html", + "country": "Austria", + "subdivisions": { + "1": "Burgenland", + "2": "Karnten", + "3": "Niederosterreich", + "4": "Oberosterreich", + "5": "Salzburg", + "6": "Steiermark", + "7": "Tirol", + "8": "Vorarlberg", + "9": "Wien" + } +} diff --git a/data/iso_3166-2/AU.json b/data/iso_3166-2/AU.json new file mode 100644 index 00000000..c79ca785 --- /dev/null +++ b/data/iso_3166-2/AU.json @@ -0,0 +1,14 @@ +{ + "source": "http://www.geonames.org/AU/administrative-division-australia.html", + "country": "Australia", + "subdivisions": { + "ACT": "Australian Capital Territory", + "NSW": "New South Wales", + "NT": "Northern Territory", + "QLD": "Queensland", + "SA": "South Australia", + "TAS": "Tasmania", + "VIC": "Victoria", + "WA": "Western Australia" + } +} diff --git a/data/iso_3166-2/AW.json b/data/iso_3166-2/AW.json new file mode 100644 index 00000000..0cb5affa --- /dev/null +++ b/data/iso_3166-2/AW.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/AW/administrative-division-aruba.html", + "country": "Aruba", + "subdivisions": [] +} diff --git a/data/iso_3166-2/AX.json b/data/iso_3166-2/AX.json new file mode 100644 index 00000000..932364a4 --- /dev/null +++ b/data/iso_3166-2/AX.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/AX/administrative-division-aland.html", + "country": "Åland", + "subdivisions": [] +} diff --git a/data/iso_3166-2/AZ.json b/data/iso_3166-2/AZ.json new file mode 100644 index 00000000..fccdf008 --- /dev/null +++ b/data/iso_3166-2/AZ.json @@ -0,0 +1,84 @@ +{ + "source": "http://www.geonames.org/AZ/administrative-division-azerbaijan.html", + "country": "Azerbaijan", + "subdivisions": { + "ABS": "Abseron", + "AGA": "Agstafa", + "AGC": "AgcabAdi", + "AGM": "Agdam", + "AGS": "Agdas", + "AGU": "Agsu", + "AST": "Astara", + "BA": "Baki", + "BAB": "Babek", + "BAL": "BalakAn", + "BAR": "Barda", + "BEY": "Beylaqan", + "BIL": "Bilasuvar", + "CAB": "Cabrayil", + "CAL": "Calilabab", + "CUL": "Culfa", + "DAS": "Daskasan", + "FUZ": "Fuzuli", + "GA": "Ganca", + "GAD": "Gadabay", + "GOR": "Goranboy", + "GOY": "Goycay", + "GYG": "Göygöl", + "HAC": "Haciqabul", + "IMI": "Imisli", + "ISM": "Ismayilli", + "KAL": "Kalbacar", + "KAN": "Kangarli", + "KUR": "Kurdamir", + "LA": "Lankaran", + "LAC": "Lacin", + "LAN": "Lankaran Sahari", + "LER": "Lerik", + "MAS": "Masalli", + "MI": "Mingəçevir", + "NA": "Naftalan", + "NEF": "Neftcala", + "NV": "Naxçivan", + "NX": "Naxcivan", + "OGU": "Oguz", + "ORD": "Ordubad", + "QAB": "Qabala", + "QAX": "Qax", + "QAZ": "Qazax", + "QBA": "Quba", + "QBI": "Qubadli", + "QOB": "Qobustan", + "QUS": "Qusar", + "SA": "Saki", + "SAB": "Sabirabad", + "SAD": "Sadarak", + "SAH": "Sahbuz", + "SAK": "Saki Sahari", + "SAL": "Salyan", + "SAR": "Sarur", + "SAT": "Saatli", + "SBN": "Şabran", + "SIY": "Siyazan", + "SKR": "Samkir", + "SM": "Sumqayit", + "SMI": "Samaxi", + "SMX": "Samux", + "SR": "Şirvan", + "SUS": "Susa", + "TAR": "Tartar", + "TOV": "Tovuz", + "UCA": "Ucar", + "XA": "Xankandi", + "XAC": "Xacmaz", + "XCI": "Xocali", + "XIZ": "Xizi", + "XVD": "Xocavand", + "YAR": "Yardimli", + "YE": "Yevlax Sahari", + "YEV": "Yevlax", + "ZAN": "Zangilan", + "ZAQ": "Zaqatala", + "ZAR": "Zardab" + } +} diff --git a/data/iso_3166-2/BA.json b/data/iso_3166-2/BA.json new file mode 100644 index 00000000..ccc3a251 --- /dev/null +++ b/data/iso_3166-2/BA.json @@ -0,0 +1,19 @@ +{ + "source": "http://www.geonames.org/BA/administrative-division-bosnia-and-herzegovina.html", + "country": "Bosnia and Herzegovina", + "subdivisions": { + "01": "Unsko-sanski kanton", + "02": "Posavski kanton", + "03": "Tuzlanski kanton", + "04": "Zeničko-dobojski kanton", + "05": "Bosansko-podrinjski kanton", + "06": "Srednjobosanski kantonn", + "07": "Hercegovačko-neretvanski kanton", + "08": "Zapadnohercegovački kanton", + "09": "Kanton Sarajevo", + "10": "Kanton br. 10 (Livanjski kanton)", + "BIH": "Federacija Bosna i Hercegovina", + "BRC": "Brcko District", + "SRP": "Republika Srpska" + } +} diff --git a/data/iso_3166-2/BB.json b/data/iso_3166-2/BB.json new file mode 100644 index 00000000..247ecf08 --- /dev/null +++ b/data/iso_3166-2/BB.json @@ -0,0 +1,17 @@ +{ + "source": "http://www.geonames.org/BB/administrative-division-barbados.html", + "country": "Barbados", + "subdivisions": { + "01": "Christ Church", + "02": "Saint Andrew", + "03": "Saint George", + "04": "Saint James", + "05": "Saint John", + "06": "Saint Joseph", + "07": "Saint Lucy", + "08": "Saint Michael", + "09": "Saint Peter", + "10": "Saint Philip", + "11": "Saint Thomas" + } +} diff --git a/data/iso_3166-2/BD.json b/data/iso_3166-2/BD.json new file mode 100644 index 00000000..f78a82e7 --- /dev/null +++ b/data/iso_3166-2/BD.json @@ -0,0 +1,78 @@ +{ + "source": "http://www.geonames.org/BD/administrative-division-bangladesh.html", + "country": "Bangladesh", + "subdivisions": { + "01": "Bandarban zila", + "02": "Barguna zila", + "03": "Bogra zila", + "04": "Brahmanbaria zila", + "05": "Bagerhat zila", + "06": "Barisal zila", + "07": "Bhola zila", + "08": "Comilla zila", + "09": "Chandpur zila", + "10": "Chittagong zila", + "11": "Cox's Bazar zila", + "12": "Chuadanga zila", + "13": "Dhaka zila", + "14": "Dinajpur zila", + "15": "Faridpur zila", + "16": "Feni zila", + "17": "Gopalganj zila", + "18": "Gazipur zila", + "19": "Gaibandha zila", + "20": "Habiganj zila", + "21": "Jamalpur zila", + "22": "Jessore zila", + "23": "Jhenaidah zila", + "24": "Jaipurhat zila", + "25": "Jhalakati zila", + "26": "Kishoreganj zila", + "27": "Khulna zila", + "28": "Kurigram zila", + "29": "Khagrachari zila", + "30": "Kushtia zila", + "31": "Lakshmipur zila", + "32": "Lalmonirhat zila", + "33": "Manikganj zila", + "34": "Mymensingh zila", + "35": "Munshiganj zila", + "36": "Madaripur zila", + "37": "Magura zila", + "38": "Moulvibazar zila", + "39": "Meherpur zila", + "40": "Narayanganj zila", + "41": "Netrakona zila", + "42": "Narsingdi zila", + "43": "Narail zila", + "44": "Natore zila", + "45": "Nawabganj zila", + "46": "Nilphamari zila", + "47": "Noakhali zila", + "48": "Naogaon zila", + "49": "Pabna zila", + "50": "Pirojpur zila", + "51": "Patuakhali zila", + "52": "Panchagarh zila", + "53": "Rajbari zila", + "54": "Rajshahi zila", + "55": "Rangpur zila", + "56": "Rangamati zila", + "57": "Sherpur zila", + "58": "Satkhira zila", + "59": "Sirajganj zila", + "60": "Sylhet zila", + "61": "Sunamganj zila", + "62": "Shariatpur zila", + "63": "Tangail zila", + "64": "Thakurgaon zila", + "A": "Barisal", + "B": "Chittagong", + "C": "Dhaka", + "D": "Khulna", + "E": "Rajshahi", + "F": "Rangpur", + "G": "Sylhet", + "H": "Mymensingh Division" + } +} diff --git a/data/iso_3166-2/BE.json b/data/iso_3166-2/BE.json new file mode 100644 index 00000000..0e9c84de --- /dev/null +++ b/data/iso_3166-2/BE.json @@ -0,0 +1,19 @@ +{ + "source": "http://www.geonames.org/BE/administrative-division-belgium.html", + "country": "Belgium", + "subdivisions": { + "BRU": "Brussels", + "VAN": "Antwerpen", + "VBR": "Vlaams Brabant", + "VLG": "Flemish Region", + "VLI": "Limburg", + "VOV": "Oost-Vlaanderen", + "VWV": "West-Vlaanderen", + "WAL": "Wallonia", + "WBR": "Brabant Wallon", + "WHT": "Hainaut", + "WLG": "Liege", + "WLX": "Luxembourg", + "WNA": "Namur" + } +} diff --git a/data/iso_3166-2/BF.json b/data/iso_3166-2/BF.json new file mode 100644 index 00000000..cdaa721a --- /dev/null +++ b/data/iso_3166-2/BF.json @@ -0,0 +1,64 @@ +{ + "source": "http://www.geonames.org/BF/administrative-division-burkina-faso.html", + "country": "Burkina Faso", + "subdivisions": { + "01": "Boucle du Mouhoun", + "02": "Cascades", + "03": "Centre", + "04": "Centre-Est", + "05": "Centre-Nord", + "06": "Centre-Ouest", + "07": "Centre-Sud", + "08": "Est", + "09": "Hauts-Bassins", + "10": "Nord", + "11": "Plateau-Central", + "12": "Sahel", + "13": "Sud-Ouest", + "BAL": "Bale", + "BAM": "Bam", + "BAN": "Banwa", + "BAZ": "Bazega", + "BGR": "Bougouriba", + "BLG": "Boulgou", + "BLK": "Boulkiemde", + "COM": "Comoe", + "GAN": "Ganzourgou", + "GNA": "Gnagna", + "GOU": "Gourma", + "HOU": "Houet", + "IOB": "Ioba", + "KAD": "Kadiogo", + "KEN": "Kenedougou", + "KMD": "Komondjari", + "KMP": "Kompienga", + "KOP": "Koulpelogo", + "KOS": "Kossi", + "KOT": "Kouritenga", + "KOW": "Kourweogo", + "LER": "Leraba", + "LOR": "Loroum", + "MOU": "Mouhoun", + "NAM": "Namentenga", + "NAO": "Nahouri", + "NAY": "Nayala", + "NOU": "Noumbiel", + "OUB": "Oubritenga", + "OUD": "Oudalan", + "PAS": "Passore", + "PON": "Poni", + "SEN": "Seno", + "SIS": "Sissili", + "SMT": "Sanmatenga", + "SNG": "Sanguie", + "SOM": "Soum", + "SOR": "Sourou", + "TAP": "Tapoa", + "TUI": "Tuy", + "YAG": "Yagha", + "YAT": "Yatenga", + "ZIR": "Ziro", + "ZON": "Zondoma", + "ZOU": "Zoundweogo" + } +} diff --git a/data/iso_3166-2/BG.json b/data/iso_3166-2/BG.json new file mode 100644 index 00000000..bc3de7f5 --- /dev/null +++ b/data/iso_3166-2/BG.json @@ -0,0 +1,34 @@ +{ + "source": "http://www.geonames.org/BG/administrative-division-bulgaria.html", + "country": "Bulgaria", + "subdivisions": { + "01": "Blagoevgrad", + "02": "Burgas", + "03": "Varna", + "04": "Veliko Turnovo", + "05": "Vidin", + "06": "Vratsa", + "07": "Gabrovo", + "08": "Dobrich", + "09": "Kurdzhali", + "10": "Kyustendil", + "11": "Lovech", + "12": "Montana", + "13": "Pazardzhik", + "14": "Pernik", + "15": "Pleven", + "16": "Plovdiv", + "17": "Razgrad", + "18": "Ruse", + "19": "Silistra", + "20": "Sliven", + "21": "Smolyan", + "22": "Sofia Region", + "23": "Sofia", + "24": "Stara Zagora", + "25": "Turgovishte", + "26": "Khaskovo", + "27": "Shumen", + "28": "Yambol" + } +} diff --git a/data/iso_3166-2/BH.json b/data/iso_3166-2/BH.json new file mode 100644 index 00000000..46a1f97e --- /dev/null +++ b/data/iso_3166-2/BH.json @@ -0,0 +1,10 @@ +{ + "source": "http://www.geonames.org/BH/administrative-division-bahrain.html", + "country": "Bahrain", + "subdivisions": { + "13": "Capital", + "14": "Southern", + "15": "Muharraq", + "17": "Northern" + } +} diff --git a/data/iso_3166-2/BI.json b/data/iso_3166-2/BI.json new file mode 100644 index 00000000..bb613497 --- /dev/null +++ b/data/iso_3166-2/BI.json @@ -0,0 +1,24 @@ +{ + "source": "http://www.geonames.org/BI/administrative-division-burundi.html", + "country": "Burundi", + "subdivisions": { + "BB": "Bubanza", + "BL": "Bujumbura Rural", + "BM": "Bujumbura Mairie", + "BR": "Bururi", + "CA": "Cankuzo", + "CI": "Cibitoke", + "GI": "Gitega", + "KI": "Kirundo", + "KR": "Karuzi", + "KY": "Kayanza", + "MA": "Makamba", + "MU": "Muramvya", + "MW": "Mwaro", + "MY": "Muyinga", + "NG": "Ngozi", + "RM": "Rumonge", + "RT": "Rutana", + "RY": "Ruyigi" + } +} diff --git a/data/iso_3166-2/BJ.json b/data/iso_3166-2/BJ.json new file mode 100644 index 00000000..c009a783 --- /dev/null +++ b/data/iso_3166-2/BJ.json @@ -0,0 +1,18 @@ +{ + "source": "http://www.geonames.org/BJ/administrative-division-benin.html", + "country": "Benin", + "subdivisions": { + "AK": "Atakora", + "AL": "Alibori", + "AQ": "Atlantique", + "BO": "Borgou", + "CO": "Collines", + "DO": "Donga", + "KO": "Kouffo", + "LI": "Littoral", + "MO": "Mono", + "OU": "Oueme", + "PL": "Plateau", + "ZO": "Zou" + } +} diff --git a/data/iso_3166-2/BL.json b/data/iso_3166-2/BL.json new file mode 100644 index 00000000..1e9ca695 --- /dev/null +++ b/data/iso_3166-2/BL.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/BL/administrative-division-saint-barthelemy.html", + "country": "Saint Barthélemy", + "subdivisions": [] +} diff --git a/data/iso_3166-2/BM.json b/data/iso_3166-2/BM.json new file mode 100644 index 00000000..c0b7bf5f --- /dev/null +++ b/data/iso_3166-2/BM.json @@ -0,0 +1,17 @@ +{ + "source": "http://www.geonames.org/BM/administrative-division-bermuda.html", + "country": "Bermuda", + "subdivisions": { + "DS": "Devonshire", + "GC": "Saint George", + "HA": "Hamilton", + "HC": "Hamilton City", + "PB": "Pembroke", + "PG": "Paget", + "SA": "Sandys", + "SG": "Saint George's", + "SH": "Southampton", + "SM": "Smith's", + "WA": "Warwick" + } +} diff --git a/data/iso_3166-2/BN.json b/data/iso_3166-2/BN.json new file mode 100644 index 00000000..2c920539 --- /dev/null +++ b/data/iso_3166-2/BN.json @@ -0,0 +1,10 @@ +{ + "source": "http://www.geonames.org/BN/administrative-division-brunei.html", + "country": "Brunei", + "subdivisions": { + "BE": "Belait", + "BM": "Brunei and Muara", + "TE": "Temburong", + "TU": "Tutong" + } +} diff --git a/data/iso_3166-2/BO.json b/data/iso_3166-2/BO.json new file mode 100644 index 00000000..2bb9c4a5 --- /dev/null +++ b/data/iso_3166-2/BO.json @@ -0,0 +1,15 @@ +{ + "source": "http://www.geonames.org/BO/administrative-division-bolivia.html", + "country": "Bolivia", + "subdivisions": { + "B": "Departmento Beni", + "C": "Departmento Cochabamba", + "H": "Departmento Chuquisaca", + "L": "Departmento La Paz", + "N": "Departmento Pando", + "O": "Departmento Oruro", + "P": "Departmento Potosi", + "S": "Departmento Santa Cruz", + "T": "Departmento Tarija" + } +} diff --git a/data/iso_3166-2/BQ.json b/data/iso_3166-2/BQ.json new file mode 100644 index 00000000..76822ed5 --- /dev/null +++ b/data/iso_3166-2/BQ.json @@ -0,0 +1,9 @@ +{ + "source": "http://www.geonames.org/BQ/administrative-division-bonaire.html", + "country": "Bonaire", + "subdivisions": { + "BO": "Bonaire", + "SA": "Saba", + "SE": "Sint Eustatius" + } +} diff --git a/data/iso_3166-2/BR.json b/data/iso_3166-2/BR.json new file mode 100644 index 00000000..cf3d74c1 --- /dev/null +++ b/data/iso_3166-2/BR.json @@ -0,0 +1,33 @@ +{ + "source": "http://www.geonames.org/BR/administrative-division-brazil.html", + "country": "Brazil", + "subdivisions": { + "AC": "Acre", + "AL": "Alagoas", + "AM": "Amazonas", + "AP": "Amapa", + "BA": "Bahia", + "CE": "Ceara", + "DF": "Distrito Federal", + "ES": "Espirito Santo", + "GO": "Goias", + "MA": "Maranhao", + "MG": "Minas Gerais", + "MS": "Mato Grosso do Sul", + "MT": "Mato Grosso", + "PA": "Para", + "PB": "Paraiba", + "PE": "Pernambuco", + "PI": "Piaui", + "PR": "Parana", + "RJ": "Rio de Janeiro", + "RN": "Rio Grande do Norte", + "RO": "Rondonia", + "RR": "Roraima", + "RS": "Rio Grande do Sul", + "SC": "Santa Catarina", + "SE": "Sergipe", + "SP": "Sao Paulo", + "TO": "Tocantins" + } +} diff --git a/data/iso_3166-2/BS.json b/data/iso_3166-2/BS.json new file mode 100644 index 00000000..25426fb8 --- /dev/null +++ b/data/iso_3166-2/BS.json @@ -0,0 +1,38 @@ +{ + "source": "http://www.geonames.org/BS/administrative-division-bahamas.html", + "country": "Bahamas", + "subdivisions": { + "AK": "Acklins Islands", + "BI": "Bimini and Cat Cay", + "BP": "Black Point", + "BY": "Berry Islands", + "CE": "Central Eleuthera", + "CI": "Cat Island", + "CK": "Crooked Island and Long Cay", + "CO": "Central Abaco", + "CS": "Central Andros", + "EG": "East Grand Bahama", + "EX": "Exuma", + "FP": "City of Freeport", + "GC": "Grand Cay", + "HI": "Harbour Island", + "HT": "Hope Town", + "IN": "Inagua", + "LI": "Long Island", + "MC": "Mangrove Cay", + "MG": "Mayaguana", + "MI": "Moore's Island", + "NE": "North Eleuthera", + "NO": "North Abaco", + "NP": "New Providence", + "NS": "North Andros", + "RC": "Rum Cay", + "RI": "Ragged Island", + "SA": "South Andros", + "SE": "South Eleuthera", + "SO": "South Abaco", + "SS": "San Salvador", + "SW": "Spanish Wells", + "WG": "West Grand Bahama" + } +} diff --git a/data/iso_3166-2/BT.json b/data/iso_3166-2/BT.json new file mode 100644 index 00000000..e0b071af --- /dev/null +++ b/data/iso_3166-2/BT.json @@ -0,0 +1,26 @@ +{ + "source": "http://www.geonames.org/BT/administrative-division-bhutan.html", + "country": "Bhutan", + "subdivisions": { + "11": "Paro", + "12": "Chukha", + "13": "Haa", + "14": "Samtse", + "15": "Thimphu", + "21": "Tsirang", + "22": "Dagana", + "23": "Punakha", + "24": "Wangdue Phodrang", + "31": "Sarpang", + "32": "Trongsa", + "33": "Bumthang", + "34": "Zhemgang", + "41": "Trashigang", + "42": "Mongar", + "43": "Pemagatshel", + "44": "Lhuntse", + "45": "Samdrup Jongkhar", + "GA": "Gasa", + "TY": "Trashi Yangste" + } +} diff --git a/data/iso_3166-2/BV.json b/data/iso_3166-2/BV.json new file mode 100644 index 00000000..d44bb480 --- /dev/null +++ b/data/iso_3166-2/BV.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/BV/administrative-division-bouvet-island.html", + "country": "Bouvet Island", + "subdivisions": [] +} diff --git a/data/iso_3166-2/BW.json b/data/iso_3166-2/BW.json new file mode 100644 index 00000000..dd8e9130 --- /dev/null +++ b/data/iso_3166-2/BW.json @@ -0,0 +1,22 @@ +{ + "source": "http://www.geonames.org/BW/administrative-division-botswana.html", + "country": "Botswana", + "subdivisions": { + "CE": "Central", + "CH": "Chobe", + "FR": "Francistown", + "GA": "Gaborone", + "GH": "Ghanzi", + "JW": "Jwaneng", + "KG": "Kgalagadi", + "KL": "Kgatleng", + "KW": "Kweneng", + "LO": "Lobatse", + "NE": "North East", + "NW": "North West", + "SE": "South East", + "SO": "Southern", + "SP": "Selibe Phikwe", + "ST": "Sowa Town" + } +} diff --git a/data/iso_3166-2/BY.json b/data/iso_3166-2/BY.json new file mode 100644 index 00000000..e8b6c548 --- /dev/null +++ b/data/iso_3166-2/BY.json @@ -0,0 +1,13 @@ +{ + "source": "http://www.geonames.org/BY/administrative-division-belarus.html", + "country": "Belarus", + "subdivisions": { + "BR": "Brest voblast", + "HM": "Horad Minsk", + "HO": "Homyel voblast", + "HR": "Hrodna voblast", + "MA": "Mahilyow voblast", + "MI": "Minsk voblast", + "VI": "Vitsebsk voblast" + } +} diff --git a/data/iso_3166-2/BZ.json b/data/iso_3166-2/BZ.json new file mode 100644 index 00000000..fffadfd6 --- /dev/null +++ b/data/iso_3166-2/BZ.json @@ -0,0 +1,12 @@ +{ + "source": "http://www.geonames.org/BZ/administrative-division-belize.html", + "country": "Belize", + "subdivisions": { + "BZ": "Belize District", + "CY": "Cayo District", + "CZL": "Corozal District", + "OW": "Orange Walk District", + "SC": "Stann Creek District", + "TOL": "Toledo District" + } +} diff --git a/data/iso_3166-2/CA.json b/data/iso_3166-2/CA.json new file mode 100644 index 00000000..1b6847a3 --- /dev/null +++ b/data/iso_3166-2/CA.json @@ -0,0 +1,19 @@ +{ + "source": "http://www.geonames.org/CA/administrative-division-canada.html", + "country": "Canada", + "subdivisions": { + "AB": "Alberta", + "BC": "British Columbia", + "MB": "Manitoba", + "NB": "New Brunswick", + "NL": "Newfoundland and Labrador", + "NS": "Nova Scotia", + "NT": "Northwest Territories", + "NU": "Nunavut", + "ON": "Ontario", + "PE": "Prince Edward Island", + "QC": "Quebec", + "SK": "Saskatchewan", + "YT": "Yukon Territory" + } +} diff --git a/data/iso_3166-2/CC.json b/data/iso_3166-2/CC.json new file mode 100644 index 00000000..e17dc1ee --- /dev/null +++ b/data/iso_3166-2/CC.json @@ -0,0 +1,11 @@ +{ + "source": "http://www.geonames.org/CC/administrative-division-cocos-islands.html", + "country": "Cocos [Keeling] Islands", + "subdivisions": { + "D": "Direction Island", + "H": "Home Island", + "O": "Horsburgh Island", + "S": "South Island", + "W": "West Island" + } +} diff --git a/data/iso_3166-2/CD.json b/data/iso_3166-2/CD.json new file mode 100644 index 00000000..9fcc4192 --- /dev/null +++ b/data/iso_3166-2/CD.json @@ -0,0 +1,32 @@ +{ + "source": "http://www.geonames.org/CD/administrative-division-democratic-republic-of-the-congo.html", + "country": "Democratic Republic of the Congo", + "subdivisions": { + "BC": "Kongo Central", + "BU": "Bas-Uélé", + "EQ": "Équateur ", + "HK": "Haut-Katanga", + "HL": "Haut-Lomami", + "HU": "Haut-Uélé", + "IT": "Ituri", + "KC": "Kasaï Central", + "KE": "Kasai-Oriental", + "KG": "Kwango", + "KL": "Kwilu", + "KN": "Kinshasa", + "KS": "Kasaï", + "LO": "Lomami", + "LU": "Lualaba", + "MA": "Maniema", + "MN": "Mai-Ndombe", + "MO": "Mongala", + "NK": "Nord-Kivu", + "NU": "Nord-Ubangi", + "SA": "Sankuru", + "SK": "Sud-Kivu", + "SU": "Sud-Ubangi", + "TA": "Tanganyika", + "TO": "Tshopo", + "TU": "Tshuapa" + } +} diff --git a/data/iso_3166-2/CF.json b/data/iso_3166-2/CF.json new file mode 100644 index 00000000..2ddf5b86 --- /dev/null +++ b/data/iso_3166-2/CF.json @@ -0,0 +1,23 @@ +{ + "source": "http://www.geonames.org/CF/administrative-division-central-african-republic.html", + "country": "Central African Republic", + "subdivisions": { + "AC": "Ouham", + "BB": "Bamingui-Bangoran", + "BGF": "Bangui", + "BK": "Basse-Kotto", + "HK": "Haute-Kotto", + "HM": "Haut-Mbomou", + "HS": "Mambere-Kadeï", + "KB": "Nana-Grebizi", + "KG": "Kemo", + "LB": "Lobaye", + "MB": "Mbomou", + "MP": "Ombella-M'Poko", + "NM": "Nana-Mambere", + "OP": "Ouham-Pende", + "SE": "Sangha-Mbaere", + "UK": "Ouaka", + "VK": "Vakaga" + } +} diff --git a/data/iso_3166-2/CG.json b/data/iso_3166-2/CG.json new file mode 100644 index 00000000..dd51871d --- /dev/null +++ b/data/iso_3166-2/CG.json @@ -0,0 +1,18 @@ +{ + "source": "http://www.geonames.org/CG/administrative-division-republic-of-the-congo.html", + "country": "Republic of the Congo", + "subdivisions": { + "11": "Bouenza", + "12": "Pool", + "13": "Sangha", + "14": "Plateaux", + "15": "Cuvette-Ouest", + "16": "Pointe-Noire", + "2": "Lekoumou", + "5": "Kouilou", + "7": "Likouala", + "8": "Cuvette", + "9": "Niari", + "BZV": "Brazzaville" + } +} diff --git a/data/iso_3166-2/CH.json b/data/iso_3166-2/CH.json new file mode 100644 index 00000000..3f0ff76b --- /dev/null +++ b/data/iso_3166-2/CH.json @@ -0,0 +1,32 @@ +{ + "source": "http://www.geonames.org/CH/administrative-division-switzerland.html", + "country": "Switzerland", + "subdivisions": { + "AG": "Aargau", + "AI": "Appenzell Innerhoden", + "AR": "Appenzell Ausserrhoden", + "BE": "Bern", + "BL": "Basel-Landschaft", + "BS": "Basel-Stadt", + "FR": "Fribourg", + "GE": "Geneva", + "GL": "Glarus", + "GR": "Graubunden", + "JU": "Jura", + "LU": "Lucerne", + "NE": "Neuchâtel", + "NW": "Nidwalden", + "OW": "Obwalden", + "SG": "St. Gallen", + "SH": "Schaffhausen", + "SO": "Solothurn", + "SZ": "Schwyz", + "TG": "Thurgau", + "TI": "Ticino", + "UR": "Uri", + "VD": "Vaud", + "VS": "Valais", + "ZG": "Zug", + "ZH": "Zurich" + } +} diff --git a/data/iso_3166-2/CI.json b/data/iso_3166-2/CI.json new file mode 100644 index 00000000..2995cd05 --- /dev/null +++ b/data/iso_3166-2/CI.json @@ -0,0 +1,20 @@ +{ + "source": "http://www.geonames.org/CI/administrative-division-ivory-coast.html", + "country": "Ivory Coast", + "subdivisions": { + "AB": "Abidjan", + "BS": "Bas-Sassandra", + "CM": "Comoé", + "DN": "Denguélé", + "GD": "Gôh-Djiboua", + "LC": "Lacs", + "LG": "Lagunes", + "MG": "Montagnes", + "SM": "Sassandra-Marahoué", + "SV": "Savanes", + "VB": "Vallée du Bandama", + "WR": "Woroba", + "YM": "Yamoussoukro Autonomous District", + "ZZ": "Zanzan" + } +} diff --git a/data/iso_3166-2/CK.json b/data/iso_3166-2/CK.json new file mode 100644 index 00000000..7983116d --- /dev/null +++ b/data/iso_3166-2/CK.json @@ -0,0 +1,21 @@ +{ + "source": "http://www.geonames.org/CK/administrative-division-cook-islands.html", + "country": "Cook Islands", + "subdivisions": { + "AI": "Aitutaki", + "AT": "Atiu", + "MA": "Manuae", + "MG": "Mangaia", + "MK": "Manihiki", + "MT": "Mitiaro", + "MU": "Mauke", + "NI": "Nassau Island", + "PA": "Palmerston", + "PE": "Penrhyn", + "PU": "Pukapuka", + "RK": "Rakahanga", + "RR": "Rarotonga", + "SU": "Surwarrow", + "TA": "Takutea" + } +} diff --git a/data/iso_3166-2/CL.json b/data/iso_3166-2/CL.json new file mode 100644 index 00000000..6ea68dca --- /dev/null +++ b/data/iso_3166-2/CL.json @@ -0,0 +1,22 @@ +{ + "source": "http://www.geonames.org/CL/administrative-division-chile.html", + "country": "Chile", + "subdivisions": { + "AI": "Aisen del General Carlos Ibanez del Campo (XI)", + "AN": "Antofagasta (II)", + "AP": "Arica y Parinacota", + "AR": "Araucania (IX)", + "AT": "Atacama (III)", + "BI": "Bio-Bio (VIII)", + "CO": "Coquimbo (IV)", + "LI": "Libertador General Bernardo O'Higgins (VI)", + "LL": "Los Lagos (X)", + "LR": "Los Ríos", + "MA": "Magallanes (XII)", + "ML": "Maule (VII)", + "NB": "Ñuble", + "RM": "Region Metropolitana (RM)", + "TA": "Tarapaca (I)", + "VS": "Valparaiso (V)" + } +} diff --git a/data/iso_3166-2/CM.json b/data/iso_3166-2/CM.json new file mode 100644 index 00000000..940f29df --- /dev/null +++ b/data/iso_3166-2/CM.json @@ -0,0 +1,16 @@ +{ + "source": "http://www.geonames.org/CM/administrative-division-cameroon.html", + "country": "Cameroon", + "subdivisions": { + "AD": "Adamawa Province (Adamaoua)", + "CE": "Centre Province", + "EN": "Extreme North Province (Extrême-Nord)", + "ES": "East Province (Est)", + "LT": "Littoral Province", + "NO": "North Province (Nord)", + "NW": "Northwest Province (Nord-Ouest)", + "OU": "West Province (Ouest)", + "SU": "South Province (Sud)", + "SW": "Southwest Province (Sud-Ouest)." + } +} diff --git a/data/iso_3166-2/CN.json b/data/iso_3166-2/CN.json new file mode 100644 index 00000000..d84573c6 --- /dev/null +++ b/data/iso_3166-2/CN.json @@ -0,0 +1,40 @@ +{ + "source": "http://www.geonames.org/CN/administrative-division-china.html", + "country": "China", + "subdivisions": { + "AH": "Anhui", + "BJ": "Beijing", + "CQ": "Chongqìng", + "FJ": "Fujian", + "GD": "Guangdong", + "GS": "Gansu", + "GX": "Guangxi", + "GZ": "Guizhou", + "HA": "Henan", + "HB": "Hubei", + "HE": "Hebei", + "HI": "Hainan", + "HK": "Xianggang", + "HL": "Heilongjiang", + "HN": "Hunan", + "JL": "Jilin", + "JS": "Jiangsu", + "JX": "Jiangxi", + "LN": "Liaoning", + "MO": "Aomen", + "NM": "Nei Mongol", + "NX": "Ningxia", + "QH": "Qinghai", + "SC": "Sichuan", + "SD": "Shandong", + "SH": "Shanghai", + "SN": "Shaanxi", + "SX": "Shanxi", + "TJ": "Tianjin", + "TW": "Taiwan", + "XJ": "Xinjiang", + "XZ": "Xizang Zìzhìqu (Tibet)", + "YN": "Yunnan", + "ZJ": "Zhejiang" + } +} diff --git a/data/iso_3166-2/CO.json b/data/iso_3166-2/CO.json new file mode 100644 index 00000000..8e7ce858 --- /dev/null +++ b/data/iso_3166-2/CO.json @@ -0,0 +1,39 @@ +{ + "source": "http://www.geonames.org/CO/administrative-division-colombia.html", + "country": "Colombia", + "subdivisions": { + "AMA": "Amazonas", + "ANT": "Antioquia", + "ARA": "Arauca", + "ATL": "Atlantico", + "BOL": "Bolivar", + "BOY": "Boyaca", + "CAL": "Caldas", + "CAQ": "Caqueta", + "CAS": "Casanare", + "CAU": "Cauca", + "CES": "Cesar", + "CHO": "Choco", + "COR": "Cordoba", + "CUN": "Cundinamarca", + "DC": "Bogota D.C.", + "GUA": "Guainia", + "GUV": "Guaviare", + "HUI": "Huila", + "LAG": "La Guajira", + "MAG": "Magdalena", + "MET": "Meta", + "NAR": "Narino", + "NSA": "Norte de Santander", + "PUT": "Putumayo", + "QUI": "Quindio", + "RIS": "Risaralda", + "SAN": "Santander", + "SAP": "San Andres y Providencia", + "SUC": "Sucre", + "TOL": "Tolima", + "VAC": "Valle del Cauca", + "VAU": "Vaupes", + "VID": "Vichada" + } +} diff --git a/data/iso_3166-2/CR.json b/data/iso_3166-2/CR.json new file mode 100644 index 00000000..68cea068 --- /dev/null +++ b/data/iso_3166-2/CR.json @@ -0,0 +1,13 @@ +{ + "source": "http://www.geonames.org/CR/administrative-division-costa-rica.html", + "country": "Costa Rica", + "subdivisions": { + "A": "Alajuela", + "C": "Cartago", + "G": "Guanacaste", + "H": "Heredia", + "L": "Limon", + "P": "Puntarenas", + "SJ": "San Jose" + } +} diff --git a/data/iso_3166-2/CS.json b/data/iso_3166-2/CS.json new file mode 100644 index 00000000..85f4efc6 --- /dev/null +++ b/data/iso_3166-2/CS.json @@ -0,0 +1,10 @@ +{ + "source": "http://www.geonames.org/CS/administrative-division-serbia-and-montenegro.html", + "country": "Serbia And Montenegro", + "subdivisions": { + "KOS": "Kosovo", + "MON": "Montenegro", + "SER": "Serbia", + "VOJ": "Vojvodina" + } +} diff --git a/data/iso_3166-2/CU.json b/data/iso_3166-2/CU.json new file mode 100644 index 00000000..ea8ae21a --- /dev/null +++ b/data/iso_3166-2/CU.json @@ -0,0 +1,22 @@ +{ + "source": "http://www.geonames.org/CU/administrative-division-cuba.html", + "country": "Cuba", + "subdivisions": { + "01": "Pinar del Rio", + "03": "La Habana", + "04": "Matanzas", + "05": "Villa Clara", + "06": "Cienfuegos", + "07": "Sancti Spiritus", + "08": "Ciego de Avila", + "09": "Camaguey", + "10": "Las Tunas", + "11": "Holguin", + "12": "Granma", + "13": "Santiago de Cuba", + "14": "Guantanamo", + "15": "Artemisa", + "16": "Mayabeque", + "99": "Isla de la Juventud" + } +} diff --git a/data/iso_3166-2/CV.json b/data/iso_3166-2/CV.json new file mode 100644 index 00000000..a39d9c0b --- /dev/null +++ b/data/iso_3166-2/CV.json @@ -0,0 +1,30 @@ +{ + "source": "http://www.geonames.org/CV/administrative-division-cape-verde.html", + "country": "Cape Verde", + "subdivisions": { + "B": "Ilhas de Barlavento", + "BR": "Brava", + "BV": "Boa Vista", + "CA": "Santa Catarina", + "CF": "Santa Catarina do Fogo", + "CR": "Santa Cruz", + "MA": "Maio", + "MO": "Mosteiros", + "PA": "Paul", + "PN": "Porto Novo", + "PR": "Praia", + "RB": "Ribeira Brava", + "RG": "Ribeira Grande", + "RS": "Ribeira Grande de Santiago", + "S": "Ilhas de Sotavento", + "SD": "Sao Domingos", + "SF": "Sao Filipe", + "SL": "Sal", + "SM": "São Miguel", + "SO": "São Lourenço dos Orgãos", + "SS": "São Salvador do Mundo", + "SV": "Sao Vicente", + "TA": "Tarrafal", + "TS": "Tarrafal de São Nicolau" + } +} diff --git a/data/iso_3166-2/CW.json b/data/iso_3166-2/CW.json new file mode 100644 index 00000000..da027714 --- /dev/null +++ b/data/iso_3166-2/CW.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/CW/administrative-division-curacao.html", + "country": "Curacao", + "subdivisions": [] +} diff --git a/data/iso_3166-2/CX.json b/data/iso_3166-2/CX.json new file mode 100644 index 00000000..c89f4ce9 --- /dev/null +++ b/data/iso_3166-2/CX.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/CX/administrative-division-christmas-island.html", + "country": "Christmas Island", + "subdivisions": [] +} diff --git a/data/iso_3166-2/CY.json b/data/iso_3166-2/CY.json new file mode 100644 index 00000000..c776e62c --- /dev/null +++ b/data/iso_3166-2/CY.json @@ -0,0 +1,12 @@ +{ + "source": "http://www.geonames.org/CY/administrative-division-cyprus.html", + "country": "Cyprus", + "subdivisions": { + "01": "Lefkosía", + "02": "Lemesós", + "03": "Lárnaka", + "04": "Ammóchostos", + "05": "Páfos", + "06": "Kerýneia" + } +} diff --git a/data/iso_3166-2/CZ.json b/data/iso_3166-2/CZ.json new file mode 100644 index 00000000..2929c531 --- /dev/null +++ b/data/iso_3166-2/CZ.json @@ -0,0 +1,118 @@ +{ + "source": "http://www.geonames.org/CZ/administrative-division-czech-republic.html", + "country": "Czechia", + "subdivisions": { + "10": "Prague - the Capital (Praha - hlavni mesto)", + "101": "Praha 1", + "102": "Praha 2", + "103": "Praha 3", + "104": "Praha 4", + "105": "Praha 5", + "106": "Praha 6", + "107": "Praha 7", + "108": "Praha 8", + "109": "Praha 9", + "110": "Praha 10", + "111": "Praha 11", + "112": "Praha 12", + "113": "Praha 13", + "114": "Praha 14", + "115": "Praha 15", + "116": "Praha 16", + "117": "Praha 17", + "118": "Praha 18", + "119": "Praha 19", + "120": "Praha 20", + "121": "Praha 21", + "122": "Praha 22", + "20": "Central Bohemian Region (Stredocesky kraj)", + "201": "Benešov", + "202": "Beroun", + "203": "Kladno", + "204": "Kolín", + "205": "Kutná Hora", + "206": "Mělník", + "207": "Mladá Boleslav", + "208": "Nymburk", + "209": "Praha-východ", + "20A": "Praha-západ", + "20B": "Příbram", + "20C": "Rakovník", + "31": "South Bohemian Region (Jihocesky kraj)", + "311": "České Budějovice", + "312": "Český Krumlov", + "313": "Jindřichův Hradec", + "314": "Písek", + "315": "Prachatice", + "316": "Strakonice", + "317": "Tábor", + "32": "Plzen( Region Plzensky kraj)", + "321": "Domažlice", + "322": "Klatovy", + "323": "Plzeň-město", + "324": "Plzeň-jih", + "325": "Plzeň-sever", + "326": "Rokycany", + "327": "Tachov", + "41": "Carlsbad Region (Karlovarsky kraj)", + "411": "Cheb", + "412": "Karlovy Vary", + "413": "Sokolov", + "42": "Usti nad Labem Region (Ustecky kraj)", + "421": "Děčín", + "422": "Chomutov", + "423": "Litoměřice", + "424": "Louny", + "425": "Most", + "426": "Teplice", + "427": "Ústí nad Labem", + "51": "Liberec Region (Liberecky kraj)", + "511": "Česká Lípa", + "512": "Jablonec nad Nisou", + "513": "Liberec", + "514": "Semily", + "52": "Hradec Kralove Region (Kralovehradecky kraj)", + "521": "Hradec Králové", + "522": "Jičín", + "523": "Náchod", + "524": "Rychnov nad Kněžnou", + "525": "Trutnov", + "53": "Pardubice Region (Pardubicky kraj)", + "531": "Chrudim", + "532": "Pardubice", + "533": "Svitavy", + "534": "Ústí nad Orlicí", + "63": "Vysocina Region (kraj Vysocina)", + "631": "Havlíčkův Brod", + "632": "Jihlava", + "633": "Pelhřimov", + "634": "Třebíč", + "635": "Žd’ár nad Sázavou", + "64": "South Moravian Region (Jihomoravsky kraj)", + "641": "Blansko", + "642": "Brno-město", + "643": "Brno-venkov", + "644": "Břeclav", + "645": "Hodonín", + "646": "Vyškov", + "647": "Znojmo", + "71": "Olomouc Region (Olomoucky kraj)", + "711": "Jeseník", + "712": "Olomouc", + "713": "Prostĕjov", + "714": "Přerov", + "715": "Šumperk", + "72": "Zlin Region (Zlinsky kraj)", + "721": "Kromĕříž", + "722": "Uherské Hradištĕ", + "723": "Vsetín", + "724": "Zlín", + "80": "Moravian-Silesian Region (Moravskoslezsky kraj)", + "801": "Bruntál", + "802": "Frýdek - Místek", + "803": "Karviná", + "804": "Nový Jičín", + "805": "Opava", + "806": "Ostrava - město" + } +} diff --git a/data/iso_3166-2/DE.json b/data/iso_3166-2/DE.json new file mode 100644 index 00000000..a5650f45 --- /dev/null +++ b/data/iso_3166-2/DE.json @@ -0,0 +1,22 @@ +{ + "source": "http://www.geonames.org/DE/administrative-division-germany.html", + "country": "Germany", + "subdivisions": { + "BB": "Brandenburg", + "BE": "Berlin", + "BW": "Baden-Württemberg", + "BY": "Bayern", + "HB": "Bremen", + "HE": "Hessen", + "HH": "Hamburg", + "MV": "Mecklenburg-Vorpommern", + "NI": "Niedersachsen", + "NW": "Nordrhein-Westfalen", + "RP": "Rheinland-Pfalz", + "SH": "Schleswig-Holstein", + "SL": "Saarland", + "SN": "Sachsen", + "ST": "Sachsen-Anhalt", + "TH": "Thüringen" + } +} diff --git a/data/iso_3166-2/DJ.json b/data/iso_3166-2/DJ.json new file mode 100644 index 00000000..e4578bef --- /dev/null +++ b/data/iso_3166-2/DJ.json @@ -0,0 +1,12 @@ +{ + "source": "http://www.geonames.org/DJ/administrative-division-djibouti.html", + "country": "Djibouti", + "subdivisions": { + "AR": "Arta", + "AS": "'Ali Sabih", + "DI": "Dikhil", + "DJ": "Djibouti", + "OB": "Obock", + "TA": "Tadjoura" + } +} diff --git a/data/iso_3166-2/DK.json b/data/iso_3166-2/DK.json new file mode 100644 index 00000000..20e6a3de --- /dev/null +++ b/data/iso_3166-2/DK.json @@ -0,0 +1,11 @@ +{ + "source": "http://www.geonames.org/DK/administrative-division-denmark.html", + "country": "Denmark", + "subdivisions": { + "81": "Region Nordjylland", + "82": "Region Midtjylland", + "83": "Region Syddanmark", + "84": "Region Hovedstaden", + "85": "Region Sjæland" + } +} diff --git a/data/iso_3166-2/DM.json b/data/iso_3166-2/DM.json new file mode 100644 index 00000000..ddf9064c --- /dev/null +++ b/data/iso_3166-2/DM.json @@ -0,0 +1,16 @@ +{ + "source": "http://www.geonames.org/DM/administrative-division-dominica.html", + "country": "Dominica", + "subdivisions": { + "02": "Saint Andrew Parish", + "03": "Saint David Parish", + "04": "Saint George Parish", + "05": "Saint John Parish", + "06": "Saint Joseph Parish", + "07": "Saint Luke Parish", + "08": "Saint Mark Parish", + "09": "Saint Patrick Parish", + "10": "Saint Paul Parish", + "11": "Saint Peter Parish" + } +} diff --git a/data/iso_3166-2/DO.json b/data/iso_3166-2/DO.json new file mode 100644 index 00000000..5b9717d6 --- /dev/null +++ b/data/iso_3166-2/DO.json @@ -0,0 +1,38 @@ +{ + "source": "http://www.geonames.org/DO/administrative-division-dominican-republic.html", + "country": "Dominican Republic", + "subdivisions": { + "01": "Distrito Nacional", + "02": "Azua", + "03": "Baoruco", + "04": "Barahona", + "05": "Dajabon", + "06": "Duarte", + "07": "Elias Pina", + "08": "El Seybo", + "09": "Espaillat", + "10": "Independencia", + "11": "La Altagracia", + "12": "La Romana", + "13": "La Vega", + "14": "Maria Trinidad Sanchez", + "15": "Monte Cristi", + "16": "Pedernales", + "17": "Peravia (Bani)", + "18": "Puerto Plata", + "19": "Salcedo", + "20": "Samana", + "21": "San Cristobal", + "22": "San Juan", + "23": "San Pedro de Macoris", + "24": "Sanchez Ramirez", + "25": "Santiago", + "26": "Santiago Rodriguez", + "27": "Valverde", + "28": "Monsenor Nouel", + "29": "Monte Plata", + "30": "Hato Mayor", + "31": "San Jose de Ocoa", + "32": "Santo Domingo" + } +} diff --git a/data/iso_3166-2/DZ.json b/data/iso_3166-2/DZ.json new file mode 100644 index 00000000..6ae08b42 --- /dev/null +++ b/data/iso_3166-2/DZ.json @@ -0,0 +1,54 @@ +{ + "source": "http://www.geonames.org/DZ/administrative-division-algeria.html", + "country": "Algeria", + "subdivisions": { + "01": "Adrar", + "02": "Chlef", + "03": "Laghouat", + "04": "Oum el-Bouaghi", + "05": "Batna", + "06": "Bejaia", + "07": "Biskra", + "08": "Bechar", + "09": "Blida", + "10": "Bouira", + "11": "Tamanghasset", + "12": "Tebessa", + "13": "Tlemcen", + "14": "Tiaret", + "15": "Tizi Ouzou", + "16": "Alger", + "17": "Djelfa", + "18": "Jijel", + "19": "Setif", + "20": "Saida", + "21": "Skikda", + "22": "Sidi Bel Abbes", + "23": "Annaba", + "24": "Guelma", + "25": "Constantine", + "26": "Medea", + "27": "Mostaganem", + "28": "M'Sila", + "29": "Muaskar", + "30": "Ouargla", + "31": "Oran", + "32": "El Bayadh", + "33": "Illizi", + "34": "Bordj Bou Arreridj", + "35": "Boumerdes", + "36": "El Tarf", + "37": "Tindouf", + "38": "Tissemsilt", + "39": "El Oued", + "40": "Khenchela", + "41": "Souk Ahras", + "42": "Tipaza", + "43": "Mila", + "44": "Ain Defla", + "45": "Naama", + "46": "Ain Temouchent", + "47": "Ghardaia", + "48": "Relizane" + } +} diff --git a/data/iso_3166-2/EC.json b/data/iso_3166-2/EC.json new file mode 100644 index 00000000..95007c06 --- /dev/null +++ b/data/iso_3166-2/EC.json @@ -0,0 +1,30 @@ +{ + "source": "http://www.geonames.org/EC/administrative-division-ecuador.html", + "country": "Ecuador", + "subdivisions": { + "A": "Azuay", + "B": "Bolivar", + "C": "Carchi", + "D": "Orellana", + "E": "Esmeraldas", + "F": "Canar", + "G": "Guayas", + "H": "Chimborazo", + "I": "Imbabura", + "L": "Loja", + "M": "Manabi", + "N": "Napo", + "O": "El Oro", + "P": "Pichincha", + "R": "Los Rios", + "S": "Morona-Santiago", + "SD": "Santo Domingo de los Tsáchilas", + "SE": "Santa Elena", + "T": "Tungurahua", + "U": "Sucumbios", + "W": "Galapagos", + "X": "Cotopaxi", + "Y": "Pastaza", + "Z": "Zamora-Chinchipe" + } +} diff --git a/data/iso_3166-2/EE.json b/data/iso_3166-2/EE.json new file mode 100644 index 00000000..97fa1517 --- /dev/null +++ b/data/iso_3166-2/EE.json @@ -0,0 +1,21 @@ +{ + "source": "http://www.geonames.org/EE/administrative-division-estonia.html", + "country": "Estonia", + "subdivisions": { + "37": "Harju County", + "39": "Hiiu County", + "44": "Ida-Viru County", + "49": "Jõgeva County", + "51": "Järva County", + "57": "Lääne County", + "59": "Lääne-Viru County", + "65": "Põlva County", + "67": "Pärnu County", + "70": "Rapla County", + "74": "Saare County", + "78": "Tartu County", + "82": "Valga County", + "84": "Viljandi County", + "86": "Võru County" + } +} diff --git a/data/iso_3166-2/EG.json b/data/iso_3166-2/EG.json new file mode 100644 index 00000000..17446271 --- /dev/null +++ b/data/iso_3166-2/EG.json @@ -0,0 +1,33 @@ +{ + "source": "http://www.geonames.org/EG/administrative-division-egypt.html", + "country": "Egypt", + "subdivisions": { + "ALX": "Al Iskandariyah", + "ASN": "Aswan", + "AST": "Asyut", + "BA": "Al Bahr al Ahmar", + "BH": "Al Buhayrah", + "BNS": "Bani Suwayf", + "C": "Al Qahirah", + "DK": "Ad Daqahliyah", + "DT": "Dumyat", + "FYM": "Al Fayyum", + "GH": "Al Gharbiyah", + "GZ": "Al Jizah", + "IS": "Al Isma'iliyah", + "JS": "Janub Sina'", + "KB": "Al Qalyubiyah", + "KFS": "Kafr ash Shaykh", + "KN": "Qina", + "LX": "Al Uqşur", + "MN": "Al Minya", + "MNF": "Al Minufiyah", + "MT": "Matruh", + "PTS": "Bur Sa'id", + "SHG": "Suhaj", + "SHR": "Ash Sharqiyah", + "SIN": "Shamal Sina'", + "SUZ": "As Suways", + "WAD": "Al Wadi al Jadid" + } +} diff --git a/data/iso_3166-2/EH.json b/data/iso_3166-2/EH.json new file mode 100644 index 00000000..0cdd11ac --- /dev/null +++ b/data/iso_3166-2/EH.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/EH/administrative-division-western-sahara.html", + "country": "Western Sahara", + "subdivisions": [] +} diff --git a/data/iso_3166-2/ER.json b/data/iso_3166-2/ER.json new file mode 100644 index 00000000..1e569c33 --- /dev/null +++ b/data/iso_3166-2/ER.json @@ -0,0 +1,12 @@ +{ + "source": "http://www.geonames.org/ER/administrative-division-eritrea.html", + "country": "Eritrea", + "subdivisions": { + "AN": "Anseba (Keren)", + "DK": "Southern Red Sea (Debub-Keih-Bahri)", + "DU": "Southern (Debub)", + "GB": "Gash-Barka (Barentu)", + "MA": "Central (Maekel)", + "SK": "Northern Red Sea (Semien-Keih-Bahri)" + } +} diff --git a/data/iso_3166-2/ES.json b/data/iso_3166-2/ES.json new file mode 100644 index 00000000..1f2503b9 --- /dev/null +++ b/data/iso_3166-2/ES.json @@ -0,0 +1,75 @@ +{ + "source": "http://www.geonames.org/ES/administrative-division-spain.html", + "country": "Spain", + "subdivisions": { + "A": "Alicante", + "AB": "Albacete", + "AL": "Almería", + "AN": "Comunidad Autónoma de Andalucía", + "AR": "Comunidad Autónoma de Aragón", + "AS": "Comunidad Autónoma del Principado de Asturias", + "AV": "Ávila", + "B": "Barcelona", + "BA": "Badajoz", + "BI": "Vizcaya", + "BU": "Burgos", + "C": "A Coruña", + "CA": "Cádiz", + "CB": "Comunidad Autónoma de Cantabria", + "CC": "Cáceres", + "CE": "Ceuta", + "CL": "Comunidad Autónoma de Castilla y León", + "CM": "Comunidad Autónoma de Castilla-La Mancha", + "CN": "Comunidad Autónoma de Canarias", + "CO": "Córdoba", + "CR": "Ciudad Real", + "CS": "Castellón", + "CT": "Catalunya", + "CU": "Cuenca", + "EX": "Comunidad Autónoma de Extremadura", + "GA": "Comunidad Autónoma de Galicia", + "GC": "Las Palmas", + "GI": "Girona", + "GR": "Granada", + "GU": "Guadalajara", + "H": "Huelva", + "HU": "Huesca", + "IB": "Comunidad Autónoma de las Islas Baleares", + "J": "Jaén", + "L": "Lleida", + "LE": "León", + "LO": "La Rioja", + "LU": "Lugo", + "M": "Madrid", + "MA": "Málaga", + "MC": "Comunidad Autónoma de la Región de Murcia", + "MD": "Comunidad de Madrid", + "ML": "Melilla", + "MU": "Murcia", + "NA": "Navarra", + "NC": "Comunidad Foral de Navarra", + "O": "Asturias", + "OR": "Ourense", + "P": "Palencia", + "PM": "Baleares", + "PO": "Pontevedra", + "PV": "Euskal Autonomia Erkidegoa", + "RI": "Comunidad Autónoma de La Rioja", + "S": "Cantabria", + "SA": "Salamanca", + "SE": "Sevilla", + "SG": "Segovia", + "SO": "Soria", + "SS": "Guipúzcoa", + "T": "Tarragona", + "TE": "Teruel", + "TF": "Santa Cruz de Tenerife", + "TO": "Toledo", + "V": "Valencia", + "VA": "Valladolid", + "VC": "Comunidad Valenciana", + "VI": "Álava", + "Z": "Zaragoza", + "ZA": "Zamora" + } +} diff --git a/data/iso_3166-2/ET.json b/data/iso_3166-2/ET.json new file mode 100644 index 00000000..b003e044 --- /dev/null +++ b/data/iso_3166-2/ET.json @@ -0,0 +1,17 @@ +{ + "source": "http://www.geonames.org/ET/administrative-division-ethiopia.html", + "country": "Ethiopia", + "subdivisions": { + "AA": "Addis Ababa", + "AF": "Afar", + "AM": "Amhara", + "BE": "Benishangul-Gumaz", + "DD": "Dire Dawa", + "GA": "Gambela", + "HA": "Hariai", + "OR": "Oromia", + "SN": "Southern Nations - Nationalities and Peoples Region", + "SO": "Somali", + "TI": "Tigray" + } +} diff --git a/data/iso_3166-2/FI.json b/data/iso_3166-2/FI.json new file mode 100644 index 00000000..034d58f8 --- /dev/null +++ b/data/iso_3166-2/FI.json @@ -0,0 +1,25 @@ +{ + "source": "http://www.geonames.org/FI/administrative-division-finland.html", + "country": "Finland", + "subdivisions": { + "01": "Ahvenanmaa [Finnish] / Åland [Swedish]", + "02": "Etelä-Karjala [Finnish] / Södra Karelen [Swedish]", + "03": "Etelä-Pohjanmaa [Finnish] / Södra Österbotten [Swedish]", + "04": "Etelä-Savo [Finnish] / Södra Savolax [Swedish]", + "05": "Kainuu [Finnish] / Kajanaland [Swedish]", + "06": "Kanta-Häme [Finnish] / Egentliga Tavastland [Swedish]", + "07": "Keski-Pohjanmaa [Finnish] / Mellersta Österbotten [Swedish]", + "08": "Keski-Suomi [Finnish] / Mellersta Finland [Swedish]", + "09": "Kymenlaakso [Finnish] / Kymmenedalen [Swedish]", + "10": "Lappi [Finnish] / Lappland [Swedish]", + "11": "Pirkanmaa [Finnish] / Birkaland [Swedish]", + "12": "Pohjanmaa [Finnish] / Österbotten [Swedish]", + "13": "Pohjois-Karjala [Finnish] / Norra Karelen [Swedish]", + "14": "Pohjois-Pohjanmaa [Finnish] / Norra Österbotten [Swedish]", + "15": "Pohjois-Savo [Finnish] / Norra Savolax [Swedish]", + "16": "Päijät-Häme [Finnish] / Päijänne-Tavastland [Swedish]", + "17": "Satakunta [Finnish and Swedish]", + "18": "Uusimaa [Finnish] / Nyland [Swedish]", + "19": "Varsinais-Suomi [Finnish] / Egentliga Finland [Swedish]" + } +} diff --git a/data/iso_3166-2/FJ.json b/data/iso_3166-2/FJ.json new file mode 100644 index 00000000..9c341497 --- /dev/null +++ b/data/iso_3166-2/FJ.json @@ -0,0 +1,25 @@ +{ + "source": "http://www.geonames.org/FJ/administrative-division-fiji.html", + "country": "Fiji", + "subdivisions": { + "01": "Ba Province", + "02": "Bua Province", + "03": "Cakaudrove Province", + "04": "Kadavu Province", + "05": "Lau Province", + "06": "Lomaiviti Province", + "07": "Mathuata Province", + "08": "Nandronga and Navosa Province", + "09": "Naitasiri Province", + "10": "Namosi Province", + "11": "Ra Province", + "12": "Rewa Province", + "13": "Serua Province", + "14": "Tailevu Province", + "C": "Central Division", + "E": "Eastern Division", + "N": "Northern Division", + "R": "Rotuma", + "W": "Western Division" + } +} diff --git a/data/iso_3166-2/FK.json b/data/iso_3166-2/FK.json new file mode 100644 index 00000000..9a404213 --- /dev/null +++ b/data/iso_3166-2/FK.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/FK/administrative-division-falkland-islands.html", + "country": "Falkland Islands", + "subdivisions": [] +} diff --git a/data/iso_3166-2/FM.json b/data/iso_3166-2/FM.json new file mode 100644 index 00000000..b1c6e5c2 --- /dev/null +++ b/data/iso_3166-2/FM.json @@ -0,0 +1,10 @@ +{ + "source": "http://www.geonames.org/FM/administrative-division-micronesia.html", + "country": "Micronesia", + "subdivisions": { + "KSA": "Kosrae", + "PNI": "Pohnpei", + "TRK": "Chuuk", + "YAP": "Yap" + } +} diff --git a/data/iso_3166-2/FO.json b/data/iso_3166-2/FO.json new file mode 100644 index 00000000..df0e10ee --- /dev/null +++ b/data/iso_3166-2/FO.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/FO/administrative-division-faroe-islands.html", + "country": "Faroe Islands", + "subdivisions": [] +} diff --git a/data/iso_3166-2/FR.json b/data/iso_3166-2/FR.json new file mode 100644 index 00000000..375632d9 --- /dev/null +++ b/data/iso_3166-2/FR.json @@ -0,0 +1,124 @@ +{ + "source": "http://www.geonames.org/FR/administrative-division-france.html", + "country": "France", + "subdivisions": { + "01": "Ain", + "02": "Aisne", + "03": "Allier", + "04": "Alpes-de-Haute-Provence", + "05": "Hautes-Alpes", + "06": "Alpes-Maritimes", + "07": "Ardèche", + "08": "Ardennes", + "09": "Ariège", + "10": "Aube", + "11": "Aude", + "12": "Aveyron", + "13": "Bouches-du-Rhône", + "14": "Calvados", + "15": "Cantal", + "16": "Charente", + "17": "Charente-Maritime", + "18": "Cher", + "19": "Corrèze", + "21": "Côte-d'Or", + "22": "Côtes-d'Armor", + "23": "Creuse", + "24": "Dordogne", + "25": "Doubs", + "26": "Drôme", + "27": "Eure", + "28": "Eure-et-Loir", + "29": "Finistère", + "2A": "Corse-du-Sud", + "2B": "Haute-Corse", + "30": "Gard", + "31": "Haute-Garonne", + "32": "Gers", + "33": "Gironde", + "34": "Hérault", + "35": "Ille-et-Vilaine", + "36": "Indre", + "37": "Indre-et-Loire", + "38": "Isère", + "39": "Jura", + "40": "Landes", + "41": "Loir-et-Cher", + "42": "Loire", + "43": "Haute-Loire", + "44": "Loire-Atlantique", + "45": "Loiret", + "46": "Lot", + "47": "Lot-et-Garonne", + "48": "Lozère", + "49": "Maine-et-Loire", + "50": "Manche", + "51": "Marne", + "52": "Haute-Marne", + "53": "Mayenne", + "54": "Meurthe-et-Moselle", + "55": "Meuse", + "56": "Morbihan", + "57": "Moselle", + "58": "Nièvre", + "59": "Nord", + "60": "Oise", + "61": "Orne", + "62": "Pas-de-Calais", + "63": "Puy-de-Dôme", + "64": "Pyrénées-Atlantiques", + "65": "Hautes-Pyrénées", + "66": "Pyrénées-Orientales", + "67": "Bas-Rhin", + "68": "Haut-Rhin", + "69": "Rhône", + "70": "Haute-Saône", + "71": "Saône-et-Loire", + "72": "Sarthe", + "73": "Savoie", + "74": "Haute-Savoie", + "75": "Paris", + "76": "Seine-Maritime", + "77": "Seine-et-Marne", + "78": "Yvelines", + "79": "Deux-Sèvres", + "80": "Somme", + "81": "Tarn", + "82": "Tarn-et-Garonne", + "83": "Var", + "84": "Vaucluse", + "85": "Vendée", + "86": "Vienne", + "87": "Haute-Vienne", + "88": "Vosges", + "89": "Yonne", + "90": "Territoire de Belfort", + "91": "Essonne", + "92": "Hauts-de-Seine", + "93": "Seine-Saint-Denis", + "94": "Val-de-Marne", + "95": "Val-d'Oise", + "ARA": "Auvergne-Rhône-Alpes", + "BFC": "Bourgogne-Franche-Comté", + "BL": "Saint Barthélemy (see also separate ISO 3166-1 entry under BL)", + "BRE": "Bretagne", + "COR": "Corse", + "CP": "Clipperton", + "CVL": "Centre-Val de Loire", + "GES": "Grand Est", + "HDF": "Hauts-de-France", + "IDF": "Île-de-France", + "MF": "Saint Martin (see also separate ISO 3166-1 entry under MF)", + "NAQ": "Nouvelle-Aquitaine", + "NC": "Nouvelle-Calédonie (see also separate ISO 3166-1 entry under NC)", + "NOR": "Normandy", + "OCC": "Occitanie", + "PAC": "Provence-Alpes-Côte d'Azur", + "PDL": "Pays de la Loire", + "PF": "Polynésie française (see also separate ISO 3166-1 entry under PF)", + "PM": "Saint-Pierre-et-Miquelon (see also separate ISO 3166-1 entry under PM)", + "TF": "Terres Australes Françaises (see also separate ISO 3166-1 entry under TF)", + "WF": "Wallis et Futuna (see also separate ISO 3166-1 entry under WF)", + "YT": "Mayotte (see also separate ISO 3166-1 entry under YT)" + } +} diff --git a/data/iso_3166-2/GA.json b/data/iso_3166-2/GA.json new file mode 100644 index 00000000..b4a72482 --- /dev/null +++ b/data/iso_3166-2/GA.json @@ -0,0 +1,15 @@ +{ + "source": "http://www.geonames.org/GA/administrative-division-gabon.html", + "country": "Gabon", + "subdivisions": { + "1": "Estuaire", + "2": "Haut-Ogooue", + "3": "Moyen-Ogooue", + "4": "Ngounie", + "5": "Nyanga", + "6": "Ogooue-Ivindo", + "7": "Ogooue-Lolo", + "8": "Ogooue-Maritime", + "9": "Woleu-Ntem" + } +} diff --git a/data/iso_3166-2/GB.json b/data/iso_3166-2/GB.json new file mode 100644 index 00000000..24cd95f1 --- /dev/null +++ b/data/iso_3166-2/GB.json @@ -0,0 +1,227 @@ +{ + "source": "http://www.geonames.org/GB/administrative-division-united-kingdom.html", + "country": "United Kingdom", + "subdivisions": { + "ABC": "Armagh City Banbridge and Craigavon", + "ABD": "Aberdeenshire", + "ABE": "Aberdeen", + "AGB": "Argyll and Bute", + "AGY": "Isle of Anglesey", + "AND": "Ards and North Down", + "ANN": "Antrim and Newtownabbey", + "ANS": "Angus", + "BAS": "Bath and North East Somerset", + "BBD": "Blackburn with Darwen", + "BDF": "Bedford", + "BDG": "Barking and Dagenham", + "BEN": "Brent", + "BEX": "Bexley", + "BFS": "Belfast", + "BGE": "Bridgend", + "BGW": "Blaenau Gwent", + "BIR": "Birmingham", + "BKM": "Buckinghamshire", + "BMH": "Bournemouth", + "BNE": "Barnet", + "BNH": "Brighton and Hove", + "BNS": "Barnsley", + "BOL": "Bolton", + "BPL": "Blackpool", + "BRC": "Bracknell Forest", + "BRD": "Bradford", + "BRY": "Bromley", + "BST": "Bristol City of", + "BUR": "Bury", + "CAM": "Cambridgeshire", + "CAY": "Caerphilly", + "CBF": "Central Bedfordshire", + "CCG": "Causeway Coast and Glens", + "CGN": "Ceredigion", + "CHE": "Cheshire East", + "CHW": "Cheshire West and Chester", + "CLD": "Calderdale", + "CLK": "Clackmannanshire", + "CMA": "Cumbria", + "CMD": "Camden", + "CMN": "Carmarthenshire", + "CON": "Cornwall", + "COV": "Coventry (West Midlands district)", + "CRF": "Cardiff", + "CRY": "Croydon", + "CWY": "Conwy", + "DAL": "Darlington", + "DBY": "Derbyshire", + "DEN": "Denbighshire", + "DER": "Derby", + "DEV": "Devon", + "DGY": "Dumfries and Galloway", + "DNC": "Doncaster", + "DND": "Dundee", + "DOR": "Dorset", + "DRS": "Derry City and Strabane", + "DUD": "Dudley (West Midlands district)", + "DUR": "Durham", + "EAL": "Ealing", + "EAY": "East Ayrshire", + "EDH": "Edinburgh", + "EDU": "East Dunbartonshire", + "ELN": "East Lothian", + "ELS": "Eilean Siar", + "ENF": "Enfield", + "ENG": "England", + "ERW": "East Renfrewshire", + "ERY": "East Riding of Yorkshire", + "ESS": "Essex", + "ESX": "East Sussex", + "FAL": "Falkirk", + "FIF": "Fife", + "FLN": "Flintshire", + "FMO": "Fermanagh and Omagh", + "GAT": "Gateshead (Tyne", + "GLG": "Glasgow", + "GLS": "Gloucestershire", + "GRE": "Greenwich", + "GWN": "Gwynedd", + "HAL": "Halton", + "HAM": "Hampshire", + "HAV": "Havering", + "HCK": "Hackney", + "HEF": "Herefordshire County of", + "HIL": "Hillingdon", + "HLD": "Highland", + "HMF": "Hammersmith and Fulham", + "HNS": "Hounslow", + "HPL": "Hartlepool", + "HRT": "Hertfordshire", + "HRW": "Harrow", + "HRY": "Haringey", + "IOS": "Isles of Scilly", + "IOW": "Isle of Wight", + "ISL": "Islington", + "IVC": "Inverclyde", + "KEC": "Kensington and Chelsea", + "KEN": "Kent", + "KHL": "Kingston upon Hull City of", + "KIR": "Kirklees", + "KTT": "Kingston upon Thames", + "KWL": "Knowsley", + "LAN": "Lancashire", + "LBC": "Lisburn and Castlereagh", + "LBH": "Lambeth", + "LCE": "Leicester", + "LDS": "Leeds", + "LEC": "Leicestershire", + "LEW": "Lewisham", + "LIN": "Lincolnshire", + "LIV": "Liverpool", + "LND": "London City of", + "LUT": "Luton", + "MAN": "Manchester", + "MDB": "Middlesbrough", + "MDW": "Medway", + "MEA": "Mid and East Antrim", + "MIK": "Milton Keynes", + "MLN": "Midlothian", + "MON": "Monmouthshire", + "MRT": "Merton", + "MRY": "Moray", + "MTY": "Merthyr Tydfil", + "MUL": "Mid Ulster", + "NAY": "North Ayrshire", + "NBL": "Northumberland", + "NEL": "North East Lincolnshire", + "NET": "Newcastle upon Tyne", + "NFK": "Norfolk", + "NGM": "Nottingham", + "NIR": "Northern Ireland", + "NLK": "North Lanarkshire", + "NLN": "North Lincolnshire", + "NMD": "Newry Mourne and Down", + "NSM": "North Somerset", + "NTH": "Northamptonshire", + "NTL": "Neath Port Talbot", + "NTT": "Nottinghamshire", + "NTY": "North Tyneside", + "NWM": "Newham", + "NWP": "Newport", + "NYK": "North Yorkshire", + "OLD": "Oldham", + "ORK": "Orkney Islands", + "OXF": "Oxfordshire", + "PEM": "Pembrokeshire", + "PKN": "Perth and Kinross", + "PLY": "Plymouth", + "POL": "Poole", + "POR": "Portsmouth", + "POW": "Powys", + "PTE": "Peterborough", + "RCC": "Redcar and Cleveland", + "RCH": "Rochdale", + "RCT": "Rhondda Cynon Taf", + "RDB": "Redbridge", + "RDG": "Reading", + "RFW": "Renfrewshire", + "RIC": "Richmond upon Thames", + "ROT": "Rotherham", + "RUT": "Rutland", + "SAW": "Sandwell", + "SAY": "South Ayrshire", + "SCB": "Scottish Borders The", + "SCT": "Scotland", + "SFK": "Suffolk", + "SFT": "Sefton", + "SGC": "South Gloucestershire", + "SHF": "Sheffield", + "SHN": "St Helens", + "SHR": "Shropshire", + "SKP": "Stockport", + "SLF": "Salford", + "SLG": "Slough", + "SLK": "South Lanarkshire", + "SND": "Sunderland", + "SOL": "Solihull", + "SOM": "Somerset", + "SOS": "Southend-on-Sea", + "SRY": "Surrey", + "STE": "Stoke-on-Trent", + "STG": "Stirling", + "STH": "Southampton", + "STN": "Sutton", + "STS": "Staffordshire", + "STT": "Stockton-on-Tees", + "STY": "South Tyneside", + "SWA": "Swansea", + "SWD": "Swindon", + "SWK": "Southwark", + "TAM": "Tameside", + "TFW": "Telford and Wrekin", + "THR": "Thurrock", + "TOB": "Torbay", + "TOF": "Torfaen", + "TRF": "Trafford", + "TWH": "Tower Hamlets", + "VGL": "Vale of Glamorgan", + "WAR": "Warwickshire", + "WBK": "West Berkshire", + "WDU": "West Dunbartonshire", + "WFT": "Waltham Forest", + "WGN": "Wigan", + "WIL": "Wiltshire", + "WKF": "Wakefield", + "WLL": "Walsall", + "WLN": "West Lothian", + "WLS": "Wales", + "WLV": "Wolverhampton", + "WND": "Wandsworth", + "WNM": "Windsor and Maidenhead", + "WOK": "Wokingham", + "WOR": "Worcestershire", + "WRL": "Wirral", + "WRT": "Warrington", + "WRX": "Wrexham", + "WSM": "Westminster", + "WSX": "West Sussex", + "YOR": "York", + "ZET": "Shetland Islands" + } +} diff --git a/data/iso_3166-2/GD.json b/data/iso_3166-2/GD.json new file mode 100644 index 00000000..4825c109 --- /dev/null +++ b/data/iso_3166-2/GD.json @@ -0,0 +1,13 @@ +{ + "source": "http://www.geonames.org/GD/administrative-division-grenada.html", + "country": "Grenada", + "subdivisions": { + "01": "Saint Andrew", + "02": "Saint David", + "03": "Saint George", + "04": "Saint John", + "05": "Saint Mark", + "06": "Saint Patrick", + "10": "Southern Grenadine Islands" + } +} diff --git a/data/iso_3166-2/GE.json b/data/iso_3166-2/GE.json new file mode 100644 index 00000000..7a1c2a42 --- /dev/null +++ b/data/iso_3166-2/GE.json @@ -0,0 +1,18 @@ +{ + "source": "http://www.geonames.org/GE/administrative-division-georgia.html", + "country": "Georgia", + "subdivisions": { + "AB": "Abkhazia", + "AJ": "Ajaria", + "GU": "Guria", + "IM": "Imereti", + "KA": "Kakheti", + "KK": "Kvemo Kartli", + "MM": "Mtskheta-Mtianeti", + "RL": "Racha Lechkhumi and Kvemo Svaneti", + "SJ": "Samtskhe-Javakheti", + "SK": "Shida Kartli", + "SZ": "Samegrelo-Zemo Svaneti", + "TB": "Tbilisi" + } +} diff --git a/data/iso_3166-2/GF.json b/data/iso_3166-2/GF.json new file mode 100644 index 00000000..14869406 --- /dev/null +++ b/data/iso_3166-2/GF.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/GF/administrative-division-french-guiana.html", + "country": "French Guiana", + "subdivisions": [] +} diff --git a/data/iso_3166-2/GG.json b/data/iso_3166-2/GG.json new file mode 100644 index 00000000..2b925250 --- /dev/null +++ b/data/iso_3166-2/GG.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/GG/administrative-division-guernsey.html", + "country": "Guernsey", + "subdivisions": [] +} diff --git a/data/iso_3166-2/GH.json b/data/iso_3166-2/GH.json new file mode 100644 index 00000000..a70b9cc8 --- /dev/null +++ b/data/iso_3166-2/GH.json @@ -0,0 +1,16 @@ +{ + "source": "http://www.geonames.org/GH/administrative-division-ghana.html", + "country": "Ghana", + "subdivisions": { + "AA": "Greater Accra Region", + "AH": "Ashanti Region", + "BA": "Brong-Ahafo Region", + "CP": "Central Region", + "EP": "Eastern Region", + "NP": "Northern Region", + "TV": "Volta Region", + "UE": "Upper East Region", + "UW": "Upper West Region", + "WP": "Western Region" + } +} diff --git a/data/iso_3166-2/GI.json b/data/iso_3166-2/GI.json new file mode 100644 index 00000000..dc340d34 --- /dev/null +++ b/data/iso_3166-2/GI.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/GI/administrative-division-gibraltar.html", + "country": "Gibraltar", + "subdivisions": [] +} diff --git a/data/iso_3166-2/GL.json b/data/iso_3166-2/GL.json new file mode 100644 index 00000000..60950300 --- /dev/null +++ b/data/iso_3166-2/GL.json @@ -0,0 +1,11 @@ +{ + "source": "http://www.geonames.org/GL/administrative-division-greenland.html", + "country": "Greenland", + "subdivisions": { + "AV": "Avannaata", + "KU": "Kujalleq", + "QE": "Qeqqata", + "QT": "Qeqertalik", + "SM": "Sermersooq" + } +} diff --git a/data/iso_3166-2/GM.json b/data/iso_3166-2/GM.json new file mode 100644 index 00000000..62d4a3af --- /dev/null +++ b/data/iso_3166-2/GM.json @@ -0,0 +1,12 @@ +{ + "source": "http://www.geonames.org/GM/administrative-division-gambia.html", + "country": "Gambia", + "subdivisions": { + "B": "Banjul", + "L": "Lower River", + "M": "Central River", + "N": "North Bank", + "U": "Upper River", + "W": "Western" + } +} diff --git a/data/iso_3166-2/GN.json b/data/iso_3166-2/GN.json new file mode 100644 index 00000000..d0ad670d --- /dev/null +++ b/data/iso_3166-2/GN.json @@ -0,0 +1,47 @@ +{ + "source": "http://www.geonames.org/GN/administrative-division-guinea.html", + "country": "Guinea", + "subdivisions": { + "B": "Boké", + "BE": "Beyla", + "BF": "Boffa", + "BK": "Boke", + "C": "Conakry", + "CO": "Coyah", + "D": "Kindia", + "DB": "Dabola", + "DI": "Dinguiraye", + "DL": "Dalaba", + "DU": "Dubreka", + "F": "Faranah", + "FA": "Faranah", + "FO": "Forecariah", + "FR": "Fria", + "GA": "Gaoual", + "GU": "Gueckedou", + "K": "Kankan", + "KA": "Kankan", + "KB": "Koubia", + "KD": "Kindia", + "KE": "Kerouane", + "KN": "Koundara", + "KO": "Kouroussa", + "KS": "Kissidougou", + "L": "Labé", + "LA": "Labe", + "LE": "Lelouma", + "LO": "Lola", + "M": "Mamou", + "MC": "Macenta", + "MD": "Mandiana", + "ML": "Mali", + "MM": "Mamou", + "N": "Nzérékoré", + "NZ": "Nzerekore", + "PI": "Pita", + "SI": "Siguiri", + "TE": "Telimele", + "TO": "Tougue", + "YO": "Yomou" + } +} diff --git a/data/iso_3166-2/GP.json b/data/iso_3166-2/GP.json new file mode 100644 index 00000000..e2e45a87 --- /dev/null +++ b/data/iso_3166-2/GP.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/GP/administrative-division-guadeloupe.html", + "country": "Guadeloupe", + "subdivisions": [] +} diff --git a/data/iso_3166-2/GQ.json b/data/iso_3166-2/GQ.json new file mode 100644 index 00000000..7bbec395 --- /dev/null +++ b/data/iso_3166-2/GQ.json @@ -0,0 +1,15 @@ +{ + "source": "http://www.geonames.org/GQ/administrative-division-equatorial-guinea.html", + "country": "Equatorial Guinea", + "subdivisions": { + "AN": "Provincia Annobon", + "BN": "Provincia Bioko Norte", + "BS": "Provincia Bioko Sur", + "C": "Región Continental", + "CS": "Provincia Centro Sur", + "I": "Región Insular", + "KN": "Provincia Kie-Ntem", + "LI": "Provincia Litoral", + "WN": "Provincia Wele-Nzas" + } +} diff --git a/data/iso_3166-2/GR.json b/data/iso_3166-2/GR.json new file mode 100644 index 00000000..e5b6d3f2 --- /dev/null +++ b/data/iso_3166-2/GR.json @@ -0,0 +1,71 @@ +{ + "source": "http://www.geonames.org/GR/administrative-division-greece.html", + "country": "Greece", + "subdivisions": { + "01": "Nomós Aitolías kai Akarnanías", + "03": "Nomós Voiotías", + "04": "Nomós Evvoías", + "05": "Nomós Evrytanías", + "06": "Nomós Fthiótidos", + "07": "Nomós Fokídos", + "11": "Nomós Argolídos", + "12": "Nomós Arkadías", + "13": "Nomós Achaḯas", + "14": "Nomós Ileías", + "15": "Nomós Korinthías", + "16": "Nomós Lakonías", + "17": "Nomós Messinías", + "21": "Nomós Zakýnthou", + "22": "Nomós Kerkýras", + "23": "Nomós Kefallinías", + "24": "Nomós Lefkádas", + "31": "Nomós Ártis", + "32": "Nomós Thesprotías", + "33": "Nomós Ioannínon", + "34": "Nomós Prevézis", + "41": "Nomós Kardhítsas", + "42": "Nomós Larísis", + "43": "Nomós Magnisías", + "44": "Nomós Trikálon", + "51": "Nomós Grevenón", + "52": "Nomós Drámas", + "53": "Nomós Imathías", + "54": "Nomós Thessaloníkis", + "55": "Nomós Kaválas", + "56": "Nomós Kastoriás", + "57": "Nomós Kilkís", + "58": "Nomós Kozánis", + "59": "Nomós Péllis", + "61": "Nomós Pierías", + "62": "Nomós Serrón", + "63": "Nomós Florínis", + "64": "Nomós Chalkidikís", + "69": "Agio Oros", + "71": "Nomós Évrou", + "72": "Nomós Xánthis", + "73": "Nomós Rodópis", + "81": "Nomós Dodekanísou", + "82": "Nomós Kykládon", + "83": "Nomós Lésvou", + "84": "Nomós Sámou", + "85": "Nomós Chíou", + "91": "Nomós Irakleíou", + "92": "Nomós Lasithíou", + "93": "Nomós Rethýmnis", + "94": "Nomós Chaniás", + "A": "Anatoliki Makedonia kai Thraki", + "A1": "Nomós Attikís", + "B": "Kentriki Makedonia", + "C": "Dytiki Makedonia", + "D": "Ipeiros", + "E": "Thessalia", + "F": "Ionia Nisia", + "G": "Dytiki Ellada", + "H": "Sterea Ellada", + "I": "Attiki", + "J": "Peloponnisos", + "K": "Voreio Aigaio", + "L": "Notio Aigaio", + "M": "Kriti" + } +} diff --git a/data/iso_3166-2/GS.json b/data/iso_3166-2/GS.json new file mode 100644 index 00000000..9fcb0bbd --- /dev/null +++ b/data/iso_3166-2/GS.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/GS/administrative-division-south-georgia-and-the-south-sandwich-islands.html", + "country": "South Georgia and the South Sandwich Islands", + "subdivisions": [] +} diff --git a/data/iso_3166-2/GT.json b/data/iso_3166-2/GT.json new file mode 100644 index 00000000..e5f8d7be --- /dev/null +++ b/data/iso_3166-2/GT.json @@ -0,0 +1,28 @@ +{ + "source": "http://www.geonames.org/GT/administrative-division-guatemala.html", + "country": "Guatemala", + "subdivisions": { + "AV": "Alta Verapaz", + "BV": "Baja Verapaz", + "CM": "Chimaltenango", + "CQ": "Chiquimula", + "ES": "Escuintla", + "GU": "Guatemala", + "HU": "Huehuetenango", + "IZ": "Izabal", + "JA": "Jalapa", + "JU": "Jutiapa", + "PE": "El Peten", + "PR": "El Progreso", + "QC": "El Quiche", + "QZ": "Quetzaltenango", + "RE": "Retalhuleu", + "SA": "Sacatepequez", + "SM": "San Marcos", + "SO": "Solola", + "SR": "Santa Rosa", + "SU": "Suchitepequez", + "TO": "Totonicapan", + "ZA": "Zacapa" + } +} diff --git a/data/iso_3166-2/GU.json b/data/iso_3166-2/GU.json new file mode 100644 index 00000000..461d6a27 --- /dev/null +++ b/data/iso_3166-2/GU.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/GU/administrative-division-guam.html", + "country": "Guam", + "subdivisions": [] +} diff --git a/data/iso_3166-2/GW.json b/data/iso_3166-2/GW.json new file mode 100644 index 00000000..a922e77e --- /dev/null +++ b/data/iso_3166-2/GW.json @@ -0,0 +1,18 @@ +{ + "source": "http://www.geonames.org/GW/administrative-division-guinea-bissau.html", + "country": "Guinea-Bissau", + "subdivisions": { + "BA": "Bafata Region", + "BL": "Bolama Region", + "BM": "Biombo Region", + "BS": "Bissau Region", + "CA": "Cacheu Region", + "GA": "Gabu Region", + "L": "Leste", + "N": "Norte", + "OI": "Oio Region", + "QU": "Quinara Region", + "S": "Sul", + "TO": "Tombali Region" + } +} diff --git a/data/iso_3166-2/GY.json b/data/iso_3166-2/GY.json new file mode 100644 index 00000000..9ff647cd --- /dev/null +++ b/data/iso_3166-2/GY.json @@ -0,0 +1,16 @@ +{ + "source": "http://www.geonames.org/GY/administrative-division-guyana.html", + "country": "Guyana", + "subdivisions": { + "BA": "Barima-Waini", + "CU": "Cuyuni-Mazaruni", + "DE": "Demerara-Mahaica", + "EB": "East Berbice-Corentyne", + "ES": "Essequibo Islands-West Demerara", + "MA": "Mahaica-Berbice", + "PM": "Pomeroon-Supenaam", + "PT": "Potaro-Siparuni", + "UD": "Upper Demerara-Berbice", + "UT": "Upper Takutu-Upper Essequibo" + } +} diff --git a/data/iso_3166-2/HK.json b/data/iso_3166-2/HK.json new file mode 100644 index 00000000..2f6a72c2 --- /dev/null +++ b/data/iso_3166-2/HK.json @@ -0,0 +1,24 @@ +{ + "source": "http://www.geonames.org/HK/administrative-division-hong-kong.html", + "country": "Hong Kong", + "subdivisions": { + "HCW": "Central and Western Hong Kong Island", + "HEA": "Eastern Hong Kong Island", + "HSO": "Southern Hong Kong Island", + "HWC": "Wan Chai Hong Kong Island", + "KKC": "Kowloon City Kowloon", + "KKT": "Kwun Tong Kowloon", + "KSS": "Sham Shui Po Kowloon", + "KWT": "Wong Tai Sin Kowloon", + "KYT": "Yau Tsim Mong Kowloon", + "NIS": "Islands New Territories", + "NKT": "Kwai Tsing New Territories", + "NNO": "North New Territories", + "NSK": "Sai Kung New Territories", + "NST": "Sha Tin New Territories", + "NTM": "Tuen Mun New Territories", + "NTP": "Tai Po New Territories", + "NTW": "Tsuen Wan New Territories", + "NYL": "Yuen Long New Territories" + } +} diff --git a/data/iso_3166-2/HM.json b/data/iso_3166-2/HM.json new file mode 100644 index 00000000..e05fa778 --- /dev/null +++ b/data/iso_3166-2/HM.json @@ -0,0 +1,10 @@ +{ + "source": "http://www.geonames.org/HM/administrative-division-heard-island-and-mcdonald-islands.html", + "country": "Heard Island and McDonald Islands", + "subdivisions": { + "F": "Flat Island", + "H": "Heard Island", + "M": "McDonald Island", + "S": "Shag Island" + } +} diff --git a/data/iso_3166-2/HN.json b/data/iso_3166-2/HN.json new file mode 100644 index 00000000..9b277a3b --- /dev/null +++ b/data/iso_3166-2/HN.json @@ -0,0 +1,24 @@ +{ + "source": "http://www.geonames.org/HN/administrative-division-honduras.html", + "country": "Honduras", + "subdivisions": { + "AT": "Atlantida", + "CH": "Choluteca", + "CL": "Colon", + "CM": "Comayagua", + "CP": "Copan", + "CR": "Cortes", + "EP": "El Paraiso", + "FM": "Francisco Morazan", + "GD": "Gracias a Dios", + "IB": "Islas de la Bahia (Bay Islands)", + "IN": "Intibuca", + "LE": "Lempira", + "LP": "La Paz", + "OC": "Ocotepeque", + "OL": "Olancho", + "SB": "Santa Barbara", + "VA": "Valle", + "YO": "Yoro" + } +} diff --git a/data/iso_3166-2/HR.json b/data/iso_3166-2/HR.json new file mode 100644 index 00000000..77a1184a --- /dev/null +++ b/data/iso_3166-2/HR.json @@ -0,0 +1,27 @@ +{ + "source": "http://www.geonames.org/HR/administrative-division-croatia.html", + "country": "Croatia", + "subdivisions": { + "01": "Zagreb county", + "02": "Krapina-Zagorje county", + "03": "Sisak-Moslavina county", + "04": "Karlovac county", + "05": "Varazdin county", + "06": "Koprivnica-Krizevci county", + "07": "Bjelovar-Bilogora county", + "08": "Primorje-Gorski Kotar county", + "09": "Lika-Senj county", + "10": "Virovitica-Podravina county", + "11": "Pozega-Slavonia county", + "12": "Brod-Posavina county", + "13": "Zadar county", + "14": "Osijek-Baranja county", + "15": "Sibenik-Knin county", + "16": "Vukovar-Srijem county", + "17": "Split-Dalmatia county", + "18": "Istria county", + "19": "Dubrovnik-Neretva county", + "20": "Medjimurje county", + "21": "Zagreb (city)" + } +} diff --git a/data/iso_3166-2/HT.json b/data/iso_3166-2/HT.json new file mode 100644 index 00000000..0be10246 --- /dev/null +++ b/data/iso_3166-2/HT.json @@ -0,0 +1,16 @@ +{ + "source": "http://www.geonames.org/HT/administrative-division-haiti.html", + "country": "Haiti", + "subdivisions": { + "AR": "Artibonite", + "CE": "Centre", + "GA": "Grand'Anse", + "ND": "Nord", + "NE": "Nord-Est", + "NI": "Nippes", + "NO": "Nord-Ouest", + "OU": "Ouest", + "SD": "Sud", + "SE": "Sud-Est" + } +} diff --git a/data/iso_3166-2/HU.json b/data/iso_3166-2/HU.json new file mode 100644 index 00000000..56e49dd7 --- /dev/null +++ b/data/iso_3166-2/HU.json @@ -0,0 +1,49 @@ +{ + "source": "http://www.geonames.org/HU/administrative-division-hungary.html", + "country": "Hungary", + "subdivisions": { + "BA": "Baranya megye", + "BC": "Békéscsaba", + "BE": "Békés megye", + "BK": "Bács-Kiskun megye", + "BU": "Budapest főváros", + "BZ": "Borsod-Abaúj-Zemplén megye", + "CS": "Csongrád megye", + "DE": "Debrecen", + "DU": "Dunaújváros", + "EG": "Eger", + "ER": "Erd", + "FE": "Fejér megye", + "GS": "Győr-Moson-Sopron megye", + "GY": "Győr", + "HB": "Hajdú-Bihar megye", + "HE": "Heves megye", + "HV": "Hódmezővásárhely", + "JN": "Jász-Nagykun-Szolnok megye", + "KE": "Komárom-Esztergom megye", + "KM": "Kecskemét", + "KV": "Kaposvár", + "MI": "Miskolc", + "NK": "Nagykanizsa", + "NO": "Nógrád megye", + "NY": "Nyíregyháza", + "PE": "Pest megye", + "PS": "Pécs", + "SD": "Szeged", + "SF": "Székesfehérvár", + "SH": "Szombathely", + "SK": "Szolnok", + "SN": "Sopron", + "SO": "Somogy megye", + "SS": "Szekszárd", + "ST": "Salgótarján", + "SZ": "Szabolcs-Szatmár-Bereg megye", + "TB": "Tatabánya", + "TO": "Tolna megye", + "VA": "Vas megye", + "VE": "Veszprém megye", + "VM": "Veszprém", + "ZA": "Zala megye", + "ZE": "Zalaegerszeg" + } +} diff --git a/data/iso_3166-2/ID.json b/data/iso_3166-2/ID.json new file mode 100644 index 00000000..439a893c --- /dev/null +++ b/data/iso_3166-2/ID.json @@ -0,0 +1,47 @@ +{ + "source": "http://www.geonames.org/ID/administrative-division-indonesia.html", + "country": "Indonesia", + "subdivisions": { + "AC": "Aceh", + "BA": "Bali", + "BB": "Bangka-Belitung", + "BE": "Bengkulu", + "BT": "Banten", + "GO": "Gorontalo", + "JA": "Jambi", + "JB": "Jawa Barat", + "JI": "Jawa Timur", + "JK": "Jakarta Raya", + "JT": "Jawa Tengah", + "JW": "Java", + "KA": "Kalimantan", + "KB": "Kalimantan Barat", + "KI": "Kalimantan Timur", + "KR": "Kepulauan Riau", + "KS": "Kalimantan Selatan", + "KT": "Kalimantan Tengah", + "KU": "Kalimantan Utara", + "LA": "Lampung", + "MA": "Maluku", + "ML": "Maluku", + "MU": "Maluku Utara", + "NB": "Nusa Tenggara Barat", + "NT": "Nusa Tenggara Timur", + "NU": "Nusa Tenggara", + "PA": "Papua", + "PB": "Papua Barat", + "PP": "Papua", + "RI": "Riau", + "SA": "Sulawesi Utara", + "SB": "Sumatera Barat", + "SG": "Sulawesi Tenggara", + "SL": "Sulawesi", + "SM": "Sumatera", + "SN": "Sulawesi Selatan", + "SR": "Sulawesi Barat", + "SS": "Sumatera Selatan", + "ST": "Sulawesi Tengah", + "SU": "Sumatera Utara", + "YO": "Yogyakarta" + } +} diff --git a/data/iso_3166-2/IE.json b/data/iso_3166-2/IE.json new file mode 100644 index 00000000..a8a85b8d --- /dev/null +++ b/data/iso_3166-2/IE.json @@ -0,0 +1,35 @@ +{ + "source": "http://www.geonames.org/IE/administrative-division-ireland.html", + "country": "Ireland", + "subdivisions": { + "C": "Connaught", + "CE": "Clare", + "CN": "Cavan", + "CO": "Cork", + "CW": "Carlow", + "DL": "Donegal", + "G": "Galway", + "KE": "Kildare", + "KK": "Kilkenny", + "KY": "Kerry", + "L": "Leinster", + "LD": "Longford", + "LH": "Louth", + "LK": "Limerick, City and County", + "LM": "Leitrim", + "LS": "Laois", + "M": "Munster", + "MH": "Meath", + "MN": "Monaghan", + "MO": "Mayo", + "OY": "Offaly", + "RN": "Roscommon", + "SO": "Sligo", + "TA": "Tipperary", + "U": "Ulster", + "WD": "Waterford, City and County", + "WH": "Westmeath", + "WW": "Wicklow", + "WX": "Wexford" + } +} diff --git a/data/iso_3166-2/IL.json b/data/iso_3166-2/IL.json new file mode 100644 index 00000000..24e657ab --- /dev/null +++ b/data/iso_3166-2/IL.json @@ -0,0 +1,12 @@ +{ + "source": "http://www.geonames.org/IL/administrative-division-israel.html", + "country": "Israel", + "subdivisions": { + "D": "Southern", + "HA": "Haifa", + "JM": "Jerusalem", + "M": "Central", + "TA": "Tel Aviv", + "Z": "Northern" + } +} diff --git a/data/iso_3166-2/IM.json b/data/iso_3166-2/IM.json new file mode 100644 index 00000000..50e4abb6 --- /dev/null +++ b/data/iso_3166-2/IM.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/IM/administrative-division-isle-of-man.html", + "country": "Isle of Man", + "subdivisions": [] +} diff --git a/data/iso_3166-2/IN.json b/data/iso_3166-2/IN.json new file mode 100644 index 00000000..ce7119b5 --- /dev/null +++ b/data/iso_3166-2/IN.json @@ -0,0 +1,42 @@ +{ + "source": "http://www.geonames.org/IN/administrative-division-india.html", + "country": "India", + "subdivisions": { + "AN": "Andaman and Nicobar Islands", + "AP": "Andhra Pradesh", + "AR": "Arunachal Pradesh", + "AS": "Assam", + "BR": "Bihar", + "CH": "Chandigarh", + "CT": "Chhattisgarh", + "DD": "Daman and Diu", + "DL": "Delhi", + "DN": "Dadra and Nagar Haveli", + "GA": "Goa", + "GJ": "Gujarat", + "HP": "Himachal Pradesh", + "HR": "Haryana", + "JH": "Jharkhand", + "JK": "Jammu and Kashmir", + "KA": "Karnataka", + "KL": "Kerala", + "LD": "Lakshadweep", + "MH": "Maharashtra", + "ML": "Meghalaya", + "MN": "Manipur", + "MP": "Madhya Pradesh", + "MZ": "Mizoram", + "NL": "Nagaland", + "OR": "Orissa", + "PB": "Punjab", + "PY": "Pondicherry", + "RJ": "Rajasthan", + "SK": "Sikkim", + "TG": "Telangana", + "TN": "Tamil Nadu", + "TR": "Tripura", + "UP": "Uttar Pradesh", + "UT": "Uttarakhand", + "WB": "West Bengal" + } +} diff --git a/data/iso_3166-2/IO.json b/data/iso_3166-2/IO.json new file mode 100644 index 00000000..d7aca555 --- /dev/null +++ b/data/iso_3166-2/IO.json @@ -0,0 +1,14 @@ +{ + "source": "http://www.geonames.org/IO/administrative-division-british-indian-ocean-territory.html", + "country": "British Indian Ocean Territory", + "subdivisions": { + "DG": "Diego Garcia", + "DI": "Danger Island", + "EA": "Eagle Islands", + "EG": "Egmont Islands", + "NI": "Nelsons Island", + "PB": "Peros Banhos", + "SI": "Salomon Islands", + "TB": "Three Brothers" + } +} diff --git a/data/iso_3166-2/IQ.json b/data/iso_3166-2/IQ.json new file mode 100644 index 00000000..248bcce1 --- /dev/null +++ b/data/iso_3166-2/IQ.json @@ -0,0 +1,24 @@ +{ + "source": "http://www.geonames.org/IQ/administrative-division-iraq.html", + "country": "Iraq", + "subdivisions": { + "AN": "Al Anbar", + "AR": "Arbīl", + "BA": "Al Basrah", + "BB": "Babil", + "BG": "Baghdad", + "DA": "Dahūk", + "DI": "Diyala", + "DQ": "Dhi Qar", + "KA": "Al Karbala", + "KI": "Kirkūk", + "MA": "Maysan", + "MU": "Al Muthanna", + "NA": "An Najaf", + "NI": "Ninawa", + "QA": "Al Qadisyah", + "SD": "Salah ad Din", + "SU": "As Sulaymānīyah", + "WA": "Wasit" + } +} diff --git a/data/iso_3166-2/IR.json b/data/iso_3166-2/IR.json new file mode 100644 index 00000000..59ec5ff5 --- /dev/null +++ b/data/iso_3166-2/IR.json @@ -0,0 +1,37 @@ +{ + "source": "http://www.geonames.org/IR/administrative-division-iran.html", + "country": "Iran", + "subdivisions": { + "01": "East Azarbaijan", + "02": "West Azarbaijan", + "03": "Ardabil", + "04": "Esfahan", + "05": "Ilam", + "06": "Bushehr", + "07": "Tehran", + "08": "Chahar Mahaal and Bakhtiari", + "10": "Khuzestan", + "11": "Zanjan", + "12": "Semnan", + "13": "Sistan and Baluchistan", + "14": "Fars", + "15": "Kerman", + "16": "Kurdistan", + "17": "Kermanshah", + "18": "Kohkiluyeh and Buyer Ahmad", + "19": "Gilan", + "20": "Lorestan", + "21": "Mazandaran", + "22": "Markazi", + "23": "Hormozgan", + "24": "Hamadan", + "25": "Yazd", + "26": "Qom", + "27": "Golestan", + "28": "Qazvin", + "29": "South Khorasan", + "30": "Razavi Khorasan", + "31": "North Khorasan", + "32": "Alborz" + } +} diff --git a/data/iso_3166-2/IS.json b/data/iso_3166-2/IS.json new file mode 100644 index 00000000..769ef5c5 --- /dev/null +++ b/data/iso_3166-2/IS.json @@ -0,0 +1,14 @@ +{ + "source": "http://www.geonames.org/IS/administrative-division-iceland.html", + "country": "Iceland", + "subdivisions": { + "1": "Höfuðborgarsvæði", + "2": "Suðurnes", + "3": "Vesturland", + "4": "Vestfirðir", + "5": "Norðurland Vestra", + "6": "Norðurland Eystra", + "7": "Austurland", + "8": "Suðurland" + } +} diff --git a/data/iso_3166-2/IT.json b/data/iso_3166-2/IT.json new file mode 100644 index 00000000..d5ae0ec6 --- /dev/null +++ b/data/iso_3166-2/IT.json @@ -0,0 +1,132 @@ +{ + "source": "http://www.geonames.org/IT/administrative-division-italy.html", + "country": "Italy", + "subdivisions": { + "21": "Piedmont", + "23": "Regione Autonoma Valle d'Aosta", + "25": "Lombardy", + "32": "Regione Autonoma Trentino-Alto Adige", + "34": "Regione del Veneto", + "36": "Regione Autonoma Friuli-Venezia Giulia", + "42": "Regione Liguria", + "45": "Regione Emilia-Romagna", + "52": "Tuscany", + "55": "Regione Umbria", + "57": "Regione Marche", + "62": "Regione Lazio", + "65": "Regione Abruzzo", + "67": "Regione Molise", + "72": "Regione Campania", + "75": "Regione Puglia", + "77": "Regione Basilicata", + "78": "Regione Calabria", + "82": "Regione Autonoma Siciliana", + "88": "Regione Autonoma della Sardegna", + "AG": "Agrigento", + "AL": "Alessandria", + "AN": "Ancona", + "AO": "Aosta", + "AP": "Ascoli Piceno", + "AQ": "L'Aquila", + "AR": "Arezzo", + "AT": "Asti", + "AV": "Avellino", + "BA": "Bari", + "BG": "Bergamo", + "BI": "Biella", + "BL": "Belluno", + "BN": "Benevento", + "BO": "Bologna", + "BR": "Brindisi", + "BS": "Brescia", + "BT": "Barletta-Andria-Trani", + "BZ": "Bolzano", + "CA": "Cagliari", + "CB": "Campobasso", + "CE": "Caserta", + "CH": "Chieti", + "CL": "Caltanissetta", + "CN": "Cuneo", + "CO": "Como", + "CR": "Cremona", + "CS": "Cosenza", + "CT": "Catania", + "CZ": "Catanzaro", + "EN": "Enna", + "FC": "Forlì-Cesena", + "FE": "Ferrara", + "FG": "Foggia", + "FI": "Firenze", + "FM": "Fermo", + "FR": "Frosinone", + "GE": "Genova", + "GO": "Gorizia", + "GR": "Grosseto", + "IM": "Imperia", + "IS": "Isernia", + "KR": "Crotone", + "LC": "Lecco", + "LE": "Lecce", + "LI": "Livorno", + "LO": "Lodi", + "LT": "Latina", + "LU": "Lucca", + "MB": "Monza e Brianza", + "MC": "Macerata", + "ME": "Messina", + "MI": "Milano", + "MN": "Mantova", + "MO": "Modena", + "MS": "Massa-Carrara", + "MT": "Matera", + "NA": "Napoli", + "NO": "Novara", + "NU": "Nuoro", + "OR": "Oristano", + "PA": "Palermo", + "PC": "Piacenza", + "PD": "Padova", + "PE": "Pescara", + "PG": "Perugia", + "PI": "Pisa", + "PN": "Pordenone", + "PO": "Prato", + "PR": "Parma", + "PT": "Pistoia", + "PU": "Pesaro e Urbino", + "PV": "Pavia", + "PZ": "Potenza", + "RA": "Ravenna", + "RC": "Reggio Calabria", + "RE": "Reggio Emilia", + "RG": "Ragusa", + "RI": "Rieti", + "RM": "Roma", + "RN": "Rimini", + "RO": "Rovigo", + "SA": "Salerno", + "SI": "Siena", + "SO": "Sondrio", + "SP": "La Spezia", + "SR": "Siracusa", + "SS": "Sassari", + "SV": "Savona", + "TA": "Taranto", + "TE": "Teramo", + "TN": "Trento", + "TO": "Torino", + "TP": "Trapani", + "TR": "Terni", + "TS": "Trieste", + "TV": "Treviso", + "UD": "Udine", + "VA": "Varese", + "VB": "Verbano-Cusio-Ossola", + "VC": "Vercelli", + "VE": "Venezia", + "VI": "Vicenza", + "VR": "Verona", + "VT": "Viterbo", + "VV": "Vibo Valentia" + } +} diff --git a/data/iso_3166-2/JE.json b/data/iso_3166-2/JE.json new file mode 100644 index 00000000..f78e6032 --- /dev/null +++ b/data/iso_3166-2/JE.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/JE/administrative-division-jersey.html", + "country": "Jersey", + "subdivisions": [] +} diff --git a/data/iso_3166-2/JM.json b/data/iso_3166-2/JM.json new file mode 100644 index 00000000..3d113a02 --- /dev/null +++ b/data/iso_3166-2/JM.json @@ -0,0 +1,20 @@ +{ + "source": "http://www.geonames.org/JM/administrative-division-jamaica.html", + "country": "Jamaica", + "subdivisions": { + "01": "Kingston Parish", + "02": "Saint Andrew Parish", + "03": "Saint Thomas Parish", + "04": "Portland Parish", + "05": "Saint Mary Parish", + "06": "Saint Ann Parish", + "07": "Trelawny Parish", + "08": "Saint James Parish", + "09": "Hanover Parish", + "10": "Westmoreland Parish", + "11": "Saint Elizabeth Parish", + "12": "Manchester Parish", + "13": "Clarendon Parish", + "14": "Saint Catherine Parish" + } +} diff --git a/data/iso_3166-2/JO.json b/data/iso_3166-2/JO.json new file mode 100644 index 00000000..5dcaf17e --- /dev/null +++ b/data/iso_3166-2/JO.json @@ -0,0 +1,18 @@ +{ + "source": "http://www.geonames.org/JO/administrative-division-jordan.html", + "country": "Jordan", + "subdivisions": { + "AJ": "Ajlun", + "AM": "'Amman", + "AQ": "Al 'Aqabah", + "AT": "At Tafilah", + "AZ": "Az Zarqa'", + "BA": "Al Balqa'", + "IR": "Irbid", + "JA": "Jarash", + "KA": "Al Karak", + "MA": "Al Mafraq", + "MD": "Madaba", + "MN": "Ma'an" + } +} diff --git a/data/iso_3166-2/JP.json b/data/iso_3166-2/JP.json new file mode 100644 index 00000000..00e9ea62 --- /dev/null +++ b/data/iso_3166-2/JP.json @@ -0,0 +1,53 @@ +{ + "source": "http://www.geonames.org/JP/administrative-division-japan.html", + "country": "Japan", + "subdivisions": { + "01": "Hokkaidō", + "02": "Aomori", + "03": "Iwate", + "04": "Miyagi", + "05": "Akita", + "06": "Yamagata", + "07": "Hukusima (Fukushima)", + "08": "Ibaraki", + "09": "Totigi (Tochigi)", + "10": "Gunma", + "11": "Saitama", + "12": "Tiba (Chiba)", + "13": "Tokyo", + "14": "Kanagawa", + "15": "Niigata", + "16": "Toyama", + "17": "Isikawa (Ishikawa)", + "18": "Hukui (Fukui)", + "19": "Yamanasi (Yamanashi)", + "20": "Nagano", + "21": "Gihu (Gifu)", + "22": "Sizuoka (Shizuoka)", + "23": "Aiti (Aichi)", + "24": "Mie", + "25": "Siga (Shiga)", + "26": "Kyoto", + "27": "Osaka", + "28": "Hyogo", + "29": "Nara", + "30": "Wakayama", + "31": "Tottori", + "32": "Simane (Shimane)", + "33": "Okayama", + "34": "Hirosima (Hiroshima)", + "35": "Yamaguti (Yamaguchi)", + "36": "Tokusima (Tokushima)", + "37": "Kagawa", + "38": "Ehime", + "39": "Koti (Kochi)", + "40": "Hukuoka (Fukuoka)", + "41": "Saga", + "42": "Nagasaki", + "43": "Kumamoto", + "44": "Oita", + "45": "Miyazaki", + "46": "Kagosima (Kagoshima)", + "47": "Okinawa" + } +} diff --git a/data/iso_3166-2/KE.json b/data/iso_3166-2/KE.json new file mode 100644 index 00000000..5e9cc960 --- /dev/null +++ b/data/iso_3166-2/KE.json @@ -0,0 +1,53 @@ +{ + "source": "http://www.geonames.org/KE/administrative-division-kenya.html", + "country": "Kenya", + "subdivisions": { + "01": "Baringo", + "02": "Bomet", + "03": "Bungoma", + "04": "Busia", + "05": "Elgeyo/Marakwet", + "06": "Embu", + "07": "Garissa", + "08": "Homa Bay", + "09": "Isiolo", + "10": "Kajiado", + "11": "Kakamega", + "12": "Kericho", + "13": "Kiambu", + "14": "Kilifi", + "15": "Kirinyaga", + "16": "Kisii", + "17": "Kisumu", + "18": "Kitui", + "19": "Kwale", + "20": "Laikipia", + "21": "Lamu", + "22": "Machakos", + "23": "Makueni", + "24": "Mandera", + "25": "Marsabit", + "26": "Meru", + "27": "Migori", + "28": "Mombasa", + "29": "Murang’a", + "30": "Nairobi", + "31": "Nakuru", + "32": "Nandi", + "33": "Narok", + "34": "Nyamira", + "35": "Nyandarua", + "36": "Nyeri", + "37": "Samburu", + "38": "Siaya", + "39": "Taita/Taveta", + "40": "Tana River", + "41": "Tharak-Nithi", + "42": "Trans Nzoia", + "43": "Turkana", + "44": "Uasin Gishu", + "45": "Vihiga", + "46": "Wajir", + "47": "West Pokot" + } +} diff --git a/data/iso_3166-2/KG.json b/data/iso_3166-2/KG.json new file mode 100644 index 00000000..8b4aec0e --- /dev/null +++ b/data/iso_3166-2/KG.json @@ -0,0 +1,15 @@ +{ + "source": "http://www.geonames.org/KG/administrative-division-kyrgyzstan.html", + "country": "Kyrgyzstan", + "subdivisions": { + "B": "Batken", + "C": "Chu", + "GB": "Bishkek", + "GO": "Osh City", + "J": "Jalal-Abad", + "N": "Naryn", + "O": "Osh", + "T": "Talas", + "Y": "Ysyk-Kol" + } +} diff --git a/data/iso_3166-2/KH.json b/data/iso_3166-2/KH.json new file mode 100644 index 00000000..1ed66229 --- /dev/null +++ b/data/iso_3166-2/KH.json @@ -0,0 +1,31 @@ +{ + "source": "http://www.geonames.org/KH/administrative-division-cambodia.html", + "country": "Cambodia", + "subdivisions": { + "1": "Banteay Mean Choay", + "10": "Kratie", + "11": "Mondul Kiri", + "12": "Phnom Penh", + "13": "Preah Vihear", + "14": "Prey Veng", + "15": "Pursat", + "16": "Rôtânôkiri", + "17": "Siemreap", + "18": "Preah Seihanu (Kompong Som or Sihanoukville)", + "19": "Stung Treng", + "2": "Battambang", + "20": "Svay Rieng", + "21": "Takeo", + "22": "Otdar Mean Choay", + "23": "Keb", + "24": "Pailin", + "25": "Tboung Khmum", + "3": "Kampong Cham", + "4": "Kampong Chhnang", + "5": "Kampong Speu", + "6": "Kampong Thom", + "7": "Kampot", + "8": "Kandal", + "9": "Kaoh Kong" + } +} diff --git a/data/iso_3166-2/KI.json b/data/iso_3166-2/KI.json new file mode 100644 index 00000000..bb2d8df1 --- /dev/null +++ b/data/iso_3166-2/KI.json @@ -0,0 +1,9 @@ +{ + "source": "http://www.geonames.org/KI/administrative-division-kiribati.html", + "country": "Kiribati", + "subdivisions": { + "G": "Gilbert Islands", + "L": "Line Islands", + "P": "Phoenix Islands" + } +} diff --git a/data/iso_3166-2/KM.json b/data/iso_3166-2/KM.json new file mode 100644 index 00000000..197ec2bd --- /dev/null +++ b/data/iso_3166-2/KM.json @@ -0,0 +1,9 @@ +{ + "source": "http://www.geonames.org/KM/administrative-division-comoros.html", + "country": "Comoros", + "subdivisions": { + "A": "Anjouan", + "G": "Grande Comore", + "M": "Moheli" + } +} diff --git a/data/iso_3166-2/KN.json b/data/iso_3166-2/KN.json new file mode 100644 index 00000000..4446e6e2 --- /dev/null +++ b/data/iso_3166-2/KN.json @@ -0,0 +1,22 @@ +{ + "source": "http://www.geonames.org/KN/administrative-division-saint-kitts-and-nevis.html", + "country": "Saint Kitts and Nevis", + "subdivisions": { + "01": "Christ Church Nichola Town", + "02": "Saint Anne Sandy Point", + "03": "Saint George Basseterre", + "04": "Saint George Gingerland", + "05": "Saint James Windward", + "06": "Saint John Capesterre", + "07": "Saint John Figtree", + "08": "Saint Mary Cayon", + "09": "Saint Paul Capesterre", + "10": "Saint Paul Charlestown", + "11": "Saint Peter Basseterre", + "12": "Saint Thomas Lowland", + "13": "Saint Thomas Middle Island", + "15": "Trinity Palmetto Point", + "K": "Saint Kitts", + "N": "Nevis" + } +} diff --git a/data/iso_3166-2/KP.json b/data/iso_3166-2/KP.json new file mode 100644 index 00000000..c1743bdb --- /dev/null +++ b/data/iso_3166-2/KP.json @@ -0,0 +1,17 @@ +{ + "source": "http://www.geonames.org/KP/administrative-division-north-korea.html", + "country": "North Korea", + "subdivisions": { + "01": "P'yongyang Special City", + "02": "P'yongan-namdo", + "03": "P'yongan-bukto", + "04": "Chagang-do", + "05": "Hwanghae-namdo", + "06": "Hwanghae-bukto", + "07": "Kangwon-do", + "08": "Hamgyong-namdo", + "09": "Hamgyong-bukto", + "10": "Ryanggang-do (Yanggang-do)", + "13": "Nasŏn (Najin-Sŏnbong)" + } +} diff --git a/data/iso_3166-2/KR.json b/data/iso_3166-2/KR.json new file mode 100644 index 00000000..c4128fef --- /dev/null +++ b/data/iso_3166-2/KR.json @@ -0,0 +1,23 @@ +{ + "source": "http://www.geonames.org/KR/administrative-division-south-korea.html", + "country": "South Korea", + "subdivisions": { + "11": "Seoul Special City", + "26": "Busan Metropolitan City", + "27": "Daegu Metropolitan City", + "28": "Incheon Metropolitan City", + "29": "Gwangju Metropolitan City", + "30": "Daejeon Metropolitan City", + "31": "Ulsan Metropolitan City", + "41": "Gyeonggi-do", + "42": "Gangwon-do", + "43": "Chungcheongbuk-do", + "44": "Chungcheongnam-do", + "45": "Jeollabuk-do", + "46": "Jeollanam-do", + "47": "Gyeongsangbuk-do", + "48": "Gyeongsangnam-do", + "49": "Jeju-do", + "50": "Sejong" + } +} diff --git a/data/iso_3166-2/KW.json b/data/iso_3166-2/KW.json new file mode 100644 index 00000000..2526538a --- /dev/null +++ b/data/iso_3166-2/KW.json @@ -0,0 +1,12 @@ +{ + "source": "http://www.geonames.org/KW/administrative-division-kuwait.html", + "country": "Kuwait", + "subdivisions": { + "AH": "Al Ahmadi", + "FA": "Al Farwaniyah", + "HA": "Hawalli", + "JA": "Al Jahra", + "KU": "Al Asimah", + "MU": "Mubārak al Kabīr" + } +} diff --git a/data/iso_3166-2/KY.json b/data/iso_3166-2/KY.json new file mode 100644 index 00000000..a5b45401 --- /dev/null +++ b/data/iso_3166-2/KY.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/KY/administrative-division-cayman-islands.html", + "country": "Cayman Islands", + "subdivisions": [] +} diff --git a/data/iso_3166-2/KZ.json b/data/iso_3166-2/KZ.json new file mode 100644 index 00000000..13ad7660 --- /dev/null +++ b/data/iso_3166-2/KZ.json @@ -0,0 +1,24 @@ +{ + "source": "http://www.geonames.org/KZ/administrative-division-kazakhstan.html", + "country": "Kazakhstan", + "subdivisions": { + "AKM": "Aqmola", + "AKT": "Aqtobe", + "ALA": "Almaty", + "ALM": "Almaty", + "AST": "Astana", + "ATY": "Atyrau", + "BAY": "Baykonyr", + "KAR": "Qaraghandy", + "KUS": "Qustanay", + "KZY": "Qyzylorda", + "MAN": "Mangghystau", + "PAV": "Paylodar", + "SEV": "Soltustik Qazaqstan", + "SHY": "Shymkent", + "VOS": "Shyghys Qazaqstan", + "YUZ": "Ongtustik Qazaqstan", + "ZAP": "Baty Qazaqstan", + "ZHA": "Zhambyl" + } +} diff --git a/data/iso_3166-2/LA.json b/data/iso_3166-2/LA.json new file mode 100644 index 00000000..be3b28c4 --- /dev/null +++ b/data/iso_3166-2/LA.json @@ -0,0 +1,24 @@ +{ + "source": "http://www.geonames.org/LA/administrative-division-laos.html", + "country": "Laos", + "subdivisions": { + "AT": "Attapu", + "BK": "Bokeo", + "BL": "Bolikhamxai", + "CH": "Champasak", + "HO": "Houaphan", + "KH": "Khammouan", + "LM": "Louang Namtha", + "LP": "Louangphabang", + "OU": "Oudomxai", + "PH": "Phongsali", + "SL": "Salavan", + "SV": "Savannakhet", + "VI": "Vientiane", + "VT": "Vientiane", + "XA": "Xaignabouli", + "XE": "Xekong", + "XI": "Xiangkhoang", + "XS": "Xaisômboun" + } +} diff --git a/data/iso_3166-2/LB.json b/data/iso_3166-2/LB.json new file mode 100644 index 00000000..fe710443 --- /dev/null +++ b/data/iso_3166-2/LB.json @@ -0,0 +1,14 @@ +{ + "source": "http://www.geonames.org/LB/administrative-division-lebanon.html", + "country": "Lebanon", + "subdivisions": { + "AK": "Aakkâr", + "AS": "Liban-Nord", + "BA": "Beyrouth", + "BH": "Baalbek-Hermel", + "BI": "Béqaa", + "JA": "Liban-Sud", + "JL": "Mont-Liban", + "NA": "Nabatîyé" + } +} diff --git a/data/iso_3166-2/LC.json b/data/iso_3166-2/LC.json new file mode 100644 index 00000000..44652866 --- /dev/null +++ b/data/iso_3166-2/LC.json @@ -0,0 +1,16 @@ +{ + "source": "http://www.geonames.org/LC/administrative-division-saint-lucia.html", + "country": "Saint Lucia", + "subdivisions": { + "01": "Anse-la-Raye", + "02": "Castries", + "03": "Choiseul", + "05": "Dennery", + "06": "Gros-Islet", + "07": "Laborie", + "08": "Micoud", + "10": "Soufriere", + "11": "Vieux-Fort", + "12": "Canaries" + } +} diff --git a/data/iso_3166-2/LI.json b/data/iso_3166-2/LI.json new file mode 100644 index 00000000..a46f9488 --- /dev/null +++ b/data/iso_3166-2/LI.json @@ -0,0 +1,17 @@ +{ + "source": "http://www.geonames.org/LI/administrative-division-liechtenstein.html", + "country": "Liechtenstein", + "subdivisions": { + "01": "Balzers", + "02": "Eschen", + "03": "Gamprin", + "04": "Mauren", + "05": "Planken", + "06": "Ruggell", + "07": "Schaan", + "08": "Schellenberg", + "09": "Triesen", + "10": "Triesenberg", + "11": "Vaduz" + } +} diff --git a/data/iso_3166-2/LK.json b/data/iso_3166-2/LK.json new file mode 100644 index 00000000..88c18c34 --- /dev/null +++ b/data/iso_3166-2/LK.json @@ -0,0 +1,40 @@ +{ + "source": "http://www.geonames.org/LK/administrative-division-sri-lanka.html", + "country": "Sri Lanka", + "subdivisions": { + "1": "Western", + "11": "Kŏḷamba", + "12": "Gampaha", + "13": "Kaḷutara", + "2": "Central", + "21": "Mahanuvara", + "22": "Mātale", + "23": "Nuvara Ĕliya", + "3": "Southern", + "31": "Gālla", + "32": "Mātara", + "33": "Hambantŏṭa", + "4": "Northern", + "41": "Yāpanaya", + "42": "Kilinŏchchi", + "43": "Mannārama", + "44": "Vavuniyāva", + "45": "Mulativ", + "5": "Eastern", + "51": "Maḍakalapuva", + "52": "Ampāra", + "53": "Trikuṇāmalaya", + "6": "North Western", + "61": "Kuruṇægala", + "62": "Puttalama", + "7": "North Central", + "71": "Anurādhapura", + "72": "Pŏḷŏnnaruva", + "8": "Uva", + "81": "Badulla", + "82": "Mŏṇarāgala", + "9": "Sabaragamuwa", + "91": "Ratnapura", + "92": "Kægalla" + } +} diff --git a/data/iso_3166-2/LR.json b/data/iso_3166-2/LR.json new file mode 100644 index 00000000..2f204a15 --- /dev/null +++ b/data/iso_3166-2/LR.json @@ -0,0 +1,21 @@ +{ + "source": "http://www.geonames.org/LR/administrative-division-liberia.html", + "country": "Liberia", + "subdivisions": { + "BG": "Bong", + "BM": "Bomi", + "CM": "Grand Cape Mount", + "GB": "Grand Bassa", + "GG": "Grand Gedeh", + "GK": "Grand Kru", + "GP": "Gbarpolu", + "LO": "Lofa", + "MG": "Margibi", + "MO": "Montserrado", + "MY": "Maryland", + "NI": "Nimba", + "RG": "River Gee", + "RI": "River Cess", + "SI": "Sinoe" + } +} diff --git a/data/iso_3166-2/LS.json b/data/iso_3166-2/LS.json new file mode 100644 index 00000000..2ae10f23 --- /dev/null +++ b/data/iso_3166-2/LS.json @@ -0,0 +1,16 @@ +{ + "source": "http://www.geonames.org/LS/administrative-division-lesotho.html", + "country": "Lesotho", + "subdivisions": { + "A": "Maseru", + "B": "Butha-Buthe", + "C": "Leribe", + "D": "Berea", + "E": "Mafeteng", + "F": "Mohale's Hoek", + "G": "Quthing", + "H": "Qacha's Nek", + "J": "Mokhotlong", + "K": "Thaba-Tseka" + } +} diff --git a/data/iso_3166-2/LT.json b/data/iso_3166-2/LT.json new file mode 100644 index 00000000..3e4aab36 --- /dev/null +++ b/data/iso_3166-2/LT.json @@ -0,0 +1,76 @@ +{ + "source": "http://www.geonames.org/LT/administrative-division-lithuania.html", + "country": "Lithuania", + "subdivisions": { + "01": "Akmenė", + "02": "Alytaus miestas", + "03": "Alytus", + "04": "Anykščiai", + "05": "Birštono", + "06": "Biržai", + "07": "Druskininkai", + "08": "Elektrėnai", + "09": "Ignalina", + "10": "Jonava", + "11": "Joniškis", + "12": "Jurbarkas", + "13": "Kaišiadorys", + "14": "Kalvarijos", + "15": "Kauno miestas", + "16": "Kaunas", + "17": "Kazlų Rūdos", + "18": "Kėdainiai", + "19": "Kelmė", + "20": "Klaipėdos miestas", + "21": "Klaipėda", + "22": "Kretinga", + "23": "Kupiškis", + "24": "Lazdijai", + "25": "Marijampolė", + "26": "Mažeikiai", + "27": "Molėtai", + "28": "Neringa", + "29": "Pagėgiai", + "30": "Pakruojis", + "31": "Palangos miestas", + "32": "Panevėžio miestas", + "33": "Panevėžys", + "34": "Pasvalys", + "35": "Plungė", + "36": "Prienai", + "37": "Radviliškis", + "38": "Raseiniai", + "39": "Rietavo", + "40": "Rokiškis", + "41": "Šakiai", + "42": "Šalčininkai", + "43": "Šiaulių miestas", + "44": "Šiauliai", + "45": "Šilalė", + "46": "Šilutė", + "47": "Širvintos", + "48": "Skuodas", + "49": "Švenčionys", + "50": "Tauragė", + "51": "Telšiai", + "52": "Trakai", + "53": "Ukmergė", + "54": "Utena", + "55": "Varėna", + "56": "Vilkaviškis", + "57": "Vilniaus miestas", + "58": "Vilnius", + "59": "Visaginas", + "60": "Zarasai", + "AL": "Alytus", + "KL": "Klaipeda", + "KU": "Kaunas", + "MR": "Marijampole", + "PN": "Panevezys", + "SA": "Siauliai", + "TA": "Taurage", + "TE": "Telsiai", + "UT": "Utena", + "VL": "Vilnius" + } +} diff --git a/data/iso_3166-2/LU.json b/data/iso_3166-2/LU.json new file mode 100644 index 00000000..a0a32765 --- /dev/null +++ b/data/iso_3166-2/LU.json @@ -0,0 +1,18 @@ +{ + "source": "http://www.geonames.org/LU/administrative-division-luxembourg.html", + "country": "Luxembourg", + "subdivisions": { + "CA": "Canton de Capellen", + "CL": "Canton de Clervaux", + "DI": "Canton de Diekirch", + "EC": "Canton d'Echternach", + "ES": "Canton d'Esch-sur-Alzette", + "GR": "Canton de Grevenmacher", + "LU": "Canton de Luxembourg", + "ME": "Canton de Mersch", + "RD": "Canton de Redange", + "RM": "Canton de Remich", + "VD": "Canton de Vianden", + "WI": "Canton de Wiltz" + } +} diff --git a/data/iso_3166-2/LV.json b/data/iso_3166-2/LV.json new file mode 100644 index 00000000..084c45aa --- /dev/null +++ b/data/iso_3166-2/LV.json @@ -0,0 +1,125 @@ +{ + "source": "http://www.geonames.org/LV/administrative-division-latvia.html", + "country": "Latvia", + "subdivisions": { + "001": "Aglonas Novads", + "002": "Aizkraukles Novads", + "003": "Aizputes Novads", + "004": "Aknīstes Novads", + "005": "Alojas Novads", + "006": "Alsungas Novads", + "007": "Alūksnes Novads", + "008": "Amatas Novads", + "009": "Apes Novads", + "010": "Auces Novads", + "011": "Ādažu Novads", + "012": "Babītes Novads", + "013": "Baldones Novads", + "014": "Baltinavas Novads", + "015": "Balvu Novads", + "016": "Bauskas Novads", + "017": "Beverīnas Novads", + "018": "Brocēnu Novads", + "019": "Burtnieku Novads", + "020": "Carnikavas Novads", + "021": "Cesvaines Novads", + "022": "Cēsu Novads", + "023": "Ciblas Novads", + "024": "Dagdas Novads", + "025": "Daugavpils Novads", + "026": "Dobeles Novads", + "027": "Dundagas Novads", + "028": "Durbes Novads", + "029": "Engures Novads", + "030": "Ērgļu Novads", + "031": "Garkalnes Novads", + "032": "Grobiņas Novads", + "033": "Gulbenes Novads", + "034": "Iecavas Novads", + "035": "Ikšķiles Novads", + "036": "Ilūkstes Novads", + "037": "Inčukalna Novads", + "038": "Jaunjelgavas Novads", + "039": "Jaunpiebalgas Novads", + "040": "Jaunpils Novads", + "041": "Jelgavas Novads", + "042": "Jēkabpils Novads", + "043": "Kandavas Novads", + "044": "Kārsavas Novads", + "045": "Kocēnu Novads", + "046": "Kokneses Novads", + "047": "Krāslavas Novads", + "048": "Krimuldas Novads", + "049": "Krustpils Novads", + "050": "Kuldīgas Novads", + "051": "Ķeguma Novads", + "052": "Ķekavas Novads", + "053": "Lielvārdes Novads", + "054": "Limbažu Novads", + "055": "Līgatnes Novads", + "056": "Līvānu Novads", + "057": "Lubānas Novads", + "058": "Ludzas Novads", + "059": "Madonas Novads", + "060": "Mazsalacas Novads", + "061": "Mālpils Novads", + "062": "Mārupes Novads", + "063": "Mērsraga novads", + "064": "Naukšēnu Novads", + "065": "Neretas Novads", + "066": "Nīcas Novads", + "067": "Ogres Novads", + "068": "Olaines Novads", + "069": "Ozolnieku Novads", + "070": "Pārgaujas Novads", + "071": "Pāvilostas Novads", + "072": "Pļaviņu Novads", + "073": "Preiļu Novads", + "074": "Priekules Novads", + "075": "Priekuļu Novads", + "076": "Raunas Novads", + "077": "Rēzeknes Novads", + "078": "Riebiņu Novads", + "079": "Rojas Novads", + "080": "Ropažu Novads", + "081": "Rucavas Novads", + "082": "Rugāju Novads", + "083": "Rundāles Novads", + "084": "Rūjienas Novads", + "085": "Salas Novads", + "086": "Salacgrīvas Novads", + "087": "Salaspils Novads", + "088": "Saldus Novads", + "089": "Saulkrastu Novads", + "090": "Sējas Novads", + "091": "Siguldas Novads", + "092": "Skrīveru Novads", + "093": "Skrundas Novads", + "094": "Smiltenes Novads", + "095": "Stopiņu Novads", + "096": "Strenču Novads", + "097": "Talsu Novads", + "098": "Tērvetes Novads", + "099": "Tukuma Novads", + "100": "Vaiņodes Novads", + "101": "Valkas Novads", + "102": "Varakļānu Novads", + "103": "Vārkavas Novads", + "104": "Vecpiebalgas Novads", + "105": "Vecumnieku Novads", + "106": "Ventspils Novads", + "107": "Viesītes Novads", + "108": "Viļakas Novads", + "109": "Viļānu Novads", + "110": "Zilupes Novads", + "DGV": "Daugavpils", + "JEL": "Jelgava", + "JKB": "Jēkabpils", + "JUR": "Jurmala", + "LPX": "Liepaja", + "REZ": "Rezekne", + "RIX": "Riga", + "VEN": "Ventspils", + "VMR": "Valmiera" + } +} diff --git a/data/iso_3166-2/LY.json b/data/iso_3166-2/LY.json new file mode 100644 index 00000000..bc63f587 --- /dev/null +++ b/data/iso_3166-2/LY.json @@ -0,0 +1,28 @@ +{ + "source": "http://www.geonames.org/LY/administrative-division-libya.html", + "country": "Libya", + "subdivisions": { + "BA": "Banghazi", + "BU": "Al Buţnān", + "DR": "Darnah", + "GT": "Ghāt", + "JA": "Al Jabal al Akhdar", + "JG": "Al Jabal al Gharbī", + "JI": "Al Jifārah", + "JU": "Al Jufrah", + "KF": "Al Kufrah", + "MB": "Al Marqab", + "MI": "Misratah", + "MJ": "Al Maraj", + "MQ": "Murzuq", + "NL": "Nālūt", + "NQ": "An Nuqat al Khams", + "SB": "Sabha", + "SR": "Surt", + "TB": "Ţarābulus", + "WA": "Al Wāḩāt", + "WD": "Wādī al Ḩayāt", + "WS": "Wādī ash Shāţi´", + "ZA": "Az Zawiyah" + } +} diff --git a/data/iso_3166-2/MA.json b/data/iso_3166-2/MA.json new file mode 100644 index 00000000..ed5b819d --- /dev/null +++ b/data/iso_3166-2/MA.json @@ -0,0 +1,93 @@ +{ + "source": "http://www.geonames.org/MA/administrative-division-morocco.html", + "country": "Morocco", + "subdivisions": { + "01": "Tanger-Tetouan-Al Hoceima", + "02": "Oriental", + "03": "Fès-Meknès", + "04": "Rabat-Salé-Kénitra", + "05": "Béni Mellal-Khénifra", + "06": "Casablanca-Settat", + "07": "Marrakesh-Safi", + "08": "Drâa-Tafilalet", + "09": "Souss-Massa", + "10": "Guelmim-Oued Noun", + "11": "Laâyoune-Sakia El Hamra", + "12": "Dakhla-Oued Ed-Dahab", + "AGD": "Agadir-Ida-Outanane", + "AOU": "Aousserd (EH)", + "ASZ": "Assa-Zag", + "AZI": "Azilal", + "BEM": "Beni Mellal", + "BER": "Berkane", + "BES": "Ben Slimane", + "BOD": "Boujdour (EH)", + "BOM": "Boulemane", + "BRR": "Berrechid", + "CAS": "Casablanca [Dar el Beïda]", + "CHE": "Chefchaouen", + "CHI": "Chichaoua", + "CHT": "Chtouka-Ait Baha", + "DRI": "Driouch", + "ERR": "Errachidia", + "ESI": "Essaouira", + "ESM": "Es Smara (EH)", + "FAH": "Fahs-Anjra", + "FES": "Fès-Dar-Dbibegh", + "FIG": "Figuig", + "FQH": "Fquih Ben Salah", + "GUE": "Guelmim", + "GUF": "Guercif", + "HAJ": "El Hajeb", + "HAO": "Al Haouz", + "HOC": "Al Hoceïma", + "IFR": "Ifrane", + "INE": "Inezgane-Ait Melloul", + "JDI": "El Jadida", + "JRA": "Jrada", + "KEN": "Kénitra", + "KES": "Kelaat es Sraghna", + "KHE": "Khémisset", + "KHN": "Khénifra", + "KHO": "Khouribga", + "LAA": "Laâyoune", + "LAR": "Larache", + "MAR": "Marrakech", + "MDF": "M'Diq-Fnideq", + "MED": "Médiouna", + "MEK": "Meknès", + "MID": "Midelt", + "MOH": "Mohammadia", + "MOU": "Moulay Yacoub", + "NAD": "Nador", + "NOU": "Nouaceur", + "OUA": "Ouarzazate", + "OUD": "Oued ed Dahab (EH)", + "OUJ": "Oujda-Angad", + "OUZ": "Ouezzane", + "RAB": "Rabat", + "REH": "Rehamna", + "SAF": "Safi", + "SAL": "Salé", + "SEF": "Sefrou", + "SET": "Settat", + "SIB": "Sidi Bennour", + "SIF": "Sidi Ifni", + "SIK": "Sidi Kacem", + "SIL": "Sidi Slimane", + "SKH": "Skhirate-Témara", + "TAF": "Tarfaya", + "TAI": "Taourirt", + "TAO": "Taounate", + "TAR": "Taroudant", + "TAT": "Tata", + "TAZ": "Taza", + "TET": "Tétouan", + "TIN": "Tinghir", + "TIZ": "Tiznit", + "TNG": "Tanger-Assilah", + "TNT": "Tan-Tan", + "YUS": "Youssoufia", + "ZAG": "Zagora" + } +} diff --git a/data/iso_3166-2/MC.json b/data/iso_3166-2/MC.json new file mode 100644 index 00000000..e1ea17eb --- /dev/null +++ b/data/iso_3166-2/MC.json @@ -0,0 +1,23 @@ +{ + "source": "http://www.geonames.org/MC/administrative-division-monaco.html", + "country": "Monaco", + "subdivisions": { + "CL": "La Colle", + "CO": "La Condamine", + "FO": "Fontvieille", + "GA": "La Gare", + "JE": "Jardin Exotique", + "LA": "Larvotto", + "MA": "Malbousquet", + "MC": "Monte-Carlo", + "MG": "Moneghetti", + "MO": "Monaco-Ville", + "MU": "Moulins", + "PH": "Port-Hercule", + "SD": "Sainte-Dévote", + "SO": "La Source", + "SP": "Spélugues", + "SR": "Saint-Roman", + "VR": "Vallon de la Rousse" + } +} diff --git a/data/iso_3166-2/MD.json b/data/iso_3166-2/MD.json new file mode 100644 index 00000000..a3d891b2 --- /dev/null +++ b/data/iso_3166-2/MD.json @@ -0,0 +1,43 @@ +{ + "source": "http://www.geonames.org/MD/administrative-division-moldova.html", + "country": "Moldova", + "subdivisions": { + "AN": "Raionul Anenii Noi", + "BA": "Municipiul Bălţi", + "BD": "Tighina", + "BR": "Raionul Briceni", + "BS": "Raionul Basarabeasca", + "CA": "Cahul", + "CL": "Raionul Călăraşi", + "CM": "Raionul Cimişlia", + "CR": "Raionul Criuleni", + "CS": "Raionul Căuşeni", + "CT": "Raionul Cantemir", + "CU": "Municipiul Chişinău", + "DO": "Donduşeni", + "DR": "Raionul Drochia", + "DU": "Dubăsari", + "ED": "Raionul Edineţ", + "FA": "Făleşti", + "FL": "Floreşti", + "GA": "U.T.A. Găgăuzia", + "GL": "Raionul Glodeni", + "HI": "Hînceşti", + "IA": "Ialoveni", + "LE": "Leova", + "NI": "Nisporeni", + "OC": "Raionul Ocniţa", + "OR": "Raionul Orhei", + "RE": "Rezina", + "RI": "Rîşcani", + "SD": "Raionul Şoldăneşti", + "SI": "Sîngerei", + "SN": "Stînga Nistrului", + "SO": "Soroca", + "ST": "Raionul Străşeni", + "SV": "Raionul Ştefan Vodă", + "TA": "Raionul Taraclia", + "TE": "Teleneşti", + "UN": "Raionul Ungheni" + } +} diff --git a/data/iso_3166-2/ME.json b/data/iso_3166-2/ME.json new file mode 100644 index 00000000..a27fe583 --- /dev/null +++ b/data/iso_3166-2/ME.json @@ -0,0 +1,29 @@ +{ + "source": "http://www.geonames.org/ME/administrative-division-montenegro.html", + "country": "Montenegro", + "subdivisions": { + "01": "Opština Andrijevica", + "02": "Opština Bar", + "03": "Opština Berane", + "04": "Opština Bijelo Polje", + "05": "Opština Budva", + "06": "Opština Cetinje", + "07": "Opština Danilovgrad", + "08": "Opština Herceg-Novi", + "09": "Opština Kolašin", + "10": "Opština Kotor", + "11": "Opština Mojkovac", + "12": "Opština Nikšić", + "13": "Opština Plav", + "14": "Opština Pljevlja", + "15": "Opština Plužine", + "16": "Opština Podgorica", + "17": "Opština Rožaje", + "18": "Opština Šavnik", + "19": "Opština Tivat", + "20": "Opština Ulcinj", + "21": "Opština Žabljak", + "22": "Gusinje", + "23": "Petnjica" + } +} diff --git a/data/iso_3166-2/MF.json b/data/iso_3166-2/MF.json new file mode 100644 index 00000000..0e62361a --- /dev/null +++ b/data/iso_3166-2/MF.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/MF/administrative-division-saint-martin.html", + "country": "Saint Martin", + "subdivisions": [] +} diff --git a/data/iso_3166-2/MG.json b/data/iso_3166-2/MG.json new file mode 100644 index 00000000..7eb90569 --- /dev/null +++ b/data/iso_3166-2/MG.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/MG/administrative-division-madagascar.html", + "country": "Madagascar", + "subdivisions": [] +} diff --git a/data/iso_3166-2/MH.json b/data/iso_3166-2/MH.json new file mode 100644 index 00000000..7255c9d6 --- /dev/null +++ b/data/iso_3166-2/MH.json @@ -0,0 +1,32 @@ +{ + "source": "http://www.geonames.org/MH/administrative-division-marshall-islands.html", + "country": "Marshall Islands", + "subdivisions": { + "ALK": "Ailuk", + "ALL": "Ailinglaplap", + "ARN": "Arno", + "AUR": "Aur", + "EBO": "Ebon", + "ENI": "Enewetak", + "JAB": "Jabat", + "JAL": "Jaluit", + "KIL": "Kili", + "KWA": "Kwajalein", + "L": "Ralik chain", + "LAE": "Lae", + "LIB": "Lib", + "LIK": "Likiep", + "MAJ": "Majuro", + "MAL": "Maloelap", + "MEJ": "Mejit", + "MIL": "Mili", + "NMK": "Namorik", + "NMU": "Namu", + "RON": "Rongelap", + "T": "Ratak chain", + "UJA": "Ujae", + "UTI": "Utirik", + "WTH": "Wotho", + "WTJ": "Wotje" + } +} diff --git a/data/iso_3166-2/MK.json b/data/iso_3166-2/MK.json new file mode 100644 index 00000000..8548863f --- /dev/null +++ b/data/iso_3166-2/MK.json @@ -0,0 +1,91 @@ +{ + "source": "http://www.geonames.org/MK/administrative-division-macedonia.html", + "country": "Macedonia", + "subdivisions": { + "01": "Aerodrom †", + "02": "Aračinovo", + "03": "Berovo", + "04": "Bitola", + "05": "Bogdanci", + "06": "Bogovinje", + "07": "Bosilovo", + "08": "Brvenica", + "09": "Butel †", + "10": "Valandovo", + "11": "Vasilevo", + "12": "Vevčani", + "13": "Veles", + "14": "Vinica", + "15": "Vraneštica", + "16": "Vrapčište", + "17": "Gazi Baba †", + "18": "Gevgelija", + "19": "Gostivar", + "20": "Gradsko", + "21": "Debar", + "22": "Debarca", + "23": "Delčevo", + "24": "Demir Kapija", + "25": "Demir Hisar", + "26": "Dojran", + "27": "Dolneni", + "28": "Drugovo", + "29": "Gjorče Petrov †", + "30": "Želino", + "31": "Zajas", + "32": "Zelenikovo", + "33": "Zrnovci", + "34": "Ilinden", + "35": "Jegunovce", + "36": "Kavadarci", + "37": "Karbinci", + "38": "Karpoš †", + "39": "Kisela Voda †", + "40": "Kičevo", + "41": "Konče", + "42": "Kočani", + "43": "Kratovo", + "44": "Kriva Palanka", + "45": "Krivogaštani", + "46": "Kruševo", + "47": "Kumanovo", + "48": "Lipkovo", + "49": "Lozovo", + "50": "Mavrovo-i-Rostuša", + "51": "Makedonska Kamenica", + "52": "Makedonski Brod", + "53": "Mogila", + "54": "Negotino", + "55": "Novaci", + "56": "Novo Selo", + "57": "Oslomej", + "58": "Ohrid", + "59": "Petrovec", + "60": "Pehčevo", + "61": "Plasnica", + "62": "Prilep", + "63": "Probištip", + "64": "Radoviš", + "65": "Rankovce", + "66": "Resen", + "67": "Rosoman", + "68": "Saraj †", + "69": "Sveti Nikole", + "70": "Štip", + "71": "Struga", + "72": "Strumica", + "73": "Studeničani", + "74": "Šuto Orizari †", + "75": "Tearce", + "76": "Tetovo", + "77": "Centar †", + "78": "Centar Župa", + "79": "Čair †", + "80": "Čaška", + "81": "Češinovo-Obleševo", + "82": "Čučer Sandevo", + "83": "Sopište", + "84": "Staro Nagoričane", + "85": "Skopje" + } +} diff --git a/data/iso_3166-2/ML.json b/data/iso_3166-2/ML.json new file mode 100644 index 00000000..a8cdb56f --- /dev/null +++ b/data/iso_3166-2/ML.json @@ -0,0 +1,15 @@ +{ + "source": "http://www.geonames.org/ML/administrative-division-mali.html", + "country": "Mali", + "subdivisions": { + "1": "Kayes", + "2": "Koulikoro", + "3": "Sikasso", + "4": "Segou", + "5": "Mopti", + "6": "Tombouctou", + "7": "Gao", + "8": "Kidal", + "BKO": "Bamako Capital District" + } +} diff --git a/data/iso_3166-2/MM.json b/data/iso_3166-2/MM.json new file mode 100644 index 00000000..01da8a5b --- /dev/null +++ b/data/iso_3166-2/MM.json @@ -0,0 +1,21 @@ +{ + "source": "http://www.geonames.org/MM/administrative-division-myanmar.html", + "country": "Myanmar [Burma]", + "subdivisions": { + "01": "Sagaing", + "02": "Bago", + "03": "Magway", + "04": "Mandalay", + "05": "Tanintharyi", + "06": "Yangon", + "07": "Ayeyarwady", + "11": "Kachin State", + "12": "Kayah State", + "13": "Kayin State", + "14": "Chin State", + "15": "Mon State", + "16": "Rakhine State", + "17": "Shan State", + "18": "Nay Pyi Taw" + } +} diff --git a/data/iso_3166-2/MN.json b/data/iso_3166-2/MN.json new file mode 100644 index 00000000..a149752a --- /dev/null +++ b/data/iso_3166-2/MN.json @@ -0,0 +1,28 @@ +{ + "source": "http://www.geonames.org/MN/administrative-division-mongolia.html", + "country": "Mongolia", + "subdivisions": { + "035": "Orhon", + "037": "Darhan uul", + "039": "Hentiy", + "041": "Hovsgol", + "043": "Hovd", + "046": "Uvs", + "047": "Tov", + "049": "Selenge", + "051": "Suhbaatar", + "053": "Omnogovi", + "055": "Ovorhangay", + "057": "Dzavhan", + "059": "DundgovL", + "061": "Dornod", + "063": "Dornogov", + "064": "Govi-Sumber", + "065": "Govi-Altay", + "067": "Bulgan", + "069": "Bayanhongor", + "071": "Bayan-Olgiy", + "073": "Arhangay", + "1": "Ulanbaatar" + } +} diff --git a/data/iso_3166-2/MO.json b/data/iso_3166-2/MO.json new file mode 100644 index 00000000..f56c2788 --- /dev/null +++ b/data/iso_3166-2/MO.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/MO/administrative-division-macao.html", + "country": "Macao", + "subdivisions": [] +} diff --git a/data/iso_3166-2/MP.json b/data/iso_3166-2/MP.json new file mode 100644 index 00000000..e95f1265 --- /dev/null +++ b/data/iso_3166-2/MP.json @@ -0,0 +1,10 @@ +{ + "source": "http://www.geonames.org/MP/administrative-division-northern-mariana-islands.html", + "country": "Northern Mariana Islands", + "subdivisions": { + "N": "Northern Islands", + "R": "Rota", + "S": "Saipan", + "T": "Tinian" + } +} diff --git a/data/iso_3166-2/MQ.json b/data/iso_3166-2/MQ.json new file mode 100644 index 00000000..ded0d72d --- /dev/null +++ b/data/iso_3166-2/MQ.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/MQ/administrative-division-martinique.html", + "country": "Martinique", + "subdivisions": [] +} diff --git a/data/iso_3166-2/MR.json b/data/iso_3166-2/MR.json new file mode 100644 index 00000000..1f94b322 --- /dev/null +++ b/data/iso_3166-2/MR.json @@ -0,0 +1,21 @@ +{ + "source": "http://www.geonames.org/MR/administrative-division-mauritania.html", + "country": "Mauritania", + "subdivisions": { + "01": "Hodh Ech Chargui", + "02": "Hodh El Gharbi", + "03": "Assaba", + "04": "Gorgol", + "05": "Brakna", + "06": "Trarza", + "07": "Adrar", + "08": "Dakhlet Nouadhibou", + "09": "Tagant", + "10": "Guidimaka", + "11": "Tiris Zemmour", + "12": "Inchiri", + "13": "Nouakchott-Ouest", + "14": "Nouakchott-Nord", + "15": "Nouakchott-Sud" + } +} diff --git a/data/iso_3166-2/MS.json b/data/iso_3166-2/MS.json new file mode 100644 index 00000000..f1b04568 --- /dev/null +++ b/data/iso_3166-2/MS.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/MS/administrative-division-montserrat.html", + "country": "Montserrat", + "subdivisions": [] +} diff --git a/data/iso_3166-2/MT.json b/data/iso_3166-2/MT.json new file mode 100644 index 00000000..9b0d425a --- /dev/null +++ b/data/iso_3166-2/MT.json @@ -0,0 +1,74 @@ +{ + "source": "http://www.geonames.org/MT/administrative-division-malta.html", + "country": "Malta", + "subdivisions": { + "01": "Attard", + "02": "Balzan", + "03": "Birgu", + "04": "Birkirkara", + "05": "Birzebbuga", + "06": "Bormla", + "07": "Dingli", + "08": "Fgura", + "09": "Floriana", + "10": "Fontana", + "11": "Gudja", + "12": "Gzira", + "13": "Ghajnsielem", + "14": "Gharb", + "15": "Gargur", + "16": "Ghasri", + "17": "Gaxaq", + "18": "Hamrun", + "19": "Iklin", + "20": "Isla", + "21": "Kalkara", + "22": "Kercem", + "23": "Kirkop", + "24": "Lija", + "25": "Luqa", + "26": "Marsa", + "27": "Marsaskala", + "28": "Marsaxlokk", + "29": "Mdina", + "30": "Melliea", + "31": "Mgarr", + "32": "Mosta", + "33": "Mqabba", + "34": "Msida", + "35": "Mtarfa", + "36": "Munxar", + "37": "Nadur", + "38": "Naxxar", + "39": "Paola", + "40": "Pembroke", + "41": "Pieta", + "42": "Qala", + "43": "Qormi", + "44": "Qrendi", + "45": "Rabat Għawdex", + "46": "Rabat Malta", + "47": "Safi", + "48": "San Giljan", + "49": "San Gwann", + "50": "San Lawrenz", + "51": "San Pawl il-Bahar", + "52": "Sannat", + "53": "Santa Lucija", + "54": "Santa Venera", + "55": "Siggiewi", + "56": "Sliema", + "57": "Swieqi", + "58": "Tarxien", + "59": "Ta Xbiex", + "60": "Valletta", + "61": "Xagra", + "62": "Xewkija", + "63": "Xgajra", + "64": "Zabbar", + "65": "Żebbuġ Għawdex", + "66": "Żebbuġ Malta", + "67": "Zejtun", + "68": "Zurrieq" + } +} diff --git a/data/iso_3166-2/MU.json b/data/iso_3166-2/MU.json new file mode 100644 index 00000000..5833e9d7 --- /dev/null +++ b/data/iso_3166-2/MU.json @@ -0,0 +1,23 @@ +{ + "source": "http://www.geonames.org/MU/administrative-division-mauritius.html", + "country": "Mauritius", + "subdivisions": { + "AG": "Agalega Islands", + "BL": "Black River", + "BR": "Beau Bassin-Rose Hill", + "CC": "Cargados Carajos Shoals (Saint Brandon Islands)", + "CU": "Curepipe", + "FL": "Flacq", + "GP": "Grand Port", + "MO": "Moka", + "PA": "Pamplemousses", + "PL": "Port Louis", + "PU": "Port Louis", + "PW": "Plaines Wilhems", + "QB": "Quatre Bornes", + "RO": "Rodrigues", + "RR": "Riviere du Rempart", + "SA": "Savanne", + "VP": "Vacoas-Phoenix" + } +} diff --git a/data/iso_3166-2/MV.json b/data/iso_3166-2/MV.json new file mode 100644 index 00000000..216c063c --- /dev/null +++ b/data/iso_3166-2/MV.json @@ -0,0 +1,26 @@ +{ + "source": "http://www.geonames.org/MV/administrative-division-maldives.html", + "country": "Maldives", + "subdivisions": { + "00": "Alifu Dhaalu / Ari Atholhu Dhekunuburi", + "01": "Seenu / Addu Atholhu", + "02": "Alifu Alifu / Ari Atholhu Uthuruburi", + "03": "Lhaviyani / Faadhippolhu", + "04": "Vaavu / Felidhu Atholhu", + "05": "Laamu / Haddhdhunmathi", + "07": "Haa Alifu / Thiladhunmathee Uthuruburi", + "08": "Thaa / Kolhumadulu", + "12": "Meemu / Mulakatholhu", + "13": "Raa / Maalhosmadulu Uthuruburi", + "14": "Faafu / Nilandhe Atholhu Uthuruburi", + "17": "Dhaalu / Nilandhe Atholhu Dhekunuburi", + "20": "Baa / Maalhosmadulu Dhekunuburi", + "23": "Haa Dhaalu / Thiladhunmathee Dhekunuburi", + "24": "Shaviyani / Miladhunmadulu Uthuruburi", + "25": "Noonu / Miladhunmadulu Dhekunuburi", + "26": "Kaafu / Maale Atholhu", + "27": "Gaafu Alifu / Huvadhu Atholhu Uthuruburi", + "28": "Gaafu Dhaalu / Huvadhu Atholhu Dhekunuburi", + "29": "Gnaviyani / Fuvammulah" + } +} diff --git a/data/iso_3166-2/MW.json b/data/iso_3166-2/MW.json new file mode 100644 index 00000000..02769ab1 --- /dev/null +++ b/data/iso_3166-2/MW.json @@ -0,0 +1,37 @@ +{ + "source": "http://www.geonames.org/MW/administrative-division-malawi.html", + "country": "Malawi", + "subdivisions": { + "BA": "Balaka", + "BL": "Blantyre", + "C": "Central", + "CK": "Chikwawa", + "CR": "Chiradzulu", + "CT": "Chitipa", + "DE": "Dedza", + "DO": "Dowa", + "KR": "Karonga", + "KS": "Kasungu", + "LI": "Lilongwe", + "LK": "Likoma", + "MC": "Mchinji", + "MG": "Mangochi", + "MH": "Machinga", + "MU": "Mulanje", + "MW": "Mwanza", + "MZ": "Mzimba", + "N": "Northern", + "NB": "Nkhata Bay", + "NE": "Neno", + "NI": "Ntchisi", + "NK": "Nkhotakota", + "NS": "Nsanje", + "NU": "Ntcheu", + "PH": "Phalombe", + "RU": "Rumphi", + "S": "Southern", + "SA": "Salima", + "TH": "Thyolo", + "ZO": "Zomba" + } +} diff --git a/data/iso_3166-2/MX.json b/data/iso_3166-2/MX.json new file mode 100644 index 00000000..1ce374bc --- /dev/null +++ b/data/iso_3166-2/MX.json @@ -0,0 +1,38 @@ +{ + "source": "http://www.geonames.org/MX/administrative-division-mexico.html", + "country": "Mexico", + "subdivisions": { + "AGU": "Aguascalientes", + "BCN": "Baja California", + "BCS": "Baja California Sur", + "CAM": "Campeche", + "CHH": "Chihuahua", + "CHP": "Chiapas", + "CMX": "Ciudad de Mexico", + "COA": "Coahuila", + "COL": "Colima", + "DUR": "Durango", + "GRO": "Guerrero", + "GUA": "Guanajuato", + "HID": "Hidalgo", + "JAL": "Jalisco", + "MEX": "Mexico", + "MIC": "Michoacan", + "MOR": "Morelos", + "NAY": "Nayarit", + "NLE": "Nuevo Leon", + "OAX": "Oaxaca", + "PUE": "Puebla", + "QUE": "Queretaro", + "ROO": "Quintana Roo", + "SIN": "Sinaloa", + "SLP": "San Luis Potosi", + "SON": "Sonora", + "TAB": "Tabasco", + "TAM": "Tamaulipas", + "TLA": "Tlaxcala", + "VER": "Veracruz", + "YUC": "Yucatan", + "ZAC": "Zacatecas" + } +} diff --git a/data/iso_3166-2/MY.json b/data/iso_3166-2/MY.json new file mode 100644 index 00000000..789c4a02 --- /dev/null +++ b/data/iso_3166-2/MY.json @@ -0,0 +1,22 @@ +{ + "source": "http://www.geonames.org/MY/administrative-division-malaysia.html", + "country": "Malaysia", + "subdivisions": { + "01": "Johor", + "02": "Kedah", + "03": "Kelantan", + "04": "Melaka", + "05": "Negeri Sembilan", + "06": "Pahang", + "07": "Pinang", + "08": "Perak", + "09": "Perlis", + "10": "Selangor", + "11": "Terengganu", + "12": "Sabah", + "13": "Sarawak", + "14": "Kuala Lumpur", + "15": "Labuan", + "16": "Putrajaya" + } +} diff --git a/data/iso_3166-2/MZ.json b/data/iso_3166-2/MZ.json new file mode 100644 index 00000000..285310f9 --- /dev/null +++ b/data/iso_3166-2/MZ.json @@ -0,0 +1,17 @@ +{ + "source": "http://www.geonames.org/MZ/administrative-division-mozambique.html", + "country": "Mozambique", + "subdivisions": { + "A": "Niassa", + "B": "Manica", + "G": "Gaza", + "I": "Inhambane", + "L": "Maputo", + "MPM": "Maputo (city)", + "N": "Nampula", + "P": "Cabo Delgado", + "Q": "Zambezia", + "S": "Sofala", + "T": "Tete" + } +} diff --git a/data/iso_3166-2/NA.json b/data/iso_3166-2/NA.json new file mode 100644 index 00000000..9e7b5941 --- /dev/null +++ b/data/iso_3166-2/NA.json @@ -0,0 +1,20 @@ +{ + "source": "http://www.geonames.org/NA/administrative-division-namibia.html", + "country": "Namibia", + "subdivisions": { + "CA": "Caprivi", + "ER": "Erongo", + "HA": "Hardap", + "KA": "Karas", + "KE": "Kavango East", + "KH": "Khomas", + "KU": "Kunene", + "KW": "Kavango West", + "OD": "Otjozondjupa", + "OH": "Omaheke", + "ON": "Oshana", + "OS": "Omusati", + "OT": "Oshikoto", + "OW": "Ohangwena" + } +} diff --git a/data/iso_3166-2/NC.json b/data/iso_3166-2/NC.json new file mode 100644 index 00000000..883c130b --- /dev/null +++ b/data/iso_3166-2/NC.json @@ -0,0 +1,9 @@ +{ + "source": "http://www.geonames.org/NC/administrative-division-new-caledonia.html", + "country": "New Caledonia", + "subdivisions": { + "L": "Iles Loyaute", + "N": "Nord", + "S": "Sud" + } +} diff --git a/data/iso_3166-2/NE.json b/data/iso_3166-2/NE.json new file mode 100644 index 00000000..1591d386 --- /dev/null +++ b/data/iso_3166-2/NE.json @@ -0,0 +1,14 @@ +{ + "source": "http://www.geonames.org/NE/administrative-division-niger.html", + "country": "Niger", + "subdivisions": { + "1": "Agadez", + "2": "Diffa", + "3": "Dosso", + "4": "Maradi", + "5": "Tahoua", + "6": "Tillabéri", + "7": "Zinder", + "8": "Niamey" + } +} diff --git a/data/iso_3166-2/NF.json b/data/iso_3166-2/NF.json new file mode 100644 index 00000000..b9b8375a --- /dev/null +++ b/data/iso_3166-2/NF.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/NF/administrative-division-norfolk-island.html", + "country": "Norfolk Island", + "subdivisions": [] +} diff --git a/data/iso_3166-2/NG.json b/data/iso_3166-2/NG.json new file mode 100644 index 00000000..e9328ae4 --- /dev/null +++ b/data/iso_3166-2/NG.json @@ -0,0 +1,43 @@ +{ + "source": "http://www.geonames.org/NG/administrative-division-nigeria.html", + "country": "Nigeria", + "subdivisions": { + "AB": "Abia", + "AD": "Adamawa", + "AK": "Akwa Ibom", + "AN": "Anambra", + "BA": "Bauchi", + "BE": "Benue", + "BO": "Borno", + "BY": "Bayelsa", + "CR": "Cross River", + "DE": "Delta", + "EB": "Ebonyi", + "ED": "Edo", + "EK": "Ekiti", + "EN": "Enugu", + "FC": "Federal Capital Territory", + "GO": "Gombe", + "IM": "Imo", + "JI": "Jigawa", + "KD": "Kaduna", + "KE": "Kebbi", + "KN": "Kano", + "KO": "Kogi", + "KT": "Katsina", + "KW": "Kwara", + "LA": "Lagos", + "NA": "Nassarawa", + "NI": "Niger", + "OG": "Ogun", + "ON": "Ondo", + "OS": "Osun", + "OY": "Oyo", + "PL": "Plateau", + "RI": "Rivers", + "SO": "Sokoto", + "TA": "Taraba", + "YO": "Yobe", + "ZA": "Zamfara" + } +} diff --git a/data/iso_3166-2/NI.json b/data/iso_3166-2/NI.json new file mode 100644 index 00000000..284b1b92 --- /dev/null +++ b/data/iso_3166-2/NI.json @@ -0,0 +1,23 @@ +{ + "source": "http://www.geonames.org/NI/administrative-division-nicaragua.html", + "country": "Nicaragua", + "subdivisions": { + "AN": "Region Autonoma del Atlantico Norte", + "AS": "Region Autonoma del Atlantico Sur", + "BO": "Boaco", + "CA": "Carazo", + "CI": "Chinandega", + "CO": "Chontales", + "ES": "Esteli", + "GR": "Granada", + "JI": "Jinotega", + "LE": "Leon", + "MD": "Madriz", + "MN": "Managua", + "MS": "Masaya", + "MT": "Matagalpa", + "NS": "Nueva Segovia", + "RI": "Rivas", + "SJ": "Rio San Juan" + } +} diff --git a/data/iso_3166-2/NL.json b/data/iso_3166-2/NL.json new file mode 100644 index 00000000..1632dbca --- /dev/null +++ b/data/iso_3166-2/NL.json @@ -0,0 +1,18 @@ +{ + "source": "http://www.geonames.org/NL/administrative-division-netherlands.html", + "country": "Netherlands", + "subdivisions": { + "DR": "Drenthe", + "FL": "Flevoland", + "FR": "Friesland", + "GE": "Gelderland", + "GR": "Groningen", + "LI": "Limburg", + "NB": "Noord Brabant", + "NH": "Noord Holland", + "OV": "Overijssel", + "UT": "Utrecht", + "ZE": "Zeeland", + "ZH": "Zuid Holland" + } +} diff --git a/data/iso_3166-2/NO.json b/data/iso_3166-2/NO.json new file mode 100644 index 00000000..e4954002 --- /dev/null +++ b/data/iso_3166-2/NO.json @@ -0,0 +1,26 @@ +{ + "source": "http://www.geonames.org/NO/administrative-division-norway.html", + "country": "Norway", + "subdivisions": { + "01": "Ostfold", + "02": "Akershus", + "03": "Oslo", + "04": "Hedmark", + "05": "Oppland", + "06": "Buskerud", + "07": "Vestfold", + "08": "Telemark", + "09": "Aust-Agder", + "10": "Vest-Agder", + "11": "Rogaland", + "12": "Hordaland", + "14": "Sogn og Fjordane", + "15": "More og Romdal", + "18": "Nordland", + "19": "Troms", + "20": "Finnmark", + "21": "Svalbard", + "22": "Jan Mayen", + "23": "Trøndelag" + } +} diff --git a/data/iso_3166-2/NP.json b/data/iso_3166-2/NP.json new file mode 100644 index 00000000..d4a56d03 --- /dev/null +++ b/data/iso_3166-2/NP.json @@ -0,0 +1,25 @@ +{ + "source": "http://www.geonames.org/NP/administrative-division-nepal.html", + "country": "Nepal", + "subdivisions": { + "1": "Madhyamanchal", + "2": "Madhya Pashchimanchal", + "3": "Pashchimanchal", + "4": "Purwanchal", + "5": "Sudur Pashchimanchal", + "BA": "Bagmati", + "BH": "Bheri", + "DH": "Dhawalagiri", + "GA": "Gandaki", + "JA": "Janakpur", + "KA": "Karnali", + "KO": "Kosi", + "LU": "Lumbini", + "MA": "Mahakali", + "ME": "Mechi", + "NA": "Narayani", + "RA": "Rapti", + "SA": "Sagarmatha", + "SE": "Seti" + } +} diff --git a/data/iso_3166-2/NR.json b/data/iso_3166-2/NR.json new file mode 100644 index 00000000..8db04d07 --- /dev/null +++ b/data/iso_3166-2/NR.json @@ -0,0 +1,20 @@ +{ + "source": "http://www.geonames.org/NR/administrative-division-nauru.html", + "country": "Nauru", + "subdivisions": { + "01": "Aiwo", + "02": "Anabar", + "03": "Anetan", + "04": "Anibare", + "05": "Baiti", + "06": "Boe", + "07": "Buada", + "08": "Denigomodu", + "09": "Ewa", + "10": "Ijuw", + "11": "Meneng", + "12": "Nibok", + "13": "Uaboe", + "14": "Yaren" + } +} diff --git a/data/iso_3166-2/NU.json b/data/iso_3166-2/NU.json new file mode 100644 index 00000000..d3f4282d --- /dev/null +++ b/data/iso_3166-2/NU.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/NU/administrative-division-niue.html", + "country": "Niue", + "subdivisions": [] +} diff --git a/data/iso_3166-2/NZ.json b/data/iso_3166-2/NZ.json new file mode 100644 index 00000000..9b26c545 --- /dev/null +++ b/data/iso_3166-2/NZ.json @@ -0,0 +1,23 @@ +{ + "source": "http://www.geonames.org/NZ/administrative-division-new-zealand.html", + "country": "New Zealand", + "subdivisions": { + "AUK": "Auckland", + "BOP": "Bay of Plenty", + "CAN": "Canterbury", + "CIT": "Chatham Islands", + "GIS": "Gisborne", + "HKB": "Hawke's Bay", + "MBH": "Marlborough", + "MWT": "Manawatu-Wanganui", + "NSN": "Nelson", + "NTL": "Northland", + "OTA": "Otago", + "STL": "Southland", + "TAS": "Tasman", + "TKI": "Taranaki", + "WGN": "Wellington", + "WKO": "Waikato", + "WTC": "West Coast" + } +} diff --git a/data/iso_3166-2/OM.json b/data/iso_3166-2/OM.json new file mode 100644 index 00000000..afc86c67 --- /dev/null +++ b/data/iso_3166-2/OM.json @@ -0,0 +1,17 @@ +{ + "source": "http://www.geonames.org/OM/administrative-division-oman.html", + "country": "Oman", + "subdivisions": { + "BJ": "Al Batinah South", + "BS": "Shamāl al Bāţinah", + "BU": "Al Buraymī", + "DA": "Ad Dakhiliyah", + "MA": "Masqat", + "MU": "Musandam", + "SJ": "Ash Sharqiyah South", + "SS": "Shamāl ash Sharqīyah", + "WU": "Al Wusta", + "ZA": "Az Zahirah", + "ZU": "Zufar" + } +} diff --git a/data/iso_3166-2/PA.json b/data/iso_3166-2/PA.json new file mode 100644 index 00000000..d27d00b7 --- /dev/null +++ b/data/iso_3166-2/PA.json @@ -0,0 +1,19 @@ +{ + "source": "http://www.geonames.org/PA/administrative-division-panama.html", + "country": "Panama", + "subdivisions": { + "1": "Bocas del Toro", + "10": "Panamá Oeste Province", + "2": "Cocle", + "3": "Colon", + "4": "Chiriqui", + "5": "Darien", + "6": "Herrera", + "7": "Los Santos", + "8": "Panama", + "9": "Veraguas", + "EM": "Comarca Emberá-Wounaan", + "KY": "Comarca de Kuna Yala", + "NB": "Ngöbe-Buglé" + } +} diff --git a/data/iso_3166-2/PE.json b/data/iso_3166-2/PE.json new file mode 100644 index 00000000..980a0b7d --- /dev/null +++ b/data/iso_3166-2/PE.json @@ -0,0 +1,32 @@ +{ + "source": "http://www.geonames.org/PE/administrative-division-peru.html", + "country": "Peru", + "subdivisions": { + "AMA": "Amazonas", + "ANC": "Ancash", + "APU": "Apurimac", + "ARE": "Arequipa", + "AYA": "Ayacucho", + "CAJ": "Cajamarca", + "CAL": "Callao", + "CUS": "Cusco", + "HUC": "Huanuco", + "HUV": "Huancavelica", + "ICA": "Ica", + "JUN": "Junin", + "LAL": "La Libertad", + "LAM": "Lambayeque", + "LIM": "Lima", + "LMA": "Municipalidad Metropolitana de Lima", + "LOR": "Loreto", + "MDD": "Madre de Dios", + "MOQ": "Moquegua", + "PAS": "Pasco", + "PIU": "Piura", + "PUN": "Puno", + "SAM": "San Martin", + "TAC": "Tacna", + "TUM": "Tumbes", + "UCA": "Ucayali" + } +} diff --git a/data/iso_3166-2/PF.json b/data/iso_3166-2/PF.json new file mode 100644 index 00000000..4893342b --- /dev/null +++ b/data/iso_3166-2/PF.json @@ -0,0 +1,11 @@ +{ + "source": "http://www.geonames.org/PF/administrative-division-french-polynesia.html", + "country": "French Polynesia", + "subdivisions": { + "I": "Austral Islands", + "M": "Marquesas Islands", + "S": "Iles Sous-le-Vent", + "T": "Tuamotu-Gambier", + "V": "Iles du Vent" + } +} diff --git a/data/iso_3166-2/PG.json b/data/iso_3166-2/PG.json new file mode 100644 index 00000000..193ae9b0 --- /dev/null +++ b/data/iso_3166-2/PG.json @@ -0,0 +1,28 @@ +{ + "source": "http://www.geonames.org/PG/administrative-division-papua-new-guinea.html", + "country": "Papua New Guinea", + "subdivisions": { + "CPK": "Chimbu", + "CPM": "Central", + "EBR": "East New Britain", + "EHG": "Eastern Highlands", + "EPW": "Enga", + "ESW": "East Sepik", + "GPK": "Gulf", + "HLA": "Hela", + "JWK": "Jiwaka", + "MBA": "Milne Bay", + "MPL": "Morobe", + "MPM": "Madang", + "MRL": "Manus", + "NCD": "National Capital", + "NIK": "New Ireland", + "NPP": "Northern", + "NSB": "Bougainville", + "SAN": "Sandaun", + "SHM": "Southern Highlands", + "WBK": "West New Britain", + "WHM": "Western Highlands", + "WPD": "Western" + } +} diff --git a/data/iso_3166-2/PH.json b/data/iso_3166-2/PH.json new file mode 100644 index 00000000..ab98eb5f --- /dev/null +++ b/data/iso_3166-2/PH.json @@ -0,0 +1,104 @@ +{ + "source": "http://www.geonames.org/PH/administrative-division-philippines.html", + "country": "Philippines", + "subdivisions": { + "00": "National Capital Region", + "01": "Ilocos", + "02": "Cagayan Valley", + "03": "Central Luzon", + "05": "Bicol", + "06": "Western Visayas", + "07": "Central Visayas", + "08": "Eastern Visayas", + "09": "Zamboanga Peninsula", + "10": "Northern Mindanao", + "11": "Davao", + "12": "Soccsksargen", + "13": "Caraga", + "14": "Autonomous Region in Muslim Mindanao,", + "15": "Cordillera Administrative Region", + "40": "Calabarzon", + "41": "Mimaropa", + "ABR": "Abra", + "AGN": "Agusan del Norte", + "AGS": "Agusan del Sur", + "AKL": "Aklan", + "ALB": "Albay", + "ANT": "Antique", + "APA": "Apayao", + "AUR": "Aurora", + "BAN": "Bataan", + "BAS": "Basilan", + "BEN": "Benguet", + "BIL": "Biliran", + "BOH": "Bohol", + "BTG": "Batangas", + "BTN": "Batanes", + "BUK": "Bukidnon", + "BUL": "Bulacan", + "CAG": "Cagayan", + "CAM": "Camiguin", + "CAN": "Camarines Norte", + "CAP": "Capiz", + "CAS": "Camarines Sur", + "CAT": "Catanduanes", + "CAV": "Cavite", + "CEB": "Cebu", + "COM": "Compostela Valley", + "DAO": "Davao Oriental", + "DAS": "Davao del Sur", + "DAV": "Davao del Norte", + "DIN": "Dinagat Islands", + "DVO": "Davao Occidental", + "EAS": "Eastern Samar", + "GUI": "Guimaras", + "IFU": "Ifugao", + "ILI": "Iloilo", + "ILN": "Ilocos Norte", + "ILS": "Ilocos Sur", + "ISA": "Isabela", + "KAL": "Kalinga", + "LAG": "Laguna", + "LAN": "Lanao del Norte", + "LAS": "Lanao del Sur", + "LEY": "Leyte", + "LUN": "La Union", + "MAD": "Marinduque", + "MAG": "Maguindanao", + "MAS": "Masbate", + "MDC": "Mindoro Occidental", + "MDR": "Mindoro Oriental", + "MOU": "Mountain Province", + "MSC": "Misamis Occidental", + "MSR": "Misamis Oriental", + "NCO": "North Cotabato", + "NEC": "Negros Occidental", + "NER": "Negros Oriental", + "NSA": "Northern Samar", + "NUE": "Nueva Ecija", + "NUV": "Nueva Vizcaya", + "PAM": "Pampanga", + "PAN": "Pangasinan", + "PLW": "Palawan", + "QUE": "Quezon", + "QUI": "Quirino", + "RIZ": "Rizal", + "ROM": "Romblon", + "SAR": "Sarangani", + "SCO": "South Cotabato", + "SIG": "Siquijor", + "SLE": "Southern Leyte", + "SLU": "Sulu", + "SOR": "Sorsogon", + "SUK": "Sultan Kudarat", + "SUN": "Surigao del Norte", + "SUR": "Surigao del Sur", + "TAR": "Tarlac", + "TAW": "Tawi-Tawi", + "WSA": "Western Samar", + "ZAN": "Zamboanga del Norte", + "ZAS": "Zamboanga del Sur", + "ZMB": "Zambales", + "ZSI": "Zamboanga Sibugay" + } +} diff --git a/data/iso_3166-2/PK.json b/data/iso_3166-2/PK.json new file mode 100644 index 00000000..afdba83a --- /dev/null +++ b/data/iso_3166-2/PK.json @@ -0,0 +1,14 @@ +{ + "source": "http://www.geonames.org/PK/administrative-division-pakistan.html", + "country": "Pakistan", + "subdivisions": { + "BA": "Balochistan", + "GB": "Gilgit-Baltistan", + "IS": "Islamabad Capital Territory", + "JK": "Azad Kashmir", + "KP": "Khyber Pakhtunkhwa", + "PB": "Punjab", + "SD": "Sindh", + "TA": "Federally Administered Tribal Areas" + } +} diff --git a/data/iso_3166-2/PL.json b/data/iso_3166-2/PL.json new file mode 100644 index 00000000..8a350b11 --- /dev/null +++ b/data/iso_3166-2/PL.json @@ -0,0 +1,22 @@ +{ + "source": "http://www.geonames.org/PL/administrative-division-poland.html", + "country": "Poland", + "subdivisions": { + "DS": "Dolnoslaskie", + "KP": "Kujawsko-Pomorskie", + "LB": "Lubuskie", + "LD": "Lodzkie", + "LU": "Lubelskie", + "MA": "Malopolskie", + "MZ": "Mazowieckie", + "OP": "Opolskie", + "PD": "Podlaskie", + "PK": "Podkarpackie", + "PM": "Pomorskie", + "SK": "Swietokrzyskie", + "SL": "Slaskie", + "WN": "Warminsko-Mazurskie", + "WP": "Wielkopolskie", + "ZP": "Zachodniopomorskie" + } +} diff --git a/data/iso_3166-2/PM.json b/data/iso_3166-2/PM.json new file mode 100644 index 00000000..39ecd4b5 --- /dev/null +++ b/data/iso_3166-2/PM.json @@ -0,0 +1,8 @@ +{ + "source": "http://www.geonames.org/PM/administrative-division-saint-pierre-and-miquelon.html", + "country": "Saint Pierre and Miquelon", + "subdivisions": { + "M": "Miquelon", + "P": "Saint Pierre" + } +} diff --git a/data/iso_3166-2/PN.json b/data/iso_3166-2/PN.json new file mode 100644 index 00000000..2abd0b94 --- /dev/null +++ b/data/iso_3166-2/PN.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/PN/administrative-division-pitcairn-islands.html", + "country": "Pitcairn Islands", + "subdivisions": [] +} diff --git a/data/iso_3166-2/PR.json b/data/iso_3166-2/PR.json new file mode 100644 index 00000000..57cb44df --- /dev/null +++ b/data/iso_3166-2/PR.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/PR/administrative-division-puerto-rico.html", + "country": "Puerto Rico", + "subdivisions": [] +} diff --git a/data/iso_3166-2/PS.json b/data/iso_3166-2/PS.json new file mode 100644 index 00000000..7d451e55 --- /dev/null +++ b/data/iso_3166-2/PS.json @@ -0,0 +1,22 @@ +{ + "source": "http://www.geonames.org/PS/administrative-division-palestine.html", + "country": "Palestine", + "subdivisions": { + "BTH": "Bethlehem [conventional] / Bayt Laḩm [Arabic]", + "DEB": "Deir El Balah [conventional] /Dayr al Balaḩ[Arabic]", + "GZA": "Gaza [conventional] / Ghazzah[Arabic]", + "HBN": "Hebron [conventional] / Al Khalīl [Arabic]", + "JEM": "Jerusalem [conventional] / Al Quds [Arabic]", + "JEN": "Jenin [conventional] / Janīn [Arabic]", + "JRH": "Jericho [conventional] / Arīḩā wal Aghwār [Arabic]", + "KYS": "Khan Yunis [conventional] / Khān Yūnis[Arabic]", + "NBS": "Nablus [conventional] / Nāblus [Arabic]", + "NGZ": "North Gaza [conventional] / Shamāl Ghazzah[Arabic]", + "QQA": "Qalqiyah [conventional] / Qalqīlyah [Arabic]", + "RBH": "Ramallah and Al Birah [conventional] / Rām Allāh wal Bīrah [Arabic]", + "RFH": "Rafah [conventional] / Rafaḩ[Arabic]", + "SLT": "Salfit [conventional] / Salfīt [Arabic]", + "TBS": "Tubas [conventional] / Ţūbās [Arabic]", + "TKM": "Tulkarm [conventional] /Ţūlkarm [Arabic]" + } +} diff --git a/data/iso_3166-2/PT.json b/data/iso_3166-2/PT.json new file mode 100644 index 00000000..8d67658e --- /dev/null +++ b/data/iso_3166-2/PT.json @@ -0,0 +1,26 @@ +{ + "source": "http://www.geonames.org/PT/administrative-division-portugal.html", + "country": "Portugal", + "subdivisions": { + "01": "Aveiro", + "02": "Beja", + "03": "Braga", + "04": "Braganca", + "05": "Castelo Branco", + "06": "Coimbra", + "07": "Evora", + "08": "Faro", + "09": "Guarda", + "10": "Leiria", + "11": "Lisboa", + "12": "Portalegre", + "13": "Porto", + "14": "Santarem", + "15": "Setubal", + "16": "Viana do Castelo", + "17": "Vila Real", + "18": "Viseu", + "20": "Acores (Azores)", + "30": "Madeira" + } +} diff --git a/data/iso_3166-2/PW.json b/data/iso_3166-2/PW.json new file mode 100644 index 00000000..fcdf07f3 --- /dev/null +++ b/data/iso_3166-2/PW.json @@ -0,0 +1,22 @@ +{ + "source": "http://www.geonames.org/PW/administrative-division-palau.html", + "country": "Palau", + "subdivisions": { + "002": "Aimeliik", + "004": "Airai", + "010": "Angaur", + "050": "Hatohobei", + "100": "Kayangel", + "150": "Koror", + "212": "Melekeok", + "214": "Ngaraard", + "218": "Ngarchelong", + "222": "Ngardmau", + "224": "Ngatpang", + "226": "Ngchesar", + "227": "Ngeremlengui", + "228": "Ngiwal", + "350": "Peleliu", + "370": "Sonsorol" + } +} diff --git a/data/iso_3166-2/PY.json b/data/iso_3166-2/PY.json new file mode 100644 index 00000000..73becf56 --- /dev/null +++ b/data/iso_3166-2/PY.json @@ -0,0 +1,24 @@ +{ + "source": "http://www.geonames.org/PY/administrative-division-paraguay.html", + "country": "Paraguay", + "subdivisions": { + "1": "Concepcion", + "10": "Alto Parana", + "11": "Central", + "12": "Neembucu", + "13": "Amambay", + "14": "Canindeyu", + "15": "Presidente Hayes", + "16": "Alto Paraguay", + "19": "Boqueron", + "2": "San Pedro", + "3": "Cordillera", + "4": "Guaira", + "5": "Caaguazu", + "6": "Caazapa", + "7": "Itapua", + "8": "Misiones", + "9": "Paraguari", + "ASU": "Asuncion" + } +} diff --git a/data/iso_3166-2/QA.json b/data/iso_3166-2/QA.json new file mode 100644 index 00000000..b1d77921 --- /dev/null +++ b/data/iso_3166-2/QA.json @@ -0,0 +1,14 @@ +{ + "source": "http://www.geonames.org/QA/administrative-division-qatar.html", + "country": "Qatar", + "subdivisions": { + "DA": "Ad Dawhah", + "KH": "Al Khawr wa adh Dhakhīrah", + "MS": "Ash Shamāl", + "RA": "Ar Rayyan", + "SH": "Al-Shahaniya", + "US": "Umm Salal", + "WA": "Al Wakrah", + "ZA": "Az Z a‘āyin" + } +} diff --git a/data/iso_3166-2/RE.json b/data/iso_3166-2/RE.json new file mode 100644 index 00000000..dc726fc1 --- /dev/null +++ b/data/iso_3166-2/RE.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/RE/administrative-division-reunion.html", + "country": "Réunion", + "subdivisions": [] +} diff --git a/data/iso_3166-2/RO.json b/data/iso_3166-2/RO.json new file mode 100644 index 00000000..2b97d44f --- /dev/null +++ b/data/iso_3166-2/RO.json @@ -0,0 +1,48 @@ +{ + "source": "http://www.geonames.org/RO/administrative-division-romania.html", + "country": "Romania", + "subdivisions": { + "AB": "Alba", + "AG": "Arges", + "AR": "Arad", + "B": "Bucuresti", + "BC": "Bacau", + "BH": "Bihor", + "BN": "Bistrita-Nasaud", + "BR": "Braila", + "BT": "Botosani", + "BV": "Brasov", + "BZ": "Buzau", + "CJ": "Cluj", + "CL": "Calarasi", + "CS": "Caras-Severin", + "CT": "Constanta", + "CV": "Covasna", + "DB": "Dimbovita", + "DJ": "Dolj", + "GJ": "Gorj", + "GL": "Galati", + "GR": "Giurgiu", + "HD": "Hunedoara", + "HR": "Harghita", + "IF": "Ilfov", + "IL": "Ialomita", + "IS": "Iasi", + "MH": "Mehedinti", + "MM": "Maramures", + "MS": "Mures", + "NT": "Neamt", + "OT": "Olt", + "PH": "Prahova", + "SB": "Sibiu", + "SJ": "Salaj", + "SM": "Satu Mare", + "SV": "Suceava", + "TL": "Tulcea", + "TM": "Timis", + "TR": "Teleorman", + "VL": "Vilcea", + "VN": "Vrancea", + "VS": "Vaslui" + } +} diff --git a/data/iso_3166-2/RS.json b/data/iso_3166-2/RS.json new file mode 100644 index 00000000..4853b68c --- /dev/null +++ b/data/iso_3166-2/RS.json @@ -0,0 +1,38 @@ +{ + "source": "http://www.geonames.org/RS/administrative-division-serbia.html", + "country": "Serbia", + "subdivisions": { + "00": "Beograd", + "01": "Severnobački okrug", + "02": "Srednjebanatski okrug", + "03": "Severnobanatski okrug", + "04": "Južnobanatski okrug", + "05": "Zapadno-Bački Okrug", + "06": "Južnobački okrug", + "07": "Srem", + "08": "Mačvanski okrug", + "09": "Kolubarski okrug", + "10": "Podunavski okrug", + "11": "Braničevski okrug", + "12": "Šumadija", + "13": "Pomoravski okrug", + "14": "Borski okrug", + "15": "Zaječarski okrug", + "16": "Zlatibor", + "17": "Moravički okrug", + "18": "Raški okrug", + "19": "Rasinski okrug", + "20": "Nišavski okrug", + "21": "Toplica", + "22": "Pirotski okrug", + "23": "Jablanički okrug", + "24": "Pčinjski okrug", + "25": "Kosovski okrug", + "26": "Pećki okrug", + "27": "Prizrenski okrug", + "28": "Kosovsko-Mitrovački okrug", + "29": "Kosovsko-Pomoravski okrug", + "KM": "Kosovo", + "VO": "Vojvodina" + } +} diff --git a/data/iso_3166-2/RU.json b/data/iso_3166-2/RU.json new file mode 100644 index 00000000..ffa4de7c --- /dev/null +++ b/data/iso_3166-2/RU.json @@ -0,0 +1,89 @@ +{ + "source": "http://www.geonames.org/RU/administrative-division-russia.html", + "country": "Russia", + "subdivisions": { + "AD": "Adygeya", + "AL": "Altai Republic", + "ALT": "Altai Krai", + "AMU": "Amur", + "ARK": "Arkhangelsk", + "AST": "Astrakhan", + "BA": "Bashkortostan", + "BEL": "Belgorod", + "BRY": "Bryansk", + "BU": "Buryatia", + "CE": "Chechnya", + "CHE": "Chelyabinsk", + "CHU": "Chukotka", + "CU": "Chuvashia", + "DA": "Dagestan", + "IN": "Ingushetia", + "IRK": "Irkutsk", + "IVA": "Ivanovo", + "KAM": "Kamchatka", + "KB": "Kabardino-Balkaria", + "KC": "Karachay-Cherkessia", + "KDA": "Krasnodar", + "KEM": "Kemerovo", + "KGD": "Kaliningrad", + "KGN": "Kurgan", + "KHA": "Khabarovsk", + "KHM": "Khantia-Mansia", + "KIR": "Kirov", + "KK": "Khakassia", + "KL": "Kalmykia", + "KLU": "Kaluga", + "KO": "Komi", + "KOS": "Kostroma", + "KR": "Karelia", + "KRS": "Kursk", + "KYA": "Krasnoyarsk", + "LEN": "Leningrad", + "LIP": "Lipetsk", + "MAG": "Magadan", + "ME": "Mari El", + "MO": "Mordovia", + "MOS": "Moscow (Province)", + "MOW": "Moscow (City)", + "MUR": "Murmansk", + "NEN": "Nenetsia", + "NGR": "Novgorod", + "NIZ": "Nizhny Novgorod", + "NVS": "Novosibirsk", + "OMS": "Omsk", + "ORE": "Orenburg", + "ORL": "Oryol", + "PER": "Perm", + "PNZ": "Penza", + "PRI": "Primorsky", + "PSK": "Pskov", + "ROS": "Rostov", + "RYA": "Ryazan", + "SA": "Sakha", + "SAK": "Sakhalin", + "SAM": "Samara", + "SAR": "Saratov", + "SE": "North Ossetia", + "SMO": "Smolensk", + "SPE": "St. Petersburg", + "STA": "Stavropol", + "SVE": "Sverdlovsk", + "TA": "Tatarstan", + "TAM": "Tambov", + "TOM": "Tomsk", + "TUL": "Tula", + "TVE": "Tver", + "TY": "Tuva", + "TYU": "Tyumen", + "UD": "Udmurtia", + "ULY": "Ulynovsk", + "VGG": "Volgograd", + "VLA": "Vladimir", + "VLG": "Vologda", + "VOR": "Voronezh", + "YAN": "Yamalia", + "YAR": "Yaroslavl", + "YEV": "Jewish Oblast", + "ZAB": "Zabaykal'skiy kray" + } +} diff --git a/data/iso_3166-2/RW.json b/data/iso_3166-2/RW.json new file mode 100644 index 00000000..6ae36afb --- /dev/null +++ b/data/iso_3166-2/RW.json @@ -0,0 +1,11 @@ +{ + "source": "http://www.geonames.org/RW/administrative-division-rwanda.html", + "country": "Rwanda", + "subdivisions": { + "01": "Kigali", + "02": "Est", + "03": "Nord", + "04": "Ouest", + "05": "Sud" + } +} diff --git a/data/iso_3166-2/SA.json b/data/iso_3166-2/SA.json new file mode 100644 index 00000000..9780f115 --- /dev/null +++ b/data/iso_3166-2/SA.json @@ -0,0 +1,19 @@ +{ + "source": "http://www.geonames.org/SA/administrative-division-saudi-arabia.html", + "country": "Saudi Arabia", + "subdivisions": { + "01": "Ar Riyad", + "02": "Makkah", + "03": "Al Madinah", + "04": "Ash Sharqiyah (Eastern Province)", + "05": "Al Qasim", + "06": "Ha'il", + "07": "Tabuk", + "08": "Al Hudud ash Shamaliyah", + "09": "Jizan", + "10": "Najran", + "11": "Al Bahah", + "12": "Al Jawf", + "14": "'Asir" + } +} diff --git a/data/iso_3166-2/SB.json b/data/iso_3166-2/SB.json new file mode 100644 index 00000000..b90fc4cb --- /dev/null +++ b/data/iso_3166-2/SB.json @@ -0,0 +1,16 @@ +{ + "source": "http://www.geonames.org/SB/administrative-division-solomon-islands.html", + "country": "Solomon Islands", + "subdivisions": { + "CE": "Central", + "CH": "Choiseul", + "CT": "Capital Territory", + "GU": "Guadalcanal", + "IS": "Isabel", + "MK": "Makira", + "ML": "Malaita", + "RB": "Rennell and Bellona", + "TE": "Temotu", + "WE": "Western" + } +} diff --git a/data/iso_3166-2/SC.json b/data/iso_3166-2/SC.json new file mode 100644 index 00000000..fa48f09d --- /dev/null +++ b/data/iso_3166-2/SC.json @@ -0,0 +1,31 @@ +{ + "source": "http://www.geonames.org/SC/administrative-division-seychelles.html", + "country": "Seychelles", + "subdivisions": { + "01": "Anse aux Pins", + "02": "Anse Boileau", + "03": "Anse Etoile", + "04": "Anse Louis", + "05": "Anse Royale", + "06": "Baie Lazare", + "07": "Baie Sainte Anne", + "08": "Beau Vallon", + "09": "Bel Air", + "10": "Bel Ombre", + "11": "Cascade", + "12": "Glacis", + "13": "Grand' Anse (on Mahe)", + "14": "Grand' Anse (on Praslin)", + "15": "La Digue", + "16": "La Riviere Anglaise", + "17": "Mont Buxton", + "18": "Mont Fleuri", + "19": "Plaisance", + "20": "Pointe La Rue", + "21": "Port Glaud", + "22": "Saint Louis", + "23": "Takamaka", + "24": "Les Mamelles", + "25": "Roche Caïman" + } +} diff --git a/data/iso_3166-2/SD.json b/data/iso_3166-2/SD.json new file mode 100644 index 00000000..00ad8965 --- /dev/null +++ b/data/iso_3166-2/SD.json @@ -0,0 +1,24 @@ +{ + "source": "http://www.geonames.org/SD/administrative-division-sudan.html", + "country": "Sudan", + "subdivisions": { + "DC": "Wasaţ Dārfūr", + "DE": "Sharq Dārfūr", + "DN": "Shamāl Dārfūr", + "DS": "Janūb Dārfūr", + "DW": "Gharb Dārfūr", + "GD": "Al Qaḑārif", + "GK": "West Kurdufan", + "GZ": "Al Jazīrah", + "KA": "Kassalā", + "KH": "Al Kharţūm", + "KN": "Shamāl Kurdufān", + "KS": "Janūb Kurdufān", + "NB": "An Nīl al Azraq", + "NO": "Ash Shamālīyah", + "NR": "An Nīl", + "NW": "An Nīl al Abyaḑ", + "RS": "Al Baḩr al Aḩmar", + "SI": "Sinnār" + } +} diff --git a/data/iso_3166-2/SE.json b/data/iso_3166-2/SE.json new file mode 100644 index 00000000..5211a38c --- /dev/null +++ b/data/iso_3166-2/SE.json @@ -0,0 +1,27 @@ +{ + "source": "http://www.geonames.org/SE/administrative-division-sweden.html", + "country": "Sweden", + "subdivisions": { + "AB": "Stockholms", + "AC": "Vasterbottens", + "BD": "Norrbottens", + "C": "Uppsala", + "D": "Sodermanlands", + "E": "Ostergotlands", + "F": "Jonkopings", + "G": "Kronobergs", + "H": "Kalmar", + "I": "Gotlands", + "K": "Blekinge", + "M": "Skåne", + "N": "Hallands", + "O": "Västra Götaland", + "S": "Varmlands", + "T": "Orebro", + "U": "Vastmanlands", + "W": "Dalarna", + "X": "Gavleborgs", + "Y": "Vasternorrlands", + "Z": "Jamtlands" + } +} diff --git a/data/iso_3166-2/SG.json b/data/iso_3166-2/SG.json new file mode 100644 index 00000000..20b9cca9 --- /dev/null +++ b/data/iso_3166-2/SG.json @@ -0,0 +1,11 @@ +{ + "source": "http://www.geonames.org/SG/administrative-division-singapore.html", + "country": "Singapore", + "subdivisions": { + "01": "Central Singapore", + "02": "North East", + "03": "North West", + "04": "South East", + "05": "South West" + } +} diff --git a/data/iso_3166-2/SH.json b/data/iso_3166-2/SH.json new file mode 100644 index 00000000..78aa21bd --- /dev/null +++ b/data/iso_3166-2/SH.json @@ -0,0 +1,9 @@ +{ + "source": "http://www.geonames.org/SH/administrative-division-saint-helena.html", + "country": "Saint Helena", + "subdivisions": { + "AC": "Ascension", + "HL": "Saint Helena", + "TA": "Tristan da Cunha" + } +} diff --git a/data/iso_3166-2/SI.json b/data/iso_3166-2/SI.json new file mode 100644 index 00000000..fbbc5a56 --- /dev/null +++ b/data/iso_3166-2/SI.json @@ -0,0 +1,218 @@ +{ + "source": "http://www.geonames.org/SI/administrative-division-slovenia.html", + "country": "Slovenia", + "subdivisions": { + "001": "Ajdovščina", + "002": "Beltinci", + "003": "Bled", + "004": "Bohinj", + "005": "Borovnica", + "006": "Bovec", + "007": "Brda", + "008": "Brezovica", + "009": "Brežice", + "010": "Tišina", + "011": "Celje", + "012": "Cerklje na Gorenjskem", + "013": "Cerknica", + "014": "Cerkno", + "015": "Črenšovci", + "016": "Črna na Koroškem", + "017": "Črnomelj", + "018": "Destrnik", + "019": "Divača", + "020": "Dobrepolje", + "021": "Dobrova-Polhov Gradec", + "022": "Dol pri Ljubljani", + "023": "Domžale", + "024": "Dornava", + "025": "Dravograd", + "026": "Duplek", + "027": "Gorenja Vas-Poljane", + "028": "Gorišnica", + "029": "Gornja Radgona", + "030": "Gornji Grad", + "031": "Gornji Petrovci", + "032": "Grosuplje", + "033": "Šalovci", + "034": "Hrastnik", + "035": "Hrpelje-Kozina", + "036": "Idrija", + "037": "Ig", + "038": "Ilirska Bistrica", + "039": "Ivančna Gorica", + "040": "Izola/Isola", + "041": "Jesenice", + "042": "Juršinci", + "043": "Kamnik", + "044": "Kanal", + "045": "Kidričevo", + "046": "Kobarid", + "047": "Kobilje", + "048": "Kočevje", + "049": "Komen", + "050": "Koper/Capodistria", + "051": "Kozje", + "052": "Kranj", + "053": "Kranjska Gora", + "054": "Krško", + "055": "Kungota", + "056": "Kuzma", + "057": "Laško", + "058": "Lenart", + "059": "Lendava/Lendva", + "060": "Litija", + "061": "Ljubljana", + "062": "Ljubno", + "063": "Ljutomer", + "064": "Logatec", + "065": "Loška Dolina", + "066": "Loški Potok", + "067": "Luče", + "068": "Lukovica", + "069": "Majšperk", + "070": "Maribor", + "071": "Medvode", + "072": "Mengeš", + "073": "Metlika", + "074": "Mežica", + "075": "Miren-Kostanjevica", + "076": "Mislinja", + "077": "Moravče", + "078": "Moravske Toplice", + "079": "Mozirje", + "080": "Murska Sobota", + "081": "Muta", + "082": "Naklo", + "083": "Nazarje", + "084": "Nova Gorica", + "085": "Novo Mesto", + "086": "Odranci", + "087": "Ormož", + "088": "Osilnica", + "089": "Pesnica", + "090": "Piran/Pirano", + "091": "Pivka", + "092": "Podčetrtek", + "093": "Podvelka", + "094": "Postojna", + "095": "Preddvor", + "096": "Ptuj", + "097": "Puconci", + "098": "Rače-Fram", + "099": "Radeče", + "100": "Radenci", + "101": "Radlje ob Dravi", + "102": "Radovljica", + "103": "Ravne na Koroškem", + "104": "Ribnica", + "105": "Rogašovci", + "106": "Rogaška Slatina", + "107": "Rogatec", + "108": "Ruše", + "109": "Semič", + "110": "Sevnica", + "111": "Sežana", + "112": "Slovenj Gradec", + "113": "Slovenska Bistrica", + "114": "Slovenske Konjice", + "115": "Starše", + "116": "Sveti Jurij", + "117": "Šenčur", + "118": "Šentilj", + "119": "Šentjernej", + "120": "Šentjur", + "121": "Škocjan", + "122": "Škofja Loka", + "123": "Škofljica", + "124": "Šmarje pri Jelšah", + "125": "Šmartno ob Paki", + "126": "Šoštanj", + "127": "Štore", + "128": "Tolmin", + "129": "Trbovlje", + "130": "Trebnje", + "131": "Tržič", + "132": "Turnišče", + "133": "Velenje", + "134": "Velike Lašče", + "135": "Videm", + "136": "Vipava", + "137": "Vitanje", + "138": "Vodice", + "139": "Vojnik", + "140": "Vrhnika", + "141": "Vuzenica", + "142": "Zagorje ob Savi", + "143": "Zavrč", + "144": "Zreče", + "146": "Železniki", + "147": "Žiri", + "148": "Benedikt", + "149": "Bistrica ob Sotli", + "150": "Bloke", + "151": "Braslovče", + "152": "Cankova", + "153": "Cerkvenjak", + "154": "Dobje", + "155": "Dobrna", + "156": "Dobrovnik-Dobronak", + "157": "Dolenjske Toplice", + "158": "Grad", + "159": "Hajdina", + "160": "Hoče-Slivnica", + "161": "Hodoš/Hodos", + "162": "Horjul", + "163": "Jezersko", + "164": "Komenda", + "165": "Kostel", + "166": "Križevci", + "167": "Lovrenc na Pohorju", + "168": "Markovci", + "169": "Miklavž na Dravskem polju", + "170": "Mirna Peč", + "171": "Oplotnica", + "172": "Podlehnik", + "173": "Polzela", + "174": "Prebold", + "175": "Prevalje", + "176": "Razkrižje", + "177": "Ribnica na Pohorju", + "178": "Selnica ob Dravi", + "179": "Sodražica", + "180": "Solčava", + "181": "Sveta Ana", + "182": "Sveti Andraž v Slovenskih goricah", + "183": "Šempeter-Vrtojba", + "184": "Tabor", + "185": "Trnovska vas", + "186": "Trzin", + "187": "Velika Polana", + "188": "Veržej", + "189": "Vransko", + "190": "Žalec", + "191": "Žetale", + "192": "Žirovnica", + "193": "Žužemberk", + "194": "Šmartno pri Litiji", + "195": "Apače", + "196": "Cirkulane", + "197": "Kosanjevica na Krki", + "198": "Makole", + "199": "Mokronog-Trebelno", + "200": "Poljčane", + "201": "Renče-Vogrsko", + "202": "Središče ob Dravi", + "203": "Straža", + "204": "Sveta Trojica v Slovenskih Goricah", + "205": "Sveti Tomaž", + "206": "Šmarješke Toplice", + "207": "Gorje", + "208": "Log-Dragomer", + "209": "Rečica ob Savinji", + "210": "Sveti Jurij v Slovenskih Goricah", + "211": "Šentrupert", + "212": "Mirna", + "213": "Ankaran" + } +} diff --git a/data/iso_3166-2/SJ.json b/data/iso_3166-2/SJ.json new file mode 100644 index 00000000..73a46976 --- /dev/null +++ b/data/iso_3166-2/SJ.json @@ -0,0 +1,8 @@ +{ + "source": "http://www.geonames.org/SJ/administrative-division-svalbard-and-jan-mayen.html", + "country": "Svalbard and Jan Mayen", + "subdivisions": { + "21": "Svalbard", + "22": "Jan Mayen" + } +} diff --git a/data/iso_3166-2/SK.json b/data/iso_3166-2/SK.json new file mode 100644 index 00000000..5086b185 --- /dev/null +++ b/data/iso_3166-2/SK.json @@ -0,0 +1,14 @@ +{ + "source": "http://www.geonames.org/SK/administrative-division-slovakia.html", + "country": "Slovakia", + "subdivisions": { + "BC": "Banskobystricky", + "BL": "Bratislavsky", + "KI": "Kosicky", + "NI": "Nitriansky", + "PV": "Presovsky", + "TA": "Trnavsky", + "TC": "Trenciansky", + "ZI": "Zilinsky" + } +} diff --git a/data/iso_3166-2/SL.json b/data/iso_3166-2/SL.json new file mode 100644 index 00000000..9aa119aa --- /dev/null +++ b/data/iso_3166-2/SL.json @@ -0,0 +1,11 @@ +{ + "source": "http://www.geonames.org/SL/administrative-division-sierra-leone.html", + "country": "Sierra Leone", + "subdivisions": { + "E": "Eastern", + "N": "Northern", + "NW": "North West Province", + "S": "Southern", + "W": "Western" + } +} diff --git a/data/iso_3166-2/SM.json b/data/iso_3166-2/SM.json new file mode 100644 index 00000000..932e2f8f --- /dev/null +++ b/data/iso_3166-2/SM.json @@ -0,0 +1,15 @@ +{ + "source": "http://www.geonames.org/SM/administrative-division-san-marino.html", + "country": "San Marino", + "subdivisions": { + "01": "Acquaviva", + "02": "Chiesanuova", + "03": "Domagnano", + "04": "Faetano", + "05": "Fiorentino", + "06": "Borgo Maggiore", + "07": "Citta di San Marino", + "08": "Montegiardino", + "09": "Serravalle" + } +} diff --git a/data/iso_3166-2/SN.json b/data/iso_3166-2/SN.json new file mode 100644 index 00000000..84101346 --- /dev/null +++ b/data/iso_3166-2/SN.json @@ -0,0 +1,20 @@ +{ + "source": "http://www.geonames.org/SN/administrative-division-senegal.html", + "country": "Senegal", + "subdivisions": { + "DB": "Diourbel", + "DK": "Dakar", + "FK": "Fatick", + "KA": "Kaffrine", + "KD": "Kolda", + "KE": "Kédougou", + "KL": "Kaolack", + "LG": "Louga", + "MT": "Matam", + "SE": "Sédhiou", + "SL": "Saint-Louis", + "TC": "Tambacounda", + "TH": "Thies", + "ZG": "Ziguinchor" + } +} diff --git a/data/iso_3166-2/SO.json b/data/iso_3166-2/SO.json new file mode 100644 index 00000000..3dfb0cb5 --- /dev/null +++ b/data/iso_3166-2/SO.json @@ -0,0 +1,24 @@ +{ + "source": "http://www.geonames.org/SO/administrative-division-somalia.html", + "country": "Somalia", + "subdivisions": { + "AW": "Awdal", + "BK": "Bakool", + "BN": "Banaadir", + "BR": "Bari", + "BY": "Bay", + "GA": "Galguduud", + "GE": "Gedo", + "HI": "Hiiraan", + "JD": "Jubbada Dhexe", + "JH": "Jubbada Hoose", + "MU": "Mudug", + "NU": "Nugaal", + "SA": "Sanaag", + "SD": "Shabeellaha Dhexe", + "SH": "Shabeellaha Hoose", + "SO": "Sool", + "TO": "Togdheer", + "WO": "Woqooyi Galbeed" + } +} diff --git a/data/iso_3166-2/SR.json b/data/iso_3166-2/SR.json new file mode 100644 index 00000000..c1ba7de8 --- /dev/null +++ b/data/iso_3166-2/SR.json @@ -0,0 +1,16 @@ +{ + "source": "http://www.geonames.org/SR/administrative-division-suriname.html", + "country": "Suriname", + "subdivisions": { + "BR": "Brokopondo", + "CM": "Commewijne", + "CR": "Coronie", + "MA": "Marowijne", + "NI": "Nickerie", + "PM": "Paramaribo", + "PR": "Para", + "SA": "Saramacca", + "SI": "Sipaliwini", + "WA": "Wanica" + } +} diff --git a/data/iso_3166-2/SS.json b/data/iso_3166-2/SS.json new file mode 100644 index 00000000..c9459688 --- /dev/null +++ b/data/iso_3166-2/SS.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/SS/administrative-division-south-sudan.html", + "country": "South Sudan", + "subdivisions": [] +} diff --git a/data/iso_3166-2/ST.json b/data/iso_3166-2/ST.json new file mode 100644 index 00000000..50fe8580 --- /dev/null +++ b/data/iso_3166-2/ST.json @@ -0,0 +1,8 @@ +{ + "source": "http://www.geonames.org/ST/administrative-division-sao-tome-and-principe.html", + "country": "São Tomé and Príncipe", + "subdivisions": { + "P": "Principe", + "S": "Sao Tome" + } +} diff --git a/data/iso_3166-2/SV.json b/data/iso_3166-2/SV.json new file mode 100644 index 00000000..ca4f7e58 --- /dev/null +++ b/data/iso_3166-2/SV.json @@ -0,0 +1,20 @@ +{ + "source": "http://www.geonames.org/SV/administrative-division-el-salvador.html", + "country": "El Salvador", + "subdivisions": { + "AH": "Ahuachapan", + "CA": "Cabanas", + "CH": "Chalatenango", + "CU": "Cuscatlan", + "LI": "La Libertad", + "MO": "Morazan", + "PA": "La Paz", + "SA": "Santa Ana", + "SM": "San Miguel", + "SO": "Sonsonate", + "SS": "San Salvador", + "SV": "San Vicente", + "UN": "La Union", + "US": "Usulutan" + } +} diff --git a/data/iso_3166-2/SX.json b/data/iso_3166-2/SX.json new file mode 100644 index 00000000..f32f2325 --- /dev/null +++ b/data/iso_3166-2/SX.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/SX/administrative-division-sint-maarten.html", + "country": "Sint Maarten", + "subdivisions": [] +} diff --git a/data/iso_3166-2/SY.json b/data/iso_3166-2/SY.json new file mode 100644 index 00000000..8fba8fe4 --- /dev/null +++ b/data/iso_3166-2/SY.json @@ -0,0 +1,20 @@ +{ + "source": "http://www.geonames.org/SY/administrative-division-syria.html", + "country": "Syria", + "subdivisions": { + "DI": "Dimashq", + "DR": "Dara", + "DY": "Dayr az Zawr", + "HA": "Al Hasakah", + "HI": "Hims", + "HL": "Halab", + "HM": "Hamah", + "ID": "Idlib", + "LA": "Al Ladhiqiyah", + "QU": "Al Qunaytirah", + "RA": "Ar Raqqah", + "RD": "Rif Dimashq", + "SU": "As Suwayda", + "TA": "Tartus" + } +} diff --git a/data/iso_3166-2/SZ.json b/data/iso_3166-2/SZ.json new file mode 100644 index 00000000..122b18e4 --- /dev/null +++ b/data/iso_3166-2/SZ.json @@ -0,0 +1,10 @@ +{ + "source": "http://www.geonames.org/SZ/administrative-division-swaziland.html", + "country": "Swaziland", + "subdivisions": { + "HH": "Hhohho", + "LU": "Lubombo", + "MA": "Manzini", + "SH": "Shishelweni" + } +} diff --git a/data/iso_3166-2/TC.json b/data/iso_3166-2/TC.json new file mode 100644 index 00000000..60732cbb --- /dev/null +++ b/data/iso_3166-2/TC.json @@ -0,0 +1,20 @@ +{ + "source": "http://www.geonames.org/TC/administrative-division-turks-and-caicos-islands.html", + "country": "Turks and Caicos Islands", + "subdivisions": { + "AC": "Ambergris Cays", + "DC": "Dellis Cay", + "EC": "East Caicos", + "FC": "French Cay", + "GT": "Grand Turk", + "LW": "Little Water Cay", + "MC": "Middle Caicos", + "NC": "North Caicos", + "PN": "Pine Cay", + "PR": "Providenciales", + "RC": "Parrot Cay", + "SC": "South Caicos", + "SL": "Salt Cay", + "WC": "West Caicos" + } +} diff --git a/data/iso_3166-2/TD.json b/data/iso_3166-2/TD.json new file mode 100644 index 00000000..626d925e --- /dev/null +++ b/data/iso_3166-2/TD.json @@ -0,0 +1,29 @@ +{ + "source": "http://www.geonames.org/TD/administrative-division-chad.html", + "country": "Chad", + "subdivisions": { + "BA": "Batha", + "BG": "Barh el Ghazel", + "BO": "Borkou", + "CB": "Chari-Baguirmi", + "EE": "Ennedi Est", + "EO": "Ennedi Quest", + "GR": "Guéra", + "HL": "Hadjer-Lamis", + "KA": "Kanem", + "LC": "Lac", + "LO": "Logone Occidental", + "LR": "Logone Oriental", + "MA": "Mandoul", + "MC": "Moyen-Chari", + "ME": "Mayo-Kebbi Est", + "MO": "Mayo-Kebbi Ouest", + "ND": "Ville de N'Djamena", + "OD": "Ouaddaï", + "SA": "Salamat", + "SI": "Sila", + "TA": "Tandjile", + "TI": "Tibesti", + "WF": "Wadi Fira" + } +} diff --git a/data/iso_3166-2/TF.json b/data/iso_3166-2/TF.json new file mode 100644 index 00000000..f0571edf --- /dev/null +++ b/data/iso_3166-2/TF.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/TF/administrative-division-french-southern-territories.html", + "country": "French Southern Territories", + "subdivisions": [] +} diff --git a/data/iso_3166-2/TG.json b/data/iso_3166-2/TG.json new file mode 100644 index 00000000..14d9a9e0 --- /dev/null +++ b/data/iso_3166-2/TG.json @@ -0,0 +1,11 @@ +{ + "source": "http://www.geonames.org/TG/administrative-division-togo.html", + "country": "Togo", + "subdivisions": { + "C": "Centrale", + "K": "Kara", + "M": "Maritime", + "P": "Plateaux", + "S": "Savanes" + } +} diff --git a/data/iso_3166-2/TH.json b/data/iso_3166-2/TH.json new file mode 100644 index 00000000..8a0f9140 --- /dev/null +++ b/data/iso_3166-2/TH.json @@ -0,0 +1,84 @@ +{ + "source": "http://www.geonames.org/TH/administrative-division-thailand.html", + "country": "Thailand", + "subdivisions": { + "10": "Bangkok", + "11": "Samut Prakan", + "12": "Nonthaburi", + "13": "Pathum Thani", + "14": "Phra Nakhon Si Ayutthaya", + "15": "Ang Thong", + "16": "Lop Buri", + "17": "Sing Buri", + "18": "Chai Nat", + "19": "Saraburi", + "20": "Chon Buri", + "21": "Rayong", + "22": "Chanthaburi", + "23": "Trat", + "24": "Chachoengsao", + "25": "Prachin Buri", + "26": "Nakhon Nayok", + "27": "Sa Kaeo", + "30": "Nakhon Ratchasima", + "31": "Buri Ram", + "32": "Surin", + "33": "Si Sa Ket", + "34": "Ubon Ratchathani", + "35": "Yasothon", + "36": "Chaiyaphum", + "37": "Amnat Charoen", + "38": "Bueng Kan", + "39": "Nong Bua Lam Phu", + "40": "Khon Kaen", + "41": "Udon Thani", + "42": "Loei", + "43": "Nong Khai", + "44": "Maha Sarakham", + "45": "Roi Et", + "46": "Kalasin", + "47": "Sakon Nakhon", + "48": "Nakhon Phanom", + "49": "Mukdahan", + "50": "Chiang Mai", + "51": "Lamphun", + "52": "Lampang", + "53": "Uttaradit", + "54": "Phrae", + "55": "Nan", + "56": "Phayao", + "57": "Chiang Rai", + "58": "Mae Hong Son", + "60": "Nakhon Sawan", + "61": "Uthai Thani", + "62": "Kamphaeng Phet", + "63": "Tak", + "64": "Sukhothai", + "65": "Phitsanulok", + "66": "Phichit", + "67": "Phetchabun", + "70": "Ratchaburi", + "71": "Kanchanaburi", + "72": "Suphanburi", + "73": "Nakhon Pathom", + "74": "Samut Sakhon", + "75": "Samut Songkhram", + "76": "Phetchaburi", + "77": "Prachuap Khiri Khan", + "80": "Nakhon Si Thammarat", + "81": "Krabi", + "82": "Phang Nga", + "83": "Phuket", + "84": "Surat Thani", + "85": "Ranong", + "86": "Chumpon", + "90": "Songkhla", + "91": "Satun", + "92": "Trang", + "93": "Phattalung", + "94": "Pattani", + "95": "Yala", + "96": "Narathiwat", + "S": "Pattaya" + } +} diff --git a/data/iso_3166-2/TJ.json b/data/iso_3166-2/TJ.json new file mode 100644 index 00000000..fb5ba946 --- /dev/null +++ b/data/iso_3166-2/TJ.json @@ -0,0 +1,11 @@ +{ + "source": "http://www.geonames.org/TJ/administrative-division-tajikistan.html", + "country": "Tajikistan", + "subdivisions": { + "DU": "Dushanbe", + "GB": "Gorno-Badakhstan", + "KT": "Khatlon", + "RA": "Nohiyahoi Tobei Jumhurí", + "SU": "Sughd" + } +} diff --git a/data/iso_3166-2/TK.json b/data/iso_3166-2/TK.json new file mode 100644 index 00000000..06d73537 --- /dev/null +++ b/data/iso_3166-2/TK.json @@ -0,0 +1,9 @@ +{ + "source": "http://www.geonames.org/TK/administrative-division-tokelau.html", + "country": "Tokelau", + "subdivisions": { + "A": "Atafu", + "F": "Fakaofo", + "N": "Nukunonu" + } +} diff --git a/data/iso_3166-2/TL.json b/data/iso_3166-2/TL.json new file mode 100644 index 00000000..ca845d55 --- /dev/null +++ b/data/iso_3166-2/TL.json @@ -0,0 +1,19 @@ +{ + "source": "http://www.geonames.org/TL/administrative-division-east-timor.html", + "country": "East Timor", + "subdivisions": { + "AL": "Aileu", + "AN": "Ainaro", + "BA": "Baucau", + "BO": "Bobonaro", + "CO": "Cova Lima", + "DI": "Dili", + "ER": "Ermera", + "LA": "Lautem", + "LI": "Liquica", + "MF": "Manufahi", + "MT": "Manatuto", + "OE": "Oecussi", + "VI": "Viqueque" + } +} diff --git a/data/iso_3166-2/TM.json b/data/iso_3166-2/TM.json new file mode 100644 index 00000000..c9f03cb7 --- /dev/null +++ b/data/iso_3166-2/TM.json @@ -0,0 +1,12 @@ +{ + "source": "http://www.geonames.org/TM/administrative-division-turkmenistan.html", + "country": "Turkmenistan", + "subdivisions": { + "A": "Ahal Welayaty", + "B": "Balkan Welayaty", + "D": "Dashhowuz Welayaty", + "L": "Lebap Welayaty", + "M": "Mary Welayaty", + "S": "Aşgabat" + } +} diff --git a/data/iso_3166-2/TN.json b/data/iso_3166-2/TN.json new file mode 100644 index 00000000..71dec4cc --- /dev/null +++ b/data/iso_3166-2/TN.json @@ -0,0 +1,30 @@ +{ + "source": "http://www.geonames.org/TN/administrative-division-tunisia.html", + "country": "Tunisia", + "subdivisions": { + "11": "Tunis", + "12": "L'Ariana", + "13": "Ben Arous", + "14": "La Manouba", + "21": "Nabeul", + "22": "Zaghouan", + "23": "Bizerte", + "31": "Béja", + "32": "Jendouba", + "33": "Le Kef", + "34": "Siliana", + "41": "Kairouan", + "42": "Kasserine", + "43": "Sidi Bouzid", + "51": "Sousse", + "52": "Monastir", + "53": "Mahdia", + "61": "Sfax", + "71": "Gafsa", + "72": "Tozeur", + "73": "Kebili", + "81": "Gabès", + "82": "Medenine", + "83": "Tataouine" + } +} diff --git a/data/iso_3166-2/TO.json b/data/iso_3166-2/TO.json new file mode 100644 index 00000000..e1e7962e --- /dev/null +++ b/data/iso_3166-2/TO.json @@ -0,0 +1,11 @@ +{ + "source": "http://www.geonames.org/TO/administrative-division-tonga.html", + "country": "Tonga", + "subdivisions": { + "01": "Eua", + "02": "Ha'apai", + "03": "Niuas", + "04": "Tongatapu", + "05": "Vava'u" + } +} diff --git a/data/iso_3166-2/TR.json b/data/iso_3166-2/TR.json new file mode 100644 index 00000000..b0d05b50 --- /dev/null +++ b/data/iso_3166-2/TR.json @@ -0,0 +1,87 @@ +{ + "source": "http://www.geonames.org/TR/administrative-division-turkey.html", + "country": "Turkey", + "subdivisions": { + "01": "Adana", + "02": "Adiyaman", + "03": "Afyonkarahisar", + "04": "Agri", + "05": "Amasya", + "06": "Ankara", + "07": "Antalya", + "08": "Artvin", + "09": "Aydin", + "10": "Balikesir", + "11": "Bilecik", + "12": "Bingol", + "13": "Bitlis", + "14": "Bolu", + "15": "Burdur", + "16": "Bursa", + "17": "Canakkale", + "18": "Cankiri", + "19": "Corum", + "20": "Denizli", + "21": "Diyarbakir", + "22": "Edirne", + "23": "Elazig", + "24": "Erzincan", + "25": "Erzurum", + "26": "Eskisehir", + "27": "Gaziantep", + "28": "Giresun", + "29": "Gumushane", + "30": "Hakkari", + "31": "Hatay", + "32": "Isparta", + "33": "Mersin", + "34": "Istanbul", + "35": "Izmir", + "36": "Kars", + "37": "Kastamonu", + "38": "Kayseri", + "39": "Kirklareli", + "40": "Kirsehir", + "41": "Kocaeli", + "42": "Konya", + "43": "Kutahya", + "44": "Malatya", + "45": "Manisa", + "46": "Kahramanmaras", + "47": "Mardin", + "48": "Mugla", + "49": "Mus", + "50": "Nevsehir", + "51": "Nigde", + "52": "Ordu", + "53": "Rize", + "54": "Sakarya", + "55": "Samsun", + "56": "Siirt", + "57": "Sinop", + "58": "Sivas", + "59": "Tekirdag", + "60": "Tokat", + "61": "Trabzon", + "62": "Tunceli", + "63": "Sanliurfa", + "64": "Usak", + "65": "Van", + "66": "Yozgat", + "67": "Zonguldak", + "68": "Aksaray", + "69": "Bayburt", + "70": "Karaman", + "71": "Kirikkale", + "72": "Batman", + "73": "Sirnak", + "74": "Bartin", + "75": "Ardahan", + "76": "Igdir", + "77": "Yalova", + "78": "Karabuk", + "79": "Kilis", + "80": "Osmaniye", + "81": "Duzce" + } +} diff --git a/data/iso_3166-2/TT.json b/data/iso_3166-2/TT.json new file mode 100644 index 00000000..e1916a50 --- /dev/null +++ b/data/iso_3166-2/TT.json @@ -0,0 +1,21 @@ +{ + "source": "http://www.geonames.org/TT/administrative-division-trinidad-and-tobago.html", + "country": "Trinidad and Tobago", + "subdivisions": { + "ARI": "Arima", + "CHA": "Chaguanas", + "CTT": "Couva/Tabaquite/Talparo", + "DMN": "Diego Martin", + "MRC": "Mayaro/Rio Claro", + "PED": "Penal/Debe", + "POS": "Port of Spain", + "PRT": "Princes Town", + "PTF": "Point Fortin", + "SFO": "San Fernando", + "SGE": "Sangre Grande", + "SIP": "Siparia", + "SJL": "San Juan/Laventille", + "TOB": "Tobago", + "TUP": "Tunapuna/Piarco" + } +} diff --git a/data/iso_3166-2/TV.json b/data/iso_3166-2/TV.json new file mode 100644 index 00000000..ce048080 --- /dev/null +++ b/data/iso_3166-2/TV.json @@ -0,0 +1,14 @@ +{ + "source": "http://www.geonames.org/TV/administrative-division-tuvalu.html", + "country": "Tuvalu", + "subdivisions": { + "FUN": "Funafuti", + "NIT": "Niutao", + "NKF": "Nukufetau", + "NKL": "Nukulaelae", + "NMA": "Nanumea", + "NMG": "Nanumanga", + "NUI": "Nui", + "VAI": "Vaitupu" + } +} diff --git a/data/iso_3166-2/TW.json b/data/iso_3166-2/TW.json new file mode 100644 index 00000000..360bc9a5 --- /dev/null +++ b/data/iso_3166-2/TW.json @@ -0,0 +1,28 @@ +{ + "source": "http://www.geonames.org/TW/administrative-division-taiwan.html", + "country": "Taiwan", + "subdivisions": { + "CHA": "Changhua", + "CYI": "Chiayi", + "CYQ": "Chiayi", + "HSQ": "Hsinchu", + "HSZ": "Hsinchu", + "HUA": "Hualien", + "ILA": "Ilan", + "KEE": "Keelung", + "KHH": "Kaohsiung", + "KIN": "Kinmen", + "LIE": "Lienchiang", + "MIA": "Miaoli", + "NAN": "Nantou", + "NWT": "New Taipei", + "PEN": "Penghu", + "PIF": "Pingtung", + "TAO": "Taoyuan", + "TNN": "Tainan", + "TPE": "Taipei", + "TTT": "Taitung", + "TXG": "Taichung", + "YUN": "Yunlin" + } +} diff --git a/data/iso_3166-2/TZ.json b/data/iso_3166-2/TZ.json new file mode 100644 index 00000000..223ec5d4 --- /dev/null +++ b/data/iso_3166-2/TZ.json @@ -0,0 +1,36 @@ +{ + "source": "http://www.geonames.org/TZ/administrative-division-tanzania.html", + "country": "Tanzania", + "subdivisions": { + "01": "Arusha", + "02": "Dar es Salaam", + "03": "Dodoma", + "04": "Iringa", + "05": "Kagera", + "06": "Pemba North", + "07": "Zanzibar North", + "08": "Kigoma", + "09": "Kilimanjaro", + "10": "Pemba South", + "11": "Zanzibar Central/South", + "12": "Lindi", + "13": "Mara", + "14": "Mbeya", + "15": "Zanzibar Urban/West", + "16": "Morogoro", + "17": "Mtwara", + "18": "Mwanza", + "19": "Pwani", + "20": "Rukwa", + "21": "Ruvuma", + "22": "Shinyanga", + "23": "Singida", + "24": "Tabora", + "25": "Tanga", + "26": "Manyara", + "27": "Geita", + "28": "Katavi", + "29": "Njombe", + "30": "Simiyu" + } +} diff --git a/data/iso_3166-2/UA.json b/data/iso_3166-2/UA.json new file mode 100644 index 00000000..f6b250c4 --- /dev/null +++ b/data/iso_3166-2/UA.json @@ -0,0 +1,33 @@ +{ + "source": "http://www.geonames.org/UA/administrative-division-ukraine.html", + "country": "Ukraine", + "subdivisions": { + "05": "Vinnytsya", + "07": "Volyn'", + "09": "Luhans'k", + "12": "Dnipropetrovs'k", + "14": "Donets'k", + "18": "Zhytomyr", + "21": "Zakarpattya", + "23": "Zaporizhzhya", + "26": "Ivano-Frankivs'k", + "30": "Kyyiv", + "32": "Kiev", + "35": "Kirovohrad", + "40": "Sevastopol", + "43": "Crimea", + "46": "L'viv", + "48": "Mykolayiv", + "51": "Odesa", + "53": "Poltava", + "56": "Rivne", + "59": "Sumy", + "61": "Ternopil'", + "63": "Kharkiv", + "65": "Kherson", + "68": "Khmel'nyts'kyy", + "71": "Cherkasy", + "74": "Chernihiv", + "77": "Chernivtsi" + } +} diff --git a/data/iso_3166-2/UG.json b/data/iso_3166-2/UG.json new file mode 100644 index 00000000..6cd11cb1 --- /dev/null +++ b/data/iso_3166-2/UG.json @@ -0,0 +1,132 @@ +{ + "source": "http://www.geonames.org/UG/administrative-division-uganda.html", + "country": "Uganda", + "subdivisions": { + "101": "Kalangala", + "102": "Kampala", + "103": "Kiboga", + "104": "Luwero", + "105": "Masaka", + "106": "Mpigi", + "107": "Mubende", + "108": "Mukono", + "109": "Nakasongola", + "110": "Rakai", + "111": "Sembabule", + "112": "Kayunga", + "113": "Wakiso", + "114": "Lyantonde", + "115": "Mityana", + "116": "Nakaseke", + "117": "Buikwe", + "118": "Bukomansimbi", + "119": "Butambala", + "120": "Buvuma", + "121": "Gomba", + "122": "Kalungu", + "123": "Kyankwanzi", + "124": "Lwengo", + "125": "Kyotera", + "201": "Bugiri", + "202": "Busia", + "203": "Iganga", + "204": "Jinja", + "205": "Kamuli", + "206": "Kapchorwa", + "207": "Katakwi", + "208": "Kumi", + "209": "Mbale", + "210": "Pallisa", + "211": "Soroti", + "212": "Tororo", + "213": "Kaberamaido", + "214": "Mayuge", + "215": "Sironko", + "216": "Amuria", + "217": "Budaka", + "218": "Bududa", + "219": "Bukedea", + "220": "Bukwa", + "221": "Butaleja", + "222": "Kaliro", + "223": "Manafwa", + "224": "Namutumba", + "225": "Bulambuli", + "226": "Buyende", + "227": "Kibuku", + "228": "Kween", + "229": "Luuka", + "230": "Namayingo", + "231": "Ngora", + "232": "Serere", + "233": "Butebo", + "234": "Namisindwa", + "301": "Adjumani", + "302": "Apac", + "303": "Arua", + "304": "Gulu", + "305": "Kitgum", + "306": "Kotido", + "307": "Lira", + "308": "Moroto", + "309": "Moyo", + "310": "Nebbi", + "311": "Nakapiripirit", + "312": "Pader", + "313": "Yumbe", + "314": "Abim", + "315": "Amolatar", + "316": "Amuru", + "317": "Dokolo", + "318": "Kaabong", + "319": "Koboko", + "320": "Maracha", + "321": "Oyam", + "322": "Agago", + "323": "Alebtong", + "324": "Amudat", + "325": "Kole", + "326": "Lamwo", + "327": "Napak", + "328": "Nwoya", + "329": "Otuke", + "330": "Zombo", + "331": "Omoro", + "332": "Pakwach", + "401": "Bundibugyo", + "402": "Bushenyi", + "403": "Hoima", + "404": "Kabale", + "405": "Kabarole", + "406": "Kasese", + "407": "Kibaale", + "408": "Kisoro", + "409": "Masindi", + "410": "Mbarara", + "411": "Ntungamo", + "412": "Rukungiri", + "413": "Kamwenge", + "414": "Kanungu", + "415": "Kyenjojo", + "416": "Buliisa", + "417": "Ibanda", + "418": "Isingiro", + "419": "Kiruhura", + "420": "Buhweju", + "421": "Kiryandongo", + "422": "Kyegegwa", + "423": "Mitoma", + "424": "Ntoroko", + "425": "Rubirizi", + "426": "Sheema", + "427": "Kagadi", + "428": "Kakumiro", + "429": "Rubanda", + "430": "Bunyangabu", + "431": "Rukiga", + "C": "Central", + "E": "Eastern", + "N": "Northern", + "W": "Western" + } +} diff --git a/data/iso_3166-2/UM.json b/data/iso_3166-2/UM.json new file mode 100644 index 00000000..864a7a6f --- /dev/null +++ b/data/iso_3166-2/UM.json @@ -0,0 +1,15 @@ +{ + "source": "http://www.geonames.org/UM/administrative-division-united-states-minor-outlying-islands.html", + "country": "U.S. Minor Outlying Islands", + "subdivisions": { + "67": "Johnston Atoll", + "71": "Midway Atoll", + "76": "Navassa Island", + "79": "Wake Island", + "81": "Baker Island", + "84": "Howland Island", + "86": "Jarvis Island", + "89": "Kingman Reef", + "95": "Palmyra Atoll" + } +} diff --git a/data/iso_3166-2/US.json b/data/iso_3166-2/US.json new file mode 100644 index 00000000..d6f544d9 --- /dev/null +++ b/data/iso_3166-2/US.json @@ -0,0 +1,63 @@ +{ + "source": "http://www.geonames.org/US/administrative-division-united-states.html", + "country": "United States", + "subdivisions": { + "AK": "Alaska", + "AL": "Alabama", + "AR": "Arkansas", + "AS": "American Samoa", + "AZ": "Arizona", + "CA": "California", + "CO": "Colorado", + "CT": "Connecticut", + "DC": "District of Columbia", + "DE": "Delaware", + "FL": "Florida", + "GA": "Georgia", + "GU": "Guam", + "HI": "Hawaii", + "IA": "Iowa", + "ID": "Idaho", + "IL": "Illinois", + "IN": "Indiana", + "KS": "Kansas", + "KY": "Kentucky", + "LA": "Louisiana", + "MA": "Massachusetts", + "MD": "Maryland", + "ME": "Maine", + "MI": "Michigan", + "MN": "Minnesota", + "MO": "Missouri", + "MP": "Northern Mariana Islands", + "MS": "Mississippi", + "MT": "Montana", + "NC": "North Carolina", + "ND": "North Dakota", + "NE": "Nebraska", + "NH": "New Hampshire", + "NJ": "New Jersey", + "NM": "New Mexico", + "NV": "Nevada", + "NY": "New York", + "OH": "Ohio", + "OK": "Oklahoma", + "OR": "Oregon", + "PA": "Pennsylvania", + "PR": "Puerto Rico", + "RI": "Rhode Island", + "SC": "South Carolina", + "SD": "South Dakota", + "TN": "Tennessee", + "TX": "Texas", + "UM": "U.S. Minor Outlying Islands", + "UT": "Utah", + "VA": "Virginia", + "VI": "Virgin Islands of the U.S.", + "VT": "Vermont", + "WA": "Washington", + "WI": "Wisconsin", + "WV": "West Virginia", + "WY": "Wyoming" + } +} diff --git a/data/iso_3166-2/UY.json b/data/iso_3166-2/UY.json new file mode 100644 index 00000000..f35a2068 --- /dev/null +++ b/data/iso_3166-2/UY.json @@ -0,0 +1,25 @@ +{ + "source": "http://www.geonames.org/UY/administrative-division-uruguay.html", + "country": "Uruguay", + "subdivisions": { + "AR": "Artigas", + "CA": "Canelones", + "CL": "Cerro Largo", + "CO": "Colonia", + "DU": "Durazno", + "FD": "Florida", + "FS": "Flores", + "LA": "Lavalleja", + "MA": "Maldonado", + "MO": "Montevideo", + "PA": "Paysandu", + "RN": "Rio Negro", + "RO": "Rocha", + "RV": "Rivera", + "SA": "Salto", + "SJ": "San Jose", + "SO": "Soriano", + "TA": "Tacuarembó", + "TT": "Treinta y Tres" + } +} diff --git a/data/iso_3166-2/UZ.json b/data/iso_3166-2/UZ.json new file mode 100644 index 00000000..19cbe0e2 --- /dev/null +++ b/data/iso_3166-2/UZ.json @@ -0,0 +1,20 @@ +{ + "source": "http://www.geonames.org/UZ/administrative-division-uzbekistan.html", + "country": "Uzbekistan", + "subdivisions": { + "AN": "Andijon", + "BU": "Buxoro", + "FA": "Farg'ona", + "JI": "Jizzax", + "NG": "Namangan", + "NW": "Navoiy", + "QA": "Qashqadaryo", + "QR": "Qoraqalpog'iston Republikasi", + "SA": "Samarqand", + "SI": "Sirdaryo", + "SU": "Surxondaryo", + "TK": "Toshkent city", + "TO": "Toshkent region", + "XO": "Xorazm" + } +} diff --git a/data/iso_3166-2/VA.json b/data/iso_3166-2/VA.json new file mode 100644 index 00000000..4d6a3d50 --- /dev/null +++ b/data/iso_3166-2/VA.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/VA/administrative-division-vatican-city.html", + "country": "Vatican City", + "subdivisions": [] +} diff --git a/data/iso_3166-2/VC.json b/data/iso_3166-2/VC.json new file mode 100644 index 00000000..5c346ea5 --- /dev/null +++ b/data/iso_3166-2/VC.json @@ -0,0 +1,12 @@ +{ + "source": "http://www.geonames.org/VC/administrative-division-saint-vincent-and-the-grenadines.html", + "country": "Saint Vincent and the Grenadines", + "subdivisions": { + "01": "Charlotte", + "02": "Saint Andrew", + "03": "Saint David", + "04": "Saint George", + "05": "Saint Patrick", + "06": "Grenadines" + } +} diff --git a/data/iso_3166-2/VE.json b/data/iso_3166-2/VE.json new file mode 100644 index 00000000..395b821a --- /dev/null +++ b/data/iso_3166-2/VE.json @@ -0,0 +1,31 @@ +{ + "source": "http://www.geonames.org/VE/administrative-division-venezuela.html", + "country": "Venezuela", + "subdivisions": { + "A": "Federal Capital", + "B": "Anzoategui", + "C": "Apure", + "D": "Aragua", + "E": "Barinas", + "F": "Bolivar", + "G": "Carabobo", + "H": "Cojedes", + "I": "Falcon", + "J": "Guarico", + "K": "Lara", + "L": "Merida", + "M": "Miranda", + "N": "Monagas", + "O": "Nueva Esparta", + "P": "Portuguesa", + "R": "Sucre", + "S": "Tachira", + "T": "Trujillo", + "U": "Yaracuy", + "V": "Zulia", + "W": "Federal Dependency", + "X": "Vargas", + "Y": "Delta Amacuro", + "Z": "Amazonas" + } +} diff --git a/data/iso_3166-2/VG.json b/data/iso_3166-2/VG.json new file mode 100644 index 00000000..f804a96e --- /dev/null +++ b/data/iso_3166-2/VG.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/VG/administrative-division-british-virgin-islands.html", + "country": "British Virgin Islands", + "subdivisions": [] +} diff --git a/data/iso_3166-2/VI.json b/data/iso_3166-2/VI.json new file mode 100644 index 00000000..522d7191 --- /dev/null +++ b/data/iso_3166-2/VI.json @@ -0,0 +1,9 @@ +{ + "source": "http://www.geonames.org/VI/administrative-division-u-s-virgin-islands.html", + "country": "U.S. Virgin Islands", + "subdivisions": { + "C": "Saint Croix", + "J": "Saint John", + "T": "Saint Thomas" + } +} diff --git a/data/iso_3166-2/VN.json b/data/iso_3166-2/VN.json new file mode 100644 index 00000000..6a15974a --- /dev/null +++ b/data/iso_3166-2/VN.json @@ -0,0 +1,69 @@ +{ + "source": "http://www.geonames.org/VN/administrative-division-vietnam.html", + "country": "Vietnam", + "subdivisions": { + "01": "Lai Chau", + "02": "Lao Cai", + "03": "Ha Giang", + "04": "Cao Bang", + "05": "Son La", + "06": "Yen Bai", + "07": "Tuyen Quang", + "09": "Lang Son", + "13": "Quang Ninh", + "14": "Hoa Binh", + "18": "Ninh Binh", + "20": "Thai Binh", + "21": "Thanh Hoa", + "22": "Nghe An", + "23": "Ha Tinh", + "24": "Quang Binh", + "25": "Quang Tri", + "26": "Thua Thien-Hue", + "27": "Quang Nam", + "28": "Kon Tum", + "29": "Quang Ngai", + "30": "Gia Lai", + "31": "Binh Dinh", + "32": "Phu Yen", + "33": "Dak Lak", + "34": "Khanh Hoa", + "35": "Lam Dong", + "36": "Ninh Thuan", + "37": "Tay Ninh", + "39": "Dong Nai", + "40": "Binh Thuan", + "41": "Long An", + "43": "Ba Ria-Vung Tau", + "44": "An Giang", + "45": "Dong Thap", + "46": "Tien Giang", + "47": "Kien Giang", + "49": "Vinh Long", + "50": "Ben Tre", + "51": "Tra Vinh", + "52": "Soc Trang", + "53": "Bac Can", + "54": "Bac Giang", + "55": "Bac Lieu", + "56": "Bac Ninh", + "57": "Binh Duong", + "58": "Binh Phuoc", + "59": "Ca Mau", + "61": "Hai Duong", + "63": "Ha Nam", + "66": "Hung Yen", + "67": "Nam Dinh", + "68": "Phu Tho", + "69": "Thai Nguyen", + "70": "Vinh Phuc", + "71": "Dien Bien", + "72": "Dak Nong", + "73": "Hau Giang", + "CT": "Can Tho", + "DN": "Da Nang", + "HN": "Ha Noi", + "HP": "Hai Phong", + "SG": "Ho Chi Minh" + } +} diff --git a/data/iso_3166-2/VU.json b/data/iso_3166-2/VU.json new file mode 100644 index 00000000..dcf24fd2 --- /dev/null +++ b/data/iso_3166-2/VU.json @@ -0,0 +1,12 @@ +{ + "source": "http://www.geonames.org/VU/administrative-division-vanuatu.html", + "country": "Vanuatu", + "subdivisions": { + "MAP": "Malampa", + "PAM": "Penama", + "SAM": "Sanma", + "SEE": "Shefa", + "TAE": "Tafea", + "TOB": "Torba" + } +} diff --git a/data/iso_3166-2/WF.json b/data/iso_3166-2/WF.json new file mode 100644 index 00000000..148115ad --- /dev/null +++ b/data/iso_3166-2/WF.json @@ -0,0 +1,9 @@ +{ + "source": "http://www.geonames.org/WF/administrative-division-wallis-and-futuna.html", + "country": "Wallis and Futuna", + "subdivisions": { + "AL": "Alo", + "SG": "Sigave", + "UV": "ʻUvea" + } +} diff --git a/data/iso_3166-2/WS.json b/data/iso_3166-2/WS.json new file mode 100644 index 00000000..88d476d6 --- /dev/null +++ b/data/iso_3166-2/WS.json @@ -0,0 +1,17 @@ +{ + "source": "http://www.geonames.org/WS/administrative-division-samoa.html", + "country": "Samoa", + "subdivisions": { + "AA": "A'ana", + "AL": "Aiga-i-le-Tai", + "AT": "Atua", + "FA": "Fa'asaleleaga", + "GE": "Gaga'emauga", + "GI": "Gagaifomauga", + "PA": "Palauli", + "SA": "Satupa'itea", + "TU": "Tuamasaga", + "VF": "Va'a-o-Fonoti", + "VS": "Vaisigano" + } +} diff --git a/data/iso_3166-2/XK.json b/data/iso_3166-2/XK.json new file mode 100644 index 00000000..306c2638 --- /dev/null +++ b/data/iso_3166-2/XK.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/XK/administrative-division-kosovo.html", + "country": "Kosovo", + "subdivisions": [] +} diff --git a/data/iso_3166-2/YE.json b/data/iso_3166-2/YE.json new file mode 100644 index 00000000..53237a40 --- /dev/null +++ b/data/iso_3166-2/YE.json @@ -0,0 +1,28 @@ +{ + "source": "http://www.geonames.org/YE/administrative-division-yemen.html", + "country": "Yemen", + "subdivisions": { + "AB": "Abyan", + "AD": "Adan", + "AM": "Amran", + "BA": "Al Bayda", + "DA": "Ad Dali", + "DH": "Dhamar", + "HD": "Hadramawt", + "HJ": "Hajjah", + "HU": "Al Hudaydah", + "IB": "Ibb", + "JA": "Al Jawf", + "LA": "Lahij", + "MA": "Ma'rib", + "MR": "Al Mahrah", + "MW": "Al Mahwit", + "RA": "Raymah", + "SA": "Amanat Al Asimah", + "SD": "Sa'dah", + "SH": "Shabwah", + "SN": "San'a", + "SU": "Socotra", + "TA": "Ta'izz" + } +} diff --git a/data/iso_3166-2/YT.json b/data/iso_3166-2/YT.json new file mode 100644 index 00000000..01aae420 --- /dev/null +++ b/data/iso_3166-2/YT.json @@ -0,0 +1,5 @@ +{ + "source": "http://www.geonames.org/YT/administrative-division-mayotte.html", + "country": "Mayotte", + "subdivisions": [] +} diff --git a/data/iso_3166-2/ZA.json b/data/iso_3166-2/ZA.json new file mode 100644 index 00000000..0d9d7860 --- /dev/null +++ b/data/iso_3166-2/ZA.json @@ -0,0 +1,15 @@ +{ + "source": "http://www.geonames.org/ZA/administrative-division-south-africa.html", + "country": "South Africa", + "subdivisions": { + "EC": "Eastern Cape", + "FS": "Free State", + "GT": "Gauteng", + "LP": "Limpopo", + "MP": "Mpumalanga", + "NC": "Northern Cape", + "NL": "KwaZulu-Natal", + "NW": "North West", + "WC": "Western Cape" + } +} diff --git a/data/iso_3166-2/ZM.json b/data/iso_3166-2/ZM.json new file mode 100644 index 00000000..6cf8a696 --- /dev/null +++ b/data/iso_3166-2/ZM.json @@ -0,0 +1,16 @@ +{ + "source": "http://www.geonames.org/ZM/administrative-division-zambia.html", + "country": "Zambia", + "subdivisions": { + "01": "Western Province", + "02": "Central Province", + "03": "Eastern Province", + "04": "Luapula Province", + "05": "Northern Province", + "06": "North-Western Province", + "07": "Southern Province", + "08": "Copperbelt Province", + "09": "Lusaka Province", + "10": "Muchinga" + } +} diff --git a/data/iso_3166-2/ZW.json b/data/iso_3166-2/ZW.json new file mode 100644 index 00000000..6cb23127 --- /dev/null +++ b/data/iso_3166-2/ZW.json @@ -0,0 +1,16 @@ +{ + "source": "http://www.geonames.org/ZW/administrative-division-zimbabwe.html", + "country": "Zimbabwe", + "subdivisions": { + "BU": "Bulawayo (city)", + "HA": "Harare (city)", + "MA": "Manicaland", + "MC": "Mashonaland Central", + "ME": "Mashonaland East", + "MI": "Midlands", + "MN": "Matabeleland North", + "MS": "Matabeleland South", + "MV": "Masvingo", + "MW": "Mashonaland West" + } +} diff --git a/docs/rules/SubdivisionCode.md b/docs/rules/SubdivisionCode.md index c27f5b05..320db0a5 100644 --- a/docs/rules/SubdivisionCode.md +++ b/docs/rules/SubdivisionCode.md @@ -11,7 +11,7 @@ v::subdivisionCode('BR')->validate('SP'); // true v::subdivisionCode('US')->validate('CA'); // true ``` -This rule uses data from [sokil/php-isocodes][]. +This rules uses data from [iso-codes][]. ## Categorization @@ -35,6 +35,6 @@ See also: - [PolishIdCard](PolishIdCard.md) - [Tld](Tld.md) -[sokil/php-isocodes]: https://github.com/sokil/php-isocodes +[iso-codes]: https://salsa.debian.org/iso-codes-team/iso-codes [ISO 3166-1 alpha-2]: http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 "ISO 3166-1 alpha-2" [ISO 3166-2]: http://en.wikipedia.org/wiki/ISO_3166-2 "ISO 3166-2" diff --git a/library/Helpers/Subdivisions.php b/library/Helpers/Subdivisions.php new file mode 100644 index 00000000..95fc8bb7 --- /dev/null +++ b/library/Helpers/Subdivisions.php @@ -0,0 +1,52 @@ + + * + * For the full copyright and license information, please view the LICENSE file + * that was distributed with this source code. + */ + +declare(strict_types=1); + +namespace Respect\Validation\Helpers; + +use Respect\Validation\Exceptions\ComponentException; + +use function file_exists; +use function file_get_contents; +use function json_decode; +use function sprintf; + +final class Subdivisions +{ + /** + * @var mixed[] + */ + private $data; + + public function __construct(string $countryCode) + { + $filename = __DIR__ . '/../../data/iso_3166-2/' . $countryCode . '.json'; + if (!file_exists($filename)) { + throw new ComponentException(sprintf('"%s" is not a supported country code', $countryCode)); + } + + $this->data = (array) json_decode((string) file_get_contents($filename), true); + } + + public function getCountry(): string + { + return $this->data['country']; + } + + /** + * @return string[] + */ + public function getSubdivisions(): array + { + return $this->data['subdivisions']; + } +} diff --git a/library/Rules/SubdivisionCode.php b/library/Rules/SubdivisionCode.php index bf1ae804..ad6e36cf 100644 --- a/library/Rules/SubdivisionCode.php +++ b/library/Rules/SubdivisionCode.php @@ -13,12 +13,9 @@ declare(strict_types=1); namespace Respect\Validation\Rules; -use Respect\Validation\Exceptions\ComponentException; -use Sokil\IsoCodes\IsoCodesFactory; -use Sokil\IsoCodes\TranslationDriver\DummyDriver; +use Respect\Validation\Helpers\Subdivisions; -use function is_string; -use function sprintf; +use function array_keys; /** * Validates country subdivision codes according to ISO 3166-2. @@ -29,45 +26,31 @@ use function sprintf; * @author Henrique Moody * @author Mazen Touati */ -final class SubdivisionCode extends AbstractRule +final class SubdivisionCode extends AbstractSearcher { - /** - * @var string - */ - private $countryCode; - /** * @var string */ private $countryName; /** - * @var IsoCodesFactory + * @var string[] */ - private $factory; + private $subdivisions; public function __construct(string $countryCode) { - $factory = new IsoCodesFactory(null, new DummyDriver()); - $country = $factory->getCountries()->getByAlpha2($countryCode); - if ($country === null) { - throw new ComponentException(sprintf('"%s" is not a supported country code', $countryCode)); - } + $subdivisions = new Subdivisions($countryCode); - $this->factory = $factory; - $this->countryCode = $countryCode; - $this->countryName = $country->getName(); + $this->countryName = $subdivisions->getCountry(); + $this->subdivisions = array_keys($subdivisions->getSubdivisions()); } /** * {@inheritDoc} */ - public function validate($input): bool + protected function getDataSource(): array { - if (!is_string($input)) { - return false; - } - - return $this->factory->getSubdivisions()->getByCode($this->countryCode . '-' . $input) !== null; + return $this->subdivisions; } } diff --git a/tests/unit/Rules/SubdivisionCodeTest.php b/tests/unit/Rules/SubdivisionCodeTest.php index 2e48eb2b..d31ef059 100644 --- a/tests/unit/Rules/SubdivisionCodeTest.php +++ b/tests/unit/Rules/SubdivisionCodeTest.php @@ -27,6 +27,9 @@ use Respect\Validation\Test\TestCase; final class SubdivisionCodeTest extends TestCase { /** + * @expectedException \Respect\Validation\Exceptions\ComponentException + * @expectedExceptionMessage "whatever" is not a supported country code + * * @test */ public function shouldThrowsExceptionWhenInvalidFormat(): void @@ -54,9 +57,11 @@ final class SubdivisionCodeTest extends TestCase public function providerForValidSubdivisionCodeInformation(): array { return [ + ['AQ', null], ['BR', 'SP'], ['MV', '00'], ['US', 'CA'], + ['YT', ''], ]; } @@ -81,8 +86,6 @@ final class SubdivisionCodeTest extends TestCase ['BR', 'CA'], ['MV', 0], ['US', 'CE'], - ['AQ', null], - ['YT', ''], ]; }