valuesets 0.3.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of valuesets might be problematic. Click here for more details.

Files changed (248) hide show
  1. valuesets/__init__.py +7 -0
  2. valuesets/_version.py +8 -0
  3. valuesets/datamodel/valuesets.py +13796 -0
  4. valuesets/datamodel/valuesets_dataclass.py +24503 -0
  5. valuesets/datamodel/valuesets_pydantic.py +13796 -0
  6. valuesets/enums/__init__.py +590 -0
  7. valuesets/enums/academic/__init__.py +1 -0
  8. valuesets/enums/academic/research.py +559 -0
  9. valuesets/enums/analytical_chemistry/__init__.py +1 -0
  10. valuesets/enums/analytical_chemistry/mass_spectrometry.py +198 -0
  11. valuesets/enums/bio/__init__.py +1 -0
  12. valuesets/enums/bio/biological_colors.py +238 -0
  13. valuesets/enums/bio/cell_cycle.py +180 -0
  14. valuesets/enums/bio/currency_chemicals.py +52 -0
  15. valuesets/enums/bio/developmental_stages.py +103 -0
  16. valuesets/enums/bio/genome_features.py +182 -0
  17. valuesets/enums/bio/genomics.py +91 -0
  18. valuesets/enums/bio/go_aspect.py +32 -0
  19. valuesets/enums/bio/go_causality.py +58 -0
  20. valuesets/enums/bio/go_evidence.py +129 -0
  21. valuesets/enums/bio/human_developmental_stages.py +62 -0
  22. valuesets/enums/bio/insdc_geographic_locations.py +591 -0
  23. valuesets/enums/bio/insdc_missing_values.py +49 -0
  24. valuesets/enums/bio/lipid_categories.py +67 -0
  25. valuesets/enums/bio/mouse_developmental_stages.py +62 -0
  26. valuesets/enums/bio/plant_biology.py +86 -0
  27. valuesets/enums/bio/plant_developmental_stages.py +54 -0
  28. valuesets/enums/bio/plant_sex.py +81 -0
  29. valuesets/enums/bio/protein_evidence.py +61 -0
  30. valuesets/enums/bio/proteomics_standards.py +123 -0
  31. valuesets/enums/bio/psi_mi.py +306 -0
  32. valuesets/enums/bio/relationship_to_oxygen.py +37 -0
  33. valuesets/enums/bio/sequence_alphabets.py +449 -0
  34. valuesets/enums/bio/sequence_chemistry.py +357 -0
  35. valuesets/enums/bio/sequencing_platforms.py +302 -0
  36. valuesets/enums/bio/structural_biology.py +320 -0
  37. valuesets/enums/bio/taxonomy.py +238 -0
  38. valuesets/enums/bio/trophic_levels.py +85 -0
  39. valuesets/enums/bio/uniprot_species.py +344 -0
  40. valuesets/enums/bio/viral_genome_types.py +47 -0
  41. valuesets/enums/bioprocessing/__init__.py +1 -0
  42. valuesets/enums/bioprocessing/scale_up.py +249 -0
  43. valuesets/enums/business/__init__.py +1 -0
  44. valuesets/enums/business/human_resources.py +275 -0
  45. valuesets/enums/business/industry_classifications.py +181 -0
  46. valuesets/enums/business/management_operations.py +228 -0
  47. valuesets/enums/business/organizational_structures.py +236 -0
  48. valuesets/enums/business/quality_management.py +181 -0
  49. valuesets/enums/business/supply_chain.py +232 -0
  50. valuesets/enums/chemistry/__init__.py +1 -0
  51. valuesets/enums/chemistry/chemical_entities.py +315 -0
  52. valuesets/enums/chemistry/reaction_directionality.py +65 -0
  53. valuesets/enums/chemistry/reactions.py +256 -0
  54. valuesets/enums/clinical/__init__.py +1 -0
  55. valuesets/enums/clinical/nih_demographics.py +177 -0
  56. valuesets/enums/clinical/phenopackets.py +254 -0
  57. valuesets/enums/common_value_sets.py +8791 -0
  58. valuesets/enums/computing/__init__.py +1 -0
  59. valuesets/enums/computing/file_formats.py +294 -0
  60. valuesets/enums/computing/maturity_levels.py +196 -0
  61. valuesets/enums/computing/mime_types.py +227 -0
  62. valuesets/enums/confidence_levels.py +168 -0
  63. valuesets/enums/contributor.py +30 -0
  64. valuesets/enums/core.py +42 -0
  65. valuesets/enums/data/__init__.py +1 -0
  66. valuesets/enums/data/data_absent_reason.py +53 -0
  67. valuesets/enums/data_science/__init__.py +1 -0
  68. valuesets/enums/data_science/binary_classification.py +87 -0
  69. valuesets/enums/data_science/emotion_classification.py +66 -0
  70. valuesets/enums/data_science/priority_severity.py +73 -0
  71. valuesets/enums/data_science/quality_control.py +46 -0
  72. valuesets/enums/data_science/sentiment_analysis.py +50 -0
  73. valuesets/enums/data_science/text_classification.py +97 -0
  74. valuesets/enums/demographics.py +206 -0
  75. valuesets/enums/ecological_interactions.py +151 -0
  76. valuesets/enums/energy/__init__.py +1 -0
  77. valuesets/enums/energy/energy.py +343 -0
  78. valuesets/enums/energy/fossil_fuels.py +29 -0
  79. valuesets/enums/energy/nuclear/__init__.py +1 -0
  80. valuesets/enums/energy/nuclear/nuclear_facilities.py +195 -0
  81. valuesets/enums/energy/nuclear/nuclear_fuel_cycle.py +96 -0
  82. valuesets/enums/energy/nuclear/nuclear_fuels.py +175 -0
  83. valuesets/enums/energy/nuclear/nuclear_operations.py +191 -0
  84. valuesets/enums/energy/nuclear/nuclear_regulatory.py +188 -0
  85. valuesets/enums/energy/nuclear/nuclear_safety.py +164 -0
  86. valuesets/enums/energy/nuclear/nuclear_waste.py +158 -0
  87. valuesets/enums/energy/nuclear/reactor_types.py +163 -0
  88. valuesets/enums/environmental_health/__init__.py +1 -0
  89. valuesets/enums/environmental_health/exposures.py +265 -0
  90. valuesets/enums/geography/__init__.py +1 -0
  91. valuesets/enums/geography/geographic_codes.py +741 -0
  92. valuesets/enums/health/__init__.py +12 -0
  93. valuesets/enums/health/vaccination.py +98 -0
  94. valuesets/enums/health.py +36 -0
  95. valuesets/enums/health_base.py +36 -0
  96. valuesets/enums/healthcare.py +45 -0
  97. valuesets/enums/industry/__init__.py +1 -0
  98. valuesets/enums/industry/extractive_industry.py +94 -0
  99. valuesets/enums/industry/mining.py +388 -0
  100. valuesets/enums/industry/safety_colors.py +201 -0
  101. valuesets/enums/investigation.py +27 -0
  102. valuesets/enums/materials_science/__init__.py +1 -0
  103. valuesets/enums/materials_science/characterization_methods.py +112 -0
  104. valuesets/enums/materials_science/crystal_structures.py +76 -0
  105. valuesets/enums/materials_science/material_properties.py +119 -0
  106. valuesets/enums/materials_science/material_types.py +104 -0
  107. valuesets/enums/materials_science/pigments_dyes.py +198 -0
  108. valuesets/enums/materials_science/synthesis_methods.py +109 -0
  109. valuesets/enums/medical/__init__.py +1 -0
  110. valuesets/enums/medical/clinical.py +277 -0
  111. valuesets/enums/medical/neuroimaging.py +119 -0
  112. valuesets/enums/mining_processing.py +302 -0
  113. valuesets/enums/physics/__init__.py +1 -0
  114. valuesets/enums/physics/states_of_matter.py +46 -0
  115. valuesets/enums/social/__init__.py +1 -0
  116. valuesets/enums/social/person_status.py +29 -0
  117. valuesets/enums/spatial/__init__.py +1 -0
  118. valuesets/enums/spatial/spatial_qualifiers.py +246 -0
  119. valuesets/enums/statistics/__init__.py +5 -0
  120. valuesets/enums/statistics/prediction_outcomes.py +31 -0
  121. valuesets/enums/statistics.py +31 -0
  122. valuesets/enums/time/__init__.py +1 -0
  123. valuesets/enums/time/temporal.py +254 -0
  124. valuesets/enums/units/__init__.py +1 -0
  125. valuesets/enums/units/measurements.py +310 -0
  126. valuesets/enums/visual/__init__.py +1 -0
  127. valuesets/enums/visual/colors.py +376 -0
  128. valuesets/generators/__init__.py +19 -0
  129. valuesets/generators/auto_slot_injector.py +280 -0
  130. valuesets/generators/enhanced_pydantic_generator.py +100 -0
  131. valuesets/generators/enum_slot_generator.py +201 -0
  132. valuesets/generators/modular_rich_generator.py +353 -0
  133. valuesets/generators/prefix_standardizer.py +198 -0
  134. valuesets/generators/rich_enum.py +127 -0
  135. valuesets/generators/rich_pydantic_generator.py +310 -0
  136. valuesets/generators/smart_slot_syncer.py +428 -0
  137. valuesets/generators/sssom_generator.py +394 -0
  138. valuesets/merged/merged_hierarchy.yaml +21649 -0
  139. valuesets/schema/README.md +3 -0
  140. valuesets/schema/academic/research.yaml +911 -0
  141. valuesets/schema/analytical_chemistry/mass_spectrometry.yaml +206 -0
  142. valuesets/schema/bio/bio_entities.yaml +364 -0
  143. valuesets/schema/bio/biological_colors.yaml +434 -0
  144. valuesets/schema/bio/cell_cycle.yaml +309 -0
  145. valuesets/schema/bio/currency_chemicals.yaml +70 -0
  146. valuesets/schema/bio/developmental_stages.yaml +226 -0
  147. valuesets/schema/bio/genome_features.yaml +342 -0
  148. valuesets/schema/bio/genomics.yaml +101 -0
  149. valuesets/schema/bio/go_aspect.yaml +39 -0
  150. valuesets/schema/bio/go_causality.yaml +119 -0
  151. valuesets/schema/bio/go_evidence.yaml +215 -0
  152. valuesets/schema/bio/insdc_geographic_locations.yaml +911 -0
  153. valuesets/schema/bio/insdc_missing_values.yaml +85 -0
  154. valuesets/schema/bio/lipid_categories.yaml +72 -0
  155. valuesets/schema/bio/plant_biology.yaml +125 -0
  156. valuesets/schema/bio/plant_developmental_stages.yaml +77 -0
  157. valuesets/schema/bio/plant_sex.yaml +108 -0
  158. valuesets/schema/bio/protein_evidence.yaml +63 -0
  159. valuesets/schema/bio/proteomics_standards.yaml +116 -0
  160. valuesets/schema/bio/psi_mi.yaml +400 -0
  161. valuesets/schema/bio/relationship_to_oxygen.yaml +46 -0
  162. valuesets/schema/bio/sequence_alphabets.yaml +1168 -0
  163. valuesets/schema/bio/sequence_chemistry.yaml +477 -0
  164. valuesets/schema/bio/sequencing_platforms.yaml +515 -0
  165. valuesets/schema/bio/structural_biology.yaml +428 -0
  166. valuesets/schema/bio/taxonomy.yaml +453 -0
  167. valuesets/schema/bio/trophic_levels.yaml +118 -0
  168. valuesets/schema/bio/uniprot_species.yaml +1209 -0
  169. valuesets/schema/bio/viral_genome_types.yaml +99 -0
  170. valuesets/schema/bioprocessing/scale_up.yaml +458 -0
  171. valuesets/schema/business/human_resources.yaml +752 -0
  172. valuesets/schema/business/industry_classifications.yaml +448 -0
  173. valuesets/schema/business/management_operations.yaml +602 -0
  174. valuesets/schema/business/organizational_structures.yaml +645 -0
  175. valuesets/schema/business/quality_management.yaml +502 -0
  176. valuesets/schema/business/supply_chain.yaml +688 -0
  177. valuesets/schema/chemistry/chemical_entities.yaml +639 -0
  178. valuesets/schema/chemistry/reaction_directionality.yaml +60 -0
  179. valuesets/schema/chemistry/reactions.yaml +442 -0
  180. valuesets/schema/clinical/nih_demographics.yaml +285 -0
  181. valuesets/schema/clinical/phenopackets.yaml +429 -0
  182. valuesets/schema/computing/file_formats.yaml +631 -0
  183. valuesets/schema/computing/maturity_levels.yaml +229 -0
  184. valuesets/schema/computing/mime_types.yaml +266 -0
  185. valuesets/schema/confidence_levels.yaml +206 -0
  186. valuesets/schema/contributor.yaml +30 -0
  187. valuesets/schema/core.yaml +55 -0
  188. valuesets/schema/data/data_absent_reason.yaml +82 -0
  189. valuesets/schema/data_science/binary_classification.yaml +125 -0
  190. valuesets/schema/data_science/emotion_classification.yaml +109 -0
  191. valuesets/schema/data_science/priority_severity.yaml +122 -0
  192. valuesets/schema/data_science/quality_control.yaml +68 -0
  193. valuesets/schema/data_science/sentiment_analysis.yaml +81 -0
  194. valuesets/schema/data_science/text_classification.yaml +135 -0
  195. valuesets/schema/demographics.yaml +238 -0
  196. valuesets/schema/ecological_interactions.yaml +298 -0
  197. valuesets/schema/energy/energy.yaml +595 -0
  198. valuesets/schema/energy/fossil_fuels.yaml +28 -0
  199. valuesets/schema/energy/nuclear/nuclear_facilities.yaml +463 -0
  200. valuesets/schema/energy/nuclear/nuclear_fuel_cycle.yaml +82 -0
  201. valuesets/schema/energy/nuclear/nuclear_fuels.yaml +421 -0
  202. valuesets/schema/energy/nuclear/nuclear_operations.yaml +480 -0
  203. valuesets/schema/energy/nuclear/nuclear_regulatory.yaml +200 -0
  204. valuesets/schema/energy/nuclear/nuclear_safety.yaml +352 -0
  205. valuesets/schema/energy/nuclear/nuclear_waste.yaml +332 -0
  206. valuesets/schema/energy/nuclear/reactor_types.yaml +394 -0
  207. valuesets/schema/environmental_health/exposures.yaml +355 -0
  208. valuesets/schema/generated_slots.yaml +1828 -0
  209. valuesets/schema/geography/geographic_codes.yaml +1018 -0
  210. valuesets/schema/health/vaccination.yaml +102 -0
  211. valuesets/schema/health.yaml +38 -0
  212. valuesets/schema/healthcare.yaml +53 -0
  213. valuesets/schema/industry/extractive_industry.yaml +89 -0
  214. valuesets/schema/industry/mining.yaml +888 -0
  215. valuesets/schema/industry/safety_colors.yaml +375 -0
  216. valuesets/schema/investigation.yaml +64 -0
  217. valuesets/schema/materials_science/characterization_methods.yaml +193 -0
  218. valuesets/schema/materials_science/crystal_structures.yaml +138 -0
  219. valuesets/schema/materials_science/material_properties.yaml +135 -0
  220. valuesets/schema/materials_science/material_types.yaml +151 -0
  221. valuesets/schema/materials_science/pigments_dyes.yaml +465 -0
  222. valuesets/schema/materials_science/synthesis_methods.yaml +186 -0
  223. valuesets/schema/medical/clinical.yaml +610 -0
  224. valuesets/schema/medical/neuroimaging.yaml +325 -0
  225. valuesets/schema/mining_processing.yaml +295 -0
  226. valuesets/schema/physics/states_of_matter.yaml +46 -0
  227. valuesets/schema/slot_mixins.yaml +143 -0
  228. valuesets/schema/social/person_status.yaml +28 -0
  229. valuesets/schema/spatial/spatial_qualifiers.yaml +466 -0
  230. valuesets/schema/statistics/prediction_outcomes.yaml +26 -0
  231. valuesets/schema/statistics.yaml +34 -0
  232. valuesets/schema/time/temporal.yaml +435 -0
  233. valuesets/schema/types.yaml +15 -0
  234. valuesets/schema/units/measurements.yaml +675 -0
  235. valuesets/schema/valuesets.yaml +100 -0
  236. valuesets/schema/visual/colors.yaml +778 -0
  237. valuesets/utils/__init__.py +6 -0
  238. valuesets/utils/comparison.py +102 -0
  239. valuesets/utils/expand_dynamic_enums.py +414 -0
  240. valuesets/utils/mapping_utils.py +236 -0
  241. valuesets/validators/__init__.py +11 -0
  242. valuesets/validators/enum_evaluator.py +669 -0
  243. valuesets/validators/oak_config.yaml +70 -0
  244. valuesets/validators/validate_with_ols.py +241 -0
  245. valuesets-0.3.1.dist-info/METADATA +395 -0
  246. valuesets-0.3.1.dist-info/RECORD +248 -0
  247. valuesets-0.3.1.dist-info/WHEEL +4 -0
  248. valuesets-0.3.1.dist-info/licenses/LICENSE +201 -0
@@ -0,0 +1,741 @@
1
+ """
2
+ valuesets-geography-geographic-codes
3
+
4
+ Geographic codes and regional value sets
5
+
6
+ Generated from: geography/geographic_codes.yaml
7
+ """
8
+
9
+ from __future__ import annotations
10
+
11
+ from typing import Dict, Any, Optional
12
+ from valuesets.generators.rich_enum import RichEnum
13
+
14
+ class CountryCodeISO2Enum(RichEnum):
15
+ """
16
+ ISO 3166-1 alpha-2 country codes (2-letter codes)
17
+ """
18
+ # Enum members
19
+ US = "US"
20
+ CA = "CA"
21
+ MX = "MX"
22
+ GB = "GB"
23
+ FR = "FR"
24
+ DE = "DE"
25
+ IT = "IT"
26
+ ES = "ES"
27
+ PT = "PT"
28
+ NL = "NL"
29
+ BE = "BE"
30
+ CH = "CH"
31
+ AT = "AT"
32
+ SE = "SE"
33
+ FALSE = "False"
34
+ DK = "DK"
35
+ FI = "FI"
36
+ PL = "PL"
37
+ RU = "RU"
38
+ UA = "UA"
39
+ CN = "CN"
40
+ JP = "JP"
41
+ KR = "KR"
42
+ IN = "IN"
43
+ AU = "AU"
44
+ NZ = "NZ"
45
+ BR = "BR"
46
+ AR = "AR"
47
+ CL = "CL"
48
+ CO = "CO"
49
+ PE = "PE"
50
+ VE = "VE"
51
+ ZA = "ZA"
52
+ EG = "EG"
53
+ NG = "NG"
54
+ KE = "KE"
55
+ IL = "IL"
56
+ SA = "SA"
57
+ AE = "AE"
58
+ TR = "TR"
59
+ GR = "GR"
60
+ IE = "IE"
61
+ SG = "SG"
62
+ MY = "MY"
63
+ TH = "TH"
64
+ ID = "ID"
65
+ PH = "PH"
66
+ VN = "VN"
67
+ PK = "PK"
68
+ BD = "BD"
69
+
70
+ # Set metadata after class creation
71
+ CountryCodeISO2Enum._metadata = {
72
+ "US": {'description': 'United States of America', 'meaning': 'iso3166loc:us'},
73
+ "CA": {'description': 'Canada', 'meaning': 'iso3166loc:ca'},
74
+ "MX": {'description': 'Mexico', 'meaning': 'iso3166loc:mx'},
75
+ "GB": {'description': 'United Kingdom', 'meaning': 'iso3166loc:gb'},
76
+ "FR": {'description': 'France', 'meaning': 'iso3166loc:fr'},
77
+ "DE": {'description': 'Germany', 'meaning': 'iso3166loc:de'},
78
+ "IT": {'description': 'Italy', 'meaning': 'iso3166loc:it'},
79
+ "ES": {'description': 'Spain', 'meaning': 'iso3166loc:es'},
80
+ "PT": {'description': 'Portugal', 'meaning': 'iso3166loc:pt'},
81
+ "NL": {'description': 'Netherlands', 'meaning': 'iso3166loc:nl'},
82
+ "BE": {'description': 'Belgium', 'meaning': 'iso3166loc:be'},
83
+ "CH": {'description': 'Switzerland', 'meaning': 'iso3166loc:ch'},
84
+ "AT": {'description': 'Austria', 'meaning': 'iso3166loc:at'},
85
+ "SE": {'description': 'Sweden', 'meaning': 'iso3166loc:se'},
86
+ "FALSE": {'description': 'Norway', 'meaning': 'iso3166loc:no'},
87
+ "DK": {'description': 'Denmark', 'meaning': 'iso3166loc:dk'},
88
+ "FI": {'description': 'Finland', 'meaning': 'iso3166loc:fi'},
89
+ "PL": {'description': 'Poland', 'meaning': 'iso3166loc:pl'},
90
+ "RU": {'description': 'Russian Federation', 'meaning': 'iso3166loc:ru'},
91
+ "UA": {'description': 'Ukraine', 'meaning': 'iso3166loc:ua'},
92
+ "CN": {'description': 'China', 'meaning': 'iso3166loc:cn'},
93
+ "JP": {'description': 'Japan', 'meaning': 'iso3166loc:jp'},
94
+ "KR": {'description': 'South Korea', 'meaning': 'iso3166loc:kr'},
95
+ "IN": {'description': 'India', 'meaning': 'iso3166loc:in'},
96
+ "AU": {'description': 'Australia', 'meaning': 'iso3166loc:au'},
97
+ "NZ": {'description': 'New Zealand', 'meaning': 'iso3166loc:nz'},
98
+ "BR": {'description': 'Brazil', 'meaning': 'iso3166loc:br'},
99
+ "AR": {'description': 'Argentina', 'meaning': 'iso3166loc:ar'},
100
+ "CL": {'description': 'Chile', 'meaning': 'iso3166loc:cl'},
101
+ "CO": {'description': 'Colombia', 'meaning': 'iso3166loc:co'},
102
+ "PE": {'description': 'Peru', 'meaning': 'iso3166loc:pe'},
103
+ "VE": {'description': 'Venezuela', 'meaning': 'iso3166loc:ve'},
104
+ "ZA": {'description': 'South Africa', 'meaning': 'iso3166loc:za'},
105
+ "EG": {'description': 'Egypt', 'meaning': 'iso3166loc:eg'},
106
+ "NG": {'description': 'Nigeria', 'meaning': 'iso3166loc:ng'},
107
+ "KE": {'description': 'Kenya', 'meaning': 'iso3166loc:ke'},
108
+ "IL": {'description': 'Israel', 'meaning': 'iso3166loc:il'},
109
+ "SA": {'description': 'Saudi Arabia', 'meaning': 'iso3166loc:sa'},
110
+ "AE": {'description': 'United Arab Emirates', 'meaning': 'iso3166loc:ae'},
111
+ "TR": {'description': 'Turkey', 'meaning': 'iso3166loc:tr'},
112
+ "GR": {'description': 'Greece', 'meaning': 'iso3166loc:gr'},
113
+ "IE": {'description': 'Ireland', 'meaning': 'iso3166loc:ie'},
114
+ "SG": {'description': 'Singapore', 'meaning': 'iso3166loc:sg'},
115
+ "MY": {'description': 'Malaysia', 'meaning': 'iso3166loc:my'},
116
+ "TH": {'description': 'Thailand', 'meaning': 'iso3166loc:th'},
117
+ "ID": {'description': 'Indonesia', 'meaning': 'iso3166loc:id'},
118
+ "PH": {'description': 'Philippines', 'meaning': 'iso3166loc:ph'},
119
+ "VN": {'description': 'Vietnam', 'meaning': 'iso3166loc:vn'},
120
+ "PK": {'description': 'Pakistan', 'meaning': 'iso3166loc:pk'},
121
+ "BD": {'description': 'Bangladesh', 'meaning': 'iso3166loc:bd'},
122
+ }
123
+
124
+ class CountryCodeISO3Enum(RichEnum):
125
+ """
126
+ ISO 3166-1 alpha-3 country codes (3-letter codes)
127
+ """
128
+ # Enum members
129
+ USA = "USA"
130
+ CAN = "CAN"
131
+ MEX = "MEX"
132
+ GBR = "GBR"
133
+ FRA = "FRA"
134
+ DEU = "DEU"
135
+ ITA = "ITA"
136
+ ESP = "ESP"
137
+ PRT = "PRT"
138
+ NLD = "NLD"
139
+ BEL = "BEL"
140
+ CHE = "CHE"
141
+ AUT = "AUT"
142
+ SWE = "SWE"
143
+ NOR = "NOR"
144
+ DNK = "DNK"
145
+ FIN = "FIN"
146
+ POL = "POL"
147
+ RUS = "RUS"
148
+ UKR = "UKR"
149
+ CHN = "CHN"
150
+ JPN = "JPN"
151
+ KOR = "KOR"
152
+ IND = "IND"
153
+ AUS = "AUS"
154
+ NZL = "NZL"
155
+ BRA = "BRA"
156
+ ARG = "ARG"
157
+ CHL = "CHL"
158
+ COL = "COL"
159
+
160
+ # Set metadata after class creation
161
+ CountryCodeISO3Enum._metadata = {
162
+ "USA": {'description': 'United States of America', 'meaning': 'iso3166loc:us'},
163
+ "CAN": {'description': 'Canada', 'meaning': 'iso3166loc:ca'},
164
+ "MEX": {'description': 'Mexico', 'meaning': 'iso3166loc:mx'},
165
+ "GBR": {'description': 'United Kingdom', 'meaning': 'iso3166loc:gb'},
166
+ "FRA": {'description': 'France', 'meaning': 'iso3166loc:fr'},
167
+ "DEU": {'description': 'Germany', 'meaning': 'iso3166loc:de'},
168
+ "ITA": {'description': 'Italy', 'meaning': 'iso3166loc:it'},
169
+ "ESP": {'description': 'Spain', 'meaning': 'iso3166loc:es'},
170
+ "PRT": {'description': 'Portugal', 'meaning': 'iso3166loc:pt'},
171
+ "NLD": {'description': 'Netherlands', 'meaning': 'iso3166loc:nl'},
172
+ "BEL": {'description': 'Belgium', 'meaning': 'iso3166loc:be'},
173
+ "CHE": {'description': 'Switzerland', 'meaning': 'iso3166loc:ch'},
174
+ "AUT": {'description': 'Austria', 'meaning': 'iso3166loc:at'},
175
+ "SWE": {'description': 'Sweden', 'meaning': 'iso3166loc:se'},
176
+ "NOR": {'description': 'Norway', 'meaning': 'iso3166loc:no'},
177
+ "DNK": {'description': 'Denmark', 'meaning': 'iso3166loc:dk'},
178
+ "FIN": {'description': 'Finland', 'meaning': 'iso3166loc:fi'},
179
+ "POL": {'description': 'Poland', 'meaning': 'iso3166loc:pl'},
180
+ "RUS": {'description': 'Russian Federation', 'meaning': 'iso3166loc:ru'},
181
+ "UKR": {'description': 'Ukraine', 'meaning': 'iso3166loc:ua'},
182
+ "CHN": {'description': 'China', 'meaning': 'iso3166loc:cn'},
183
+ "JPN": {'description': 'Japan', 'meaning': 'iso3166loc:jp'},
184
+ "KOR": {'description': 'South Korea', 'meaning': 'iso3166loc:kr'},
185
+ "IND": {'description': 'India', 'meaning': 'iso3166loc:in'},
186
+ "AUS": {'description': 'Australia', 'meaning': 'iso3166loc:au'},
187
+ "NZL": {'description': 'New Zealand', 'meaning': 'iso3166loc:nz'},
188
+ "BRA": {'description': 'Brazil', 'meaning': 'iso3166loc:br'},
189
+ "ARG": {'description': 'Argentina', 'meaning': 'iso3166loc:ar'},
190
+ "CHL": {'description': 'Chile', 'meaning': 'iso3166loc:cl'},
191
+ "COL": {'description': 'Colombia', 'meaning': 'iso3166loc:co'},
192
+ }
193
+
194
+ class USStateCodeEnum(RichEnum):
195
+ """
196
+ United States state and territory codes
197
+ """
198
+ # Enum members
199
+ AL = "AL"
200
+ AK = "AK"
201
+ AZ = "AZ"
202
+ AR = "AR"
203
+ CA = "CA"
204
+ CO = "CO"
205
+ CT = "CT"
206
+ DE = "DE"
207
+ FL = "FL"
208
+ GA = "GA"
209
+ HI = "HI"
210
+ ID = "ID"
211
+ IL = "IL"
212
+ IN = "IN"
213
+ IA = "IA"
214
+ KS = "KS"
215
+ KY = "KY"
216
+ LA = "LA"
217
+ ME = "ME"
218
+ MD = "MD"
219
+ MA = "MA"
220
+ MI = "MI"
221
+ MN = "MN"
222
+ MS = "MS"
223
+ MO = "MO"
224
+ MT = "MT"
225
+ NE = "NE"
226
+ NV = "NV"
227
+ NH = "NH"
228
+ NJ = "NJ"
229
+ NM = "NM"
230
+ NY = "NY"
231
+ NC = "NC"
232
+ ND = "ND"
233
+ OH = "OH"
234
+ OK = "OK"
235
+ OR = "OR"
236
+ PA = "PA"
237
+ RI = "RI"
238
+ SC = "SC"
239
+ SD = "SD"
240
+ TN = "TN"
241
+ TX = "TX"
242
+ UT = "UT"
243
+ VT = "VT"
244
+ VA = "VA"
245
+ WA = "WA"
246
+ WV = "WV"
247
+ WI = "WI"
248
+ WY = "WY"
249
+ DC = "DC"
250
+ PR = "PR"
251
+ VI = "VI"
252
+ GU = "GU"
253
+ AS = "AS"
254
+ MP = "MP"
255
+
256
+ # Set metadata after class creation
257
+ USStateCodeEnum._metadata = {
258
+ "AL": {'description': 'Alabama'},
259
+ "AK": {'description': 'Alaska'},
260
+ "AZ": {'description': 'Arizona'},
261
+ "AR": {'description': 'Arkansas'},
262
+ "CA": {'description': 'California'},
263
+ "CO": {'description': 'Colorado'},
264
+ "CT": {'description': 'Connecticut'},
265
+ "DE": {'description': 'Delaware'},
266
+ "FL": {'description': 'Florida'},
267
+ "GA": {'description': 'Georgia'},
268
+ "HI": {'description': 'Hawaii'},
269
+ "ID": {'description': 'Idaho'},
270
+ "IL": {'description': 'Illinois'},
271
+ "IN": {'description': 'Indiana'},
272
+ "IA": {'description': 'Iowa'},
273
+ "KS": {'description': 'Kansas'},
274
+ "KY": {'description': 'Kentucky'},
275
+ "LA": {'description': 'Louisiana'},
276
+ "ME": {'description': 'Maine'},
277
+ "MD": {'description': 'Maryland'},
278
+ "MA": {'description': 'Massachusetts'},
279
+ "MI": {'description': 'Michigan'},
280
+ "MN": {'description': 'Minnesota'},
281
+ "MS": {'description': 'Mississippi'},
282
+ "MO": {'description': 'Missouri'},
283
+ "MT": {'description': 'Montana'},
284
+ "NE": {'description': 'Nebraska'},
285
+ "NV": {'description': 'Nevada'},
286
+ "NH": {'description': 'New Hampshire'},
287
+ "NJ": {'description': 'New Jersey'},
288
+ "NM": {'description': 'New Mexico'},
289
+ "NY": {'description': 'New York'},
290
+ "NC": {'description': 'North Carolina'},
291
+ "ND": {'description': 'North Dakota'},
292
+ "OH": {'description': 'Ohio'},
293
+ "OK": {'description': 'Oklahoma'},
294
+ "OR": {'description': 'Oregon'},
295
+ "PA": {'description': 'Pennsylvania'},
296
+ "RI": {'description': 'Rhode Island'},
297
+ "SC": {'description': 'South Carolina'},
298
+ "SD": {'description': 'South Dakota'},
299
+ "TN": {'description': 'Tennessee'},
300
+ "TX": {'description': 'Texas'},
301
+ "UT": {'description': 'Utah'},
302
+ "VT": {'description': 'Vermont'},
303
+ "VA": {'description': 'Virginia'},
304
+ "WA": {'description': 'Washington'},
305
+ "WV": {'description': 'West Virginia'},
306
+ "WI": {'description': 'Wisconsin'},
307
+ "WY": {'description': 'Wyoming'},
308
+ "DC": {'description': 'District of Columbia'},
309
+ "PR": {'description': 'Puerto Rico'},
310
+ "VI": {'description': 'U.S. Virgin Islands'},
311
+ "GU": {'description': 'Guam'},
312
+ "AS": {'description': 'American Samoa'},
313
+ "MP": {'description': 'Northern Mariana Islands'},
314
+ }
315
+
316
+ class CanadianProvinceCodeEnum(RichEnum):
317
+ """
318
+ Canadian province and territory codes
319
+ """
320
+ # Enum members
321
+ AB = "AB"
322
+ BC = "BC"
323
+ MB = "MB"
324
+ NB = "NB"
325
+ NL = "NL"
326
+ NS = "NS"
327
+ NT = "NT"
328
+ NU = "NU"
329
+ TRUE = "True"
330
+ PE = "PE"
331
+ QC = "QC"
332
+ SK = "SK"
333
+ YT = "YT"
334
+
335
+ # Set metadata after class creation
336
+ CanadianProvinceCodeEnum._metadata = {
337
+ "AB": {'description': 'Alberta'},
338
+ "BC": {'description': 'British Columbia'},
339
+ "MB": {'description': 'Manitoba'},
340
+ "NB": {'description': 'New Brunswick'},
341
+ "NL": {'description': 'Newfoundland and Labrador'},
342
+ "NS": {'description': 'Nova Scotia'},
343
+ "NT": {'description': 'Northwest Territories'},
344
+ "NU": {'description': 'Nunavut'},
345
+ "TRUE": {'description': 'Ontario'},
346
+ "PE": {'description': 'Prince Edward Island'},
347
+ "QC": {'description': 'Quebec'},
348
+ "SK": {'description': 'Saskatchewan'},
349
+ "YT": {'description': 'Yukon'},
350
+ }
351
+
352
+ class CompassDirection(RichEnum):
353
+ """
354
+ Cardinal and intercardinal compass directions
355
+ """
356
+ # Enum members
357
+ NORTH = "NORTH"
358
+ EAST = "EAST"
359
+ SOUTH = "SOUTH"
360
+ WEST = "WEST"
361
+ NORTHEAST = "NORTHEAST"
362
+ SOUTHEAST = "SOUTHEAST"
363
+ SOUTHWEST = "SOUTHWEST"
364
+ NORTHWEST = "NORTHWEST"
365
+ NORTH_NORTHEAST = "NORTH_NORTHEAST"
366
+ EAST_NORTHEAST = "EAST_NORTHEAST"
367
+ EAST_SOUTHEAST = "EAST_SOUTHEAST"
368
+ SOUTH_SOUTHEAST = "SOUTH_SOUTHEAST"
369
+ SOUTH_SOUTHWEST = "SOUTH_SOUTHWEST"
370
+ WEST_SOUTHWEST = "WEST_SOUTHWEST"
371
+ WEST_NORTHWEST = "WEST_NORTHWEST"
372
+ NORTH_NORTHWEST = "NORTH_NORTHWEST"
373
+
374
+ # Set metadata after class creation
375
+ CompassDirection._metadata = {
376
+ "NORTH": {'description': 'North (0°/360°)', 'annotations': {'abbreviation': 'N', 'degrees': 0}},
377
+ "EAST": {'description': 'East (90°)', 'annotations': {'abbreviation': 'E', 'degrees': 90}},
378
+ "SOUTH": {'description': 'South (180°)', 'annotations': {'abbreviation': 'S', 'degrees': 180}},
379
+ "WEST": {'description': 'West (270°)', 'annotations': {'abbreviation': 'W', 'degrees': 270}},
380
+ "NORTHEAST": {'description': 'Northeast (45°)', 'annotations': {'abbreviation': 'NE', 'degrees': 45}},
381
+ "SOUTHEAST": {'description': 'Southeast (135°)', 'annotations': {'abbreviation': 'SE', 'degrees': 135}},
382
+ "SOUTHWEST": {'description': 'Southwest (225°)', 'annotations': {'abbreviation': 'SW', 'degrees': 225}},
383
+ "NORTHWEST": {'description': 'Northwest (315°)', 'annotations': {'abbreviation': 'NW', 'degrees': 315}},
384
+ "NORTH_NORTHEAST": {'description': 'North-northeast (22.5°)', 'annotations': {'abbreviation': 'NNE', 'degrees': 22.5}},
385
+ "EAST_NORTHEAST": {'description': 'East-northeast (67.5°)', 'annotations': {'abbreviation': 'ENE', 'degrees': 67.5}},
386
+ "EAST_SOUTHEAST": {'description': 'East-southeast (112.5°)', 'annotations': {'abbreviation': 'ESE', 'degrees': 112.5}},
387
+ "SOUTH_SOUTHEAST": {'description': 'South-southeast (157.5°)', 'annotations': {'abbreviation': 'SSE', 'degrees': 157.5}},
388
+ "SOUTH_SOUTHWEST": {'description': 'South-southwest (202.5°)', 'annotations': {'abbreviation': 'SSW', 'degrees': 202.5}},
389
+ "WEST_SOUTHWEST": {'description': 'West-southwest (247.5°)', 'annotations': {'abbreviation': 'WSW', 'degrees': 247.5}},
390
+ "WEST_NORTHWEST": {'description': 'West-northwest (292.5°)', 'annotations': {'abbreviation': 'WNW', 'degrees': 292.5}},
391
+ "NORTH_NORTHWEST": {'description': 'North-northwest (337.5°)', 'annotations': {'abbreviation': 'NNW', 'degrees': 337.5}},
392
+ }
393
+
394
+ class RelativeDirection(RichEnum):
395
+ """
396
+ Relative directional terms
397
+ """
398
+ # Enum members
399
+ FORWARD = "FORWARD"
400
+ BACKWARD = "BACKWARD"
401
+ LEFT = "LEFT"
402
+ RIGHT = "RIGHT"
403
+ UP = "UP"
404
+ DOWN = "DOWN"
405
+ INWARD = "INWARD"
406
+ OUTWARD = "OUTWARD"
407
+ CLOCKWISE = "CLOCKWISE"
408
+ COUNTERCLOCKWISE = "COUNTERCLOCKWISE"
409
+
410
+ # Set metadata after class creation
411
+ RelativeDirection._metadata = {
412
+ "FORWARD": {'description': 'Forward/Ahead', 'annotations': {'aliases': 'ahead, front'}},
413
+ "BACKWARD": {'description': 'Backward/Behind', 'annotations': {'aliases': 'behind, back, rear'}},
414
+ "LEFT": {'description': 'Left', 'annotations': {'aliases': 'port (nautical)'}},
415
+ "RIGHT": {'description': 'Right', 'annotations': {'aliases': 'starboard (nautical)'}},
416
+ "UP": {'description': 'Up/Above', 'annotations': {'aliases': 'above, upward'}},
417
+ "DOWN": {'description': 'Down/Below', 'annotations': {'aliases': 'below, downward'}},
418
+ "INWARD": {'description': 'Inward/Toward center', 'annotations': {'aliases': 'toward center, centripetal'}},
419
+ "OUTWARD": {'description': 'Outward/Away from center', 'annotations': {'aliases': 'away from center, centrifugal'}},
420
+ "CLOCKWISE": {'description': 'Clockwise rotation', 'annotations': {'abbreviation': 'CW'}},
421
+ "COUNTERCLOCKWISE": {'description': 'Counterclockwise rotation', 'annotations': {'abbreviation': 'CCW', 'aliases': 'anticlockwise'}},
422
+ }
423
+
424
+ class WindDirection(RichEnum):
425
+ """
426
+ Wind direction nomenclature (named for where wind comes FROM)
427
+ """
428
+ # Enum members
429
+ NORTHERLY = "NORTHERLY"
430
+ NORTHEASTERLY = "NORTHEASTERLY"
431
+ EASTERLY = "EASTERLY"
432
+ SOUTHEASTERLY = "SOUTHEASTERLY"
433
+ SOUTHERLY = "SOUTHERLY"
434
+ SOUTHWESTERLY = "SOUTHWESTERLY"
435
+ WESTERLY = "WESTERLY"
436
+ NORTHWESTERLY = "NORTHWESTERLY"
437
+ VARIABLE = "VARIABLE"
438
+
439
+ # Set metadata after class creation
440
+ WindDirection._metadata = {
441
+ "NORTHERLY": {'description': 'Wind from the north', 'annotations': {'from_direction': 'north', 'toward_direction': 'south'}},
442
+ "NORTHEASTERLY": {'description': 'Wind from the northeast', 'annotations': {'from_direction': 'northeast', 'toward_direction': 'southwest'}},
443
+ "EASTERLY": {'description': 'Wind from the east', 'annotations': {'from_direction': 'east', 'toward_direction': 'west'}},
444
+ "SOUTHEASTERLY": {'description': 'Wind from the southeast', 'annotations': {'from_direction': 'southeast', 'toward_direction': 'northwest'}},
445
+ "SOUTHERLY": {'description': 'Wind from the south', 'annotations': {'from_direction': 'south', 'toward_direction': 'north'}},
446
+ "SOUTHWESTERLY": {'description': 'Wind from the southwest', 'annotations': {'from_direction': 'southwest', 'toward_direction': 'northeast'}},
447
+ "WESTERLY": {'description': 'Wind from the west', 'annotations': {'from_direction': 'west', 'toward_direction': 'east'}},
448
+ "NORTHWESTERLY": {'description': 'Wind from the northwest', 'annotations': {'from_direction': 'northwest', 'toward_direction': 'southeast'}},
449
+ "VARIABLE": {'description': 'Variable wind direction', 'annotations': {'note': 'changing or inconsistent direction'}},
450
+ }
451
+
452
+ class ContinentEnum(RichEnum):
453
+ """
454
+ Continental regions
455
+ """
456
+ # Enum members
457
+ AFRICA = "AFRICA"
458
+ ANTARCTICA = "ANTARCTICA"
459
+ ASIA = "ASIA"
460
+ EUROPE = "EUROPE"
461
+ NORTH_AMERICA = "NORTH_AMERICA"
462
+ OCEANIA = "OCEANIA"
463
+ SOUTH_AMERICA = "SOUTH_AMERICA"
464
+
465
+ # Set metadata after class creation
466
+ ContinentEnum._metadata = {
467
+ "AFRICA": {'description': 'Africa'},
468
+ "ANTARCTICA": {'description': 'Antarctica'},
469
+ "ASIA": {'description': 'Asia'},
470
+ "EUROPE": {'description': 'Europe'},
471
+ "NORTH_AMERICA": {'description': 'North America'},
472
+ "OCEANIA": {'description': 'Oceania (including Australia)'},
473
+ "SOUTH_AMERICA": {'description': 'South America'},
474
+ }
475
+
476
+ class UNRegionEnum(RichEnum):
477
+ """
478
+ United Nations regional classifications
479
+ """
480
+ # Enum members
481
+ EASTERN_AFRICA = "EASTERN_AFRICA"
482
+ MIDDLE_AFRICA = "MIDDLE_AFRICA"
483
+ NORTHERN_AFRICA = "NORTHERN_AFRICA"
484
+ SOUTHERN_AFRICA = "SOUTHERN_AFRICA"
485
+ WESTERN_AFRICA = "WESTERN_AFRICA"
486
+ CARIBBEAN = "CARIBBEAN"
487
+ CENTRAL_AMERICA = "CENTRAL_AMERICA"
488
+ NORTHERN_AMERICA = "NORTHERN_AMERICA"
489
+ SOUTH_AMERICA = "SOUTH_AMERICA"
490
+ CENTRAL_ASIA = "CENTRAL_ASIA"
491
+ EASTERN_ASIA = "EASTERN_ASIA"
492
+ SOUTHERN_ASIA = "SOUTHERN_ASIA"
493
+ SOUTH_EASTERN_ASIA = "SOUTH_EASTERN_ASIA"
494
+ WESTERN_ASIA = "WESTERN_ASIA"
495
+ EASTERN_EUROPE = "EASTERN_EUROPE"
496
+ NORTHERN_EUROPE = "NORTHERN_EUROPE"
497
+ SOUTHERN_EUROPE = "SOUTHERN_EUROPE"
498
+ WESTERN_EUROPE = "WESTERN_EUROPE"
499
+ AUSTRALIA_NEW_ZEALAND = "AUSTRALIA_NEW_ZEALAND"
500
+ MELANESIA = "MELANESIA"
501
+ MICRONESIA = "MICRONESIA"
502
+ POLYNESIA = "POLYNESIA"
503
+
504
+ # Set metadata after class creation
505
+ UNRegionEnum._metadata = {
506
+ "EASTERN_AFRICA": {'description': 'Eastern Africa'},
507
+ "MIDDLE_AFRICA": {'description': 'Middle Africa'},
508
+ "NORTHERN_AFRICA": {'description': 'Northern Africa'},
509
+ "SOUTHERN_AFRICA": {'description': 'Southern Africa'},
510
+ "WESTERN_AFRICA": {'description': 'Western Africa'},
511
+ "CARIBBEAN": {'description': 'Caribbean'},
512
+ "CENTRAL_AMERICA": {'description': 'Central America'},
513
+ "NORTHERN_AMERICA": {'description': 'Northern America'},
514
+ "SOUTH_AMERICA": {'description': 'South America'},
515
+ "CENTRAL_ASIA": {'description': 'Central Asia'},
516
+ "EASTERN_ASIA": {'description': 'Eastern Asia'},
517
+ "SOUTHERN_ASIA": {'description': 'Southern Asia'},
518
+ "SOUTH_EASTERN_ASIA": {'description': 'South-Eastern Asia'},
519
+ "WESTERN_ASIA": {'description': 'Western Asia'},
520
+ "EASTERN_EUROPE": {'description': 'Eastern Europe'},
521
+ "NORTHERN_EUROPE": {'description': 'Northern Europe'},
522
+ "SOUTHERN_EUROPE": {'description': 'Southern Europe'},
523
+ "WESTERN_EUROPE": {'description': 'Western Europe'},
524
+ "AUSTRALIA_NEW_ZEALAND": {'description': 'Australia and New Zealand'},
525
+ "MELANESIA": {'description': 'Melanesia'},
526
+ "MICRONESIA": {'description': 'Micronesia'},
527
+ "POLYNESIA": {'description': 'Polynesia'},
528
+ }
529
+
530
+ class LanguageCodeISO6391enum(RichEnum):
531
+ """
532
+ ISO 639-1 two-letter language codes
533
+ """
534
+ # Enum members
535
+ EN = "EN"
536
+ ES = "ES"
537
+ FR = "FR"
538
+ DE = "DE"
539
+ IT = "IT"
540
+ PT = "PT"
541
+ RU = "RU"
542
+ ZH = "ZH"
543
+ JA = "JA"
544
+ KO = "KO"
545
+ AR = "AR"
546
+ HI = "HI"
547
+ BN = "BN"
548
+ PA = "PA"
549
+ UR = "UR"
550
+ NL = "NL"
551
+ PL = "PL"
552
+ TR = "TR"
553
+ VI = "VI"
554
+ TH = "TH"
555
+ SV = "SV"
556
+ DA = "DA"
557
+ FALSE = "False"
558
+ FI = "FI"
559
+ EL = "EL"
560
+ HE = "HE"
561
+ CS = "CS"
562
+ HU = "HU"
563
+ RO = "RO"
564
+ UK = "UK"
565
+
566
+ # Set metadata after class creation
567
+ LanguageCodeISO6391enum._metadata = {
568
+ "EN": {'description': 'English'},
569
+ "ES": {'description': 'Spanish'},
570
+ "FR": {'description': 'French'},
571
+ "DE": {'description': 'German'},
572
+ "IT": {'description': 'Italian'},
573
+ "PT": {'description': 'Portuguese'},
574
+ "RU": {'description': 'Russian'},
575
+ "ZH": {'description': 'Chinese'},
576
+ "JA": {'description': 'Japanese'},
577
+ "KO": {'description': 'Korean'},
578
+ "AR": {'description': 'Arabic'},
579
+ "HI": {'description': 'Hindi'},
580
+ "BN": {'description': 'Bengali'},
581
+ "PA": {'description': 'Punjabi'},
582
+ "UR": {'description': 'Urdu'},
583
+ "NL": {'description': 'Dutch'},
584
+ "PL": {'description': 'Polish'},
585
+ "TR": {'description': 'Turkish'},
586
+ "VI": {'description': 'Vietnamese'},
587
+ "TH": {'description': 'Thai'},
588
+ "SV": {'description': 'Swedish'},
589
+ "DA": {'description': 'Danish'},
590
+ "FALSE": {'description': 'Norwegian'},
591
+ "FI": {'description': 'Finnish'},
592
+ "EL": {'description': 'Greek'},
593
+ "HE": {'description': 'Hebrew'},
594
+ "CS": {'description': 'Czech'},
595
+ "HU": {'description': 'Hungarian'},
596
+ "RO": {'description': 'Romanian'},
597
+ "UK": {'description': 'Ukrainian'},
598
+ }
599
+
600
+ class TimeZoneEnum(RichEnum):
601
+ """
602
+ Common time zones
603
+ """
604
+ # Enum members
605
+ UTC = "UTC"
606
+ EST = "EST"
607
+ EDT = "EDT"
608
+ CST = "CST"
609
+ CDT = "CDT"
610
+ MST = "MST"
611
+ MDT = "MDT"
612
+ PST = "PST"
613
+ PDT = "PDT"
614
+ GMT = "GMT"
615
+ BST = "BST"
616
+ CET = "CET"
617
+ CEST = "CEST"
618
+ EET = "EET"
619
+ EEST = "EEST"
620
+ JST = "JST"
621
+ CST_CHINA = "CST_CHINA"
622
+ IST = "IST"
623
+ AEST = "AEST"
624
+ AEDT = "AEDT"
625
+ NZST = "NZST"
626
+ NZDT = "NZDT"
627
+
628
+ # Set metadata after class creation
629
+ TimeZoneEnum._metadata = {
630
+ "UTC": {'description': 'Coordinated Universal Time'},
631
+ "EST": {'description': 'Eastern Standard Time (UTC-5)'},
632
+ "EDT": {'description': 'Eastern Daylight Time (UTC-4)'},
633
+ "CST": {'description': 'Central Standard Time (UTC-6)'},
634
+ "CDT": {'description': 'Central Daylight Time (UTC-5)'},
635
+ "MST": {'description': 'Mountain Standard Time (UTC-7)'},
636
+ "MDT": {'description': 'Mountain Daylight Time (UTC-6)'},
637
+ "PST": {'description': 'Pacific Standard Time (UTC-8)'},
638
+ "PDT": {'description': 'Pacific Daylight Time (UTC-7)'},
639
+ "GMT": {'description': 'Greenwich Mean Time (UTC+0)'},
640
+ "BST": {'description': 'British Summer Time (UTC+1)'},
641
+ "CET": {'description': 'Central European Time (UTC+1)'},
642
+ "CEST": {'description': 'Central European Summer Time (UTC+2)'},
643
+ "EET": {'description': 'Eastern European Time (UTC+2)'},
644
+ "EEST": {'description': 'Eastern European Summer Time (UTC+3)'},
645
+ "JST": {'description': 'Japan Standard Time (UTC+9)'},
646
+ "CST_CHINA": {'description': 'China Standard Time (UTC+8)'},
647
+ "IST": {'description': 'India Standard Time (UTC+5:30)'},
648
+ "AEST": {'description': 'Australian Eastern Standard Time (UTC+10)'},
649
+ "AEDT": {'description': 'Australian Eastern Daylight Time (UTC+11)'},
650
+ "NZST": {'description': 'New Zealand Standard Time (UTC+12)'},
651
+ "NZDT": {'description': 'New Zealand Daylight Time (UTC+13)'},
652
+ }
653
+
654
+ class CurrencyCodeISO4217Enum(RichEnum):
655
+ """
656
+ ISO 4217 currency codes
657
+ """
658
+ # Enum members
659
+ USD = "USD"
660
+ EUR = "EUR"
661
+ GBP = "GBP"
662
+ JPY = "JPY"
663
+ CNY = "CNY"
664
+ CHF = "CHF"
665
+ CAD = "CAD"
666
+ AUD = "AUD"
667
+ NZD = "NZD"
668
+ SEK = "SEK"
669
+ NOK = "NOK"
670
+ DKK = "DKK"
671
+ PLN = "PLN"
672
+ RUB = "RUB"
673
+ INR = "INR"
674
+ BRL = "BRL"
675
+ MXN = "MXN"
676
+ ZAR = "ZAR"
677
+ KRW = "KRW"
678
+ SGD = "SGD"
679
+ HKD = "HKD"
680
+ TWD = "TWD"
681
+ THB = "THB"
682
+ MYR = "MYR"
683
+ IDR = "IDR"
684
+ PHP = "PHP"
685
+ VND = "VND"
686
+ TRY = "TRY"
687
+ AED = "AED"
688
+ SAR = "SAR"
689
+ ILS = "ILS"
690
+ EGP = "EGP"
691
+
692
+ # Set metadata after class creation
693
+ CurrencyCodeISO4217Enum._metadata = {
694
+ "USD": {'description': 'United States Dollar'},
695
+ "EUR": {'description': 'Euro'},
696
+ "GBP": {'description': 'British Pound Sterling'},
697
+ "JPY": {'description': 'Japanese Yen'},
698
+ "CNY": {'description': 'Chinese Yuan Renminbi'},
699
+ "CHF": {'description': 'Swiss Franc'},
700
+ "CAD": {'description': 'Canadian Dollar'},
701
+ "AUD": {'description': 'Australian Dollar'},
702
+ "NZD": {'description': 'New Zealand Dollar'},
703
+ "SEK": {'description': 'Swedish Krona'},
704
+ "NOK": {'description': 'Norwegian Krone'},
705
+ "DKK": {'description': 'Danish Krone'},
706
+ "PLN": {'description': 'Polish Zloty'},
707
+ "RUB": {'description': 'Russian Ruble'},
708
+ "INR": {'description': 'Indian Rupee'},
709
+ "BRL": {'description': 'Brazilian Real'},
710
+ "MXN": {'description': 'Mexican Peso'},
711
+ "ZAR": {'description': 'South African Rand'},
712
+ "KRW": {'description': 'South Korean Won'},
713
+ "SGD": {'description': 'Singapore Dollar'},
714
+ "HKD": {'description': 'Hong Kong Dollar'},
715
+ "TWD": {'description': 'Taiwan Dollar'},
716
+ "THB": {'description': 'Thai Baht'},
717
+ "MYR": {'description': 'Malaysian Ringgit'},
718
+ "IDR": {'description': 'Indonesian Rupiah'},
719
+ "PHP": {'description': 'Philippine Peso'},
720
+ "VND": {'description': 'Vietnamese Dong'},
721
+ "TRY": {'description': 'Turkish Lira'},
722
+ "AED": {'description': 'UAE Dirham'},
723
+ "SAR": {'description': 'Saudi Riyal'},
724
+ "ILS": {'description': 'Israeli Shekel'},
725
+ "EGP": {'description': 'Egyptian Pound'},
726
+ }
727
+
728
+ __all__ = [
729
+ "CountryCodeISO2Enum",
730
+ "CountryCodeISO3Enum",
731
+ "USStateCodeEnum",
732
+ "CanadianProvinceCodeEnum",
733
+ "CompassDirection",
734
+ "RelativeDirection",
735
+ "WindDirection",
736
+ "ContinentEnum",
737
+ "UNRegionEnum",
738
+ "LanguageCodeISO6391enum",
739
+ "TimeZoneEnum",
740
+ "CurrencyCodeISO4217Enum",
741
+ ]