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,310 @@
1
+ """
2
+ Units and Measurements Value Sets
3
+
4
+ Value sets for units of measurement including length, mass, volume, temperature, and other physical quantities following SI and common standards.
5
+
6
+
7
+ Generated from: units/measurements.yaml
8
+ """
9
+
10
+ from __future__ import annotations
11
+
12
+ from typing import Dict, Any, Optional
13
+ from valuesets.generators.rich_enum import RichEnum
14
+
15
+ class LengthUnitEnum(RichEnum):
16
+ """
17
+ Units of length/distance measurement
18
+ """
19
+ # Enum members
20
+ METER = "METER"
21
+ KILOMETER = "KILOMETER"
22
+ CENTIMETER = "CENTIMETER"
23
+ MILLIMETER = "MILLIMETER"
24
+ MICROMETER = "MICROMETER"
25
+ NANOMETER = "NANOMETER"
26
+ ANGSTROM = "ANGSTROM"
27
+ INCH = "INCH"
28
+ FOOT = "FOOT"
29
+ YARD = "YARD"
30
+ MILE = "MILE"
31
+ NAUTICAL_MILE = "NAUTICAL_MILE"
32
+
33
+ # Set metadata after class creation
34
+ LengthUnitEnum._metadata = {
35
+ "METER": {'description': 'Meter (SI base unit)', 'meaning': 'UO:0000008', 'annotations': {'symbol': 'm', 'system': 'SI'}},
36
+ "KILOMETER": {'description': 'Kilometer (1000 meters)', 'meaning': 'UO:0010066', 'annotations': {'symbol': 'km', 'conversion_to_meter': '1000'}},
37
+ "CENTIMETER": {'description': 'Centimeter (0.01 meter)', 'meaning': 'UO:0000015', 'annotations': {'symbol': 'cm', 'conversion_to_meter': '0.01'}},
38
+ "MILLIMETER": {'description': 'Millimeter (0.001 meter)', 'meaning': 'UO:0000016', 'annotations': {'symbol': 'mm', 'conversion_to_meter': '0.001'}},
39
+ "MICROMETER": {'description': 'Micrometer/micron (10^-6 meter)', 'meaning': 'UO:0000017', 'annotations': {'symbol': 'μm', 'conversion_to_meter': '1e-6'}},
40
+ "NANOMETER": {'description': 'Nanometer (10^-9 meter)', 'meaning': 'UO:0000018', 'annotations': {'symbol': 'nm', 'conversion_to_meter': '1e-9'}},
41
+ "ANGSTROM": {'description': 'Angstrom (10^-10 meter)', 'meaning': 'UO:0000019', 'annotations': {'symbol': 'Å', 'conversion_to_meter': '1e-10'}},
42
+ "INCH": {'description': 'Inch (imperial)', 'meaning': 'UO:0010011', 'annotations': {'symbol': 'in', 'conversion_to_meter': '0.0254', 'system': 'imperial'}},
43
+ "FOOT": {'description': 'Foot (imperial)', 'meaning': 'UO:0010013', 'annotations': {'symbol': 'ft', 'conversion_to_meter': '0.3048', 'system': 'imperial'}},
44
+ "YARD": {'description': 'Yard (imperial)', 'meaning': 'UO:0010014', 'annotations': {'symbol': 'yd', 'conversion_to_meter': '0.9144', 'system': 'imperial'}},
45
+ "MILE": {'description': 'Mile (imperial)', 'meaning': 'UO:0010017', 'annotations': {'symbol': 'mi', 'conversion_to_meter': '1609.344', 'system': 'imperial'}},
46
+ "NAUTICAL_MILE": {'description': 'Nautical mile', 'meaning': 'UO:0010022', 'annotations': {'symbol': 'nmi', 'conversion_to_meter': '1852'}},
47
+ }
48
+
49
+ class MassUnitEnum(RichEnum):
50
+ """
51
+ Units of mass measurement
52
+ """
53
+ # Enum members
54
+ KILOGRAM = "KILOGRAM"
55
+ GRAM = "GRAM"
56
+ MILLIGRAM = "MILLIGRAM"
57
+ MICROGRAM = "MICROGRAM"
58
+ NANOGRAM = "NANOGRAM"
59
+ METRIC_TON = "METRIC_TON"
60
+ POUND = "POUND"
61
+ OUNCE = "OUNCE"
62
+ STONE = "STONE"
63
+ DALTON = "DALTON"
64
+
65
+ # Set metadata after class creation
66
+ MassUnitEnum._metadata = {
67
+ "KILOGRAM": {'description': 'Kilogram (SI base unit)', 'meaning': 'UO:0000009', 'annotations': {'symbol': 'kg', 'system': 'SI'}},
68
+ "GRAM": {'description': 'Gram (0.001 kilogram)', 'meaning': 'UO:0000021', 'annotations': {'symbol': 'g', 'conversion_to_kg': '0.001'}},
69
+ "MILLIGRAM": {'description': 'Milligram (10^-6 kilogram)', 'meaning': 'UO:0000022', 'annotations': {'symbol': 'mg', 'conversion_to_kg': '1e-6'}},
70
+ "MICROGRAM": {'description': 'Microgram (10^-9 kilogram)', 'meaning': 'UO:0000023', 'annotations': {'symbol': 'μg', 'conversion_to_kg': '1e-9'}},
71
+ "NANOGRAM": {'description': 'Nanogram (10^-12 kilogram)', 'meaning': 'UO:0000024', 'annotations': {'symbol': 'ng', 'conversion_to_kg': '1e-12'}},
72
+ "METRIC_TON": {'description': 'Metric ton/tonne (1000 kilograms)', 'meaning': 'UO:0010038', 'annotations': {'symbol': 't', 'conversion_to_kg': '1000'}, 'aliases': ['ton']},
73
+ "POUND": {'description': 'Pound (imperial)', 'meaning': 'UO:0010034', 'annotations': {'symbol': 'lb', 'conversion_to_kg': '0.453592', 'system': 'imperial'}},
74
+ "OUNCE": {'description': 'Ounce (imperial)', 'meaning': 'UO:0010033', 'annotations': {'symbol': 'oz', 'conversion_to_kg': '0.0283495', 'system': 'imperial'}},
75
+ "STONE": {'description': 'Stone (imperial)', 'meaning': 'UO:0010035', 'annotations': {'symbol': 'st', 'conversion_to_kg': '6.35029', 'system': 'imperial'}},
76
+ "DALTON": {'description': 'Dalton/atomic mass unit', 'meaning': 'UO:0000221', 'annotations': {'symbol': 'Da', 'conversion_to_kg': '1.66054e-27', 'use': 'molecular mass'}},
77
+ }
78
+
79
+ class VolumeUnitEnum(RichEnum):
80
+ """
81
+ Units of volume measurement
82
+ """
83
+ # Enum members
84
+ LITER = "LITER"
85
+ MILLILITER = "MILLILITER"
86
+ MICROLITER = "MICROLITER"
87
+ CUBIC_METER = "CUBIC_METER"
88
+ CUBIC_CENTIMETER = "CUBIC_CENTIMETER"
89
+ GALLON_US = "GALLON_US"
90
+ GALLON_UK = "GALLON_UK"
91
+ FLUID_OUNCE_US = "FLUID_OUNCE_US"
92
+ PINT_US = "PINT_US"
93
+ QUART_US = "QUART_US"
94
+ CUP_US = "CUP_US"
95
+ TABLESPOON = "TABLESPOON"
96
+ TEASPOON = "TEASPOON"
97
+
98
+ # Set metadata after class creation
99
+ VolumeUnitEnum._metadata = {
100
+ "LITER": {'description': 'Liter (SI derived)', 'meaning': 'UO:0000099', 'annotations': {'symbol': 'L', 'conversion_to_m3': '0.001'}},
101
+ "MILLILITER": {'description': 'Milliliter (0.001 liter)', 'meaning': 'UO:0000098', 'annotations': {'symbol': 'mL', 'conversion_to_m3': '1e-6'}},
102
+ "MICROLITER": {'description': 'Microliter (10^-6 liter)', 'meaning': 'UO:0000101', 'annotations': {'symbol': 'μL', 'conversion_to_m3': '1e-9'}},
103
+ "CUBIC_METER": {'description': 'Cubic meter (SI derived)', 'meaning': 'UO:0000096', 'annotations': {'symbol': 'm³', 'system': 'SI'}},
104
+ "CUBIC_CENTIMETER": {'description': 'Cubic centimeter', 'meaning': 'UO:0000097', 'annotations': {'symbol': 'cm³', 'conversion_to_m3': '1e-6'}},
105
+ "GALLON_US": {'description': 'US gallon', 'annotations': {'symbol': 'gal', 'conversion_to_m3': '0.00378541', 'system': 'US'}},
106
+ "GALLON_UK": {'description': 'UK/Imperial gallon', 'meaning': 'UO:0010030', 'annotations': {'symbol': 'gal', 'conversion_to_m3': '0.00454609', 'system': 'imperial'}, 'aliases': ['imperial gallon']},
107
+ "FLUID_OUNCE_US": {'description': 'US fluid ounce', 'meaning': 'UO:0010026', 'annotations': {'symbol': 'fl oz', 'conversion_to_m3': '2.95735e-5', 'system': 'US'}, 'aliases': ['imperial fluid ounce']},
108
+ "PINT_US": {'description': 'US pint', 'meaning': 'UO:0010028', 'annotations': {'symbol': 'pt', 'conversion_to_m3': '0.000473176', 'system': 'US'}, 'aliases': ['imperial pint']},
109
+ "QUART_US": {'description': 'US quart', 'meaning': 'UO:0010029', 'annotations': {'symbol': 'qt', 'conversion_to_m3': '0.000946353', 'system': 'US'}, 'aliases': ['imperial quart']},
110
+ "CUP_US": {'description': 'US cup', 'meaning': 'UO:0010046', 'annotations': {'symbol': 'cup', 'conversion_to_m3': '0.000236588', 'system': 'US'}},
111
+ "TABLESPOON": {'description': 'Tablespoon', 'meaning': 'UO:0010044', 'annotations': {'symbol': 'tbsp', 'conversion_to_m3': '1.47868e-5'}},
112
+ "TEASPOON": {'description': 'Teaspoon', 'meaning': 'UO:0010041', 'annotations': {'symbol': 'tsp', 'conversion_to_m3': '4.92892e-6'}},
113
+ }
114
+
115
+ class TemperatureUnitEnum(RichEnum):
116
+ """
117
+ Units of temperature measurement
118
+ """
119
+ # Enum members
120
+ KELVIN = "KELVIN"
121
+ CELSIUS = "CELSIUS"
122
+ FAHRENHEIT = "FAHRENHEIT"
123
+ RANKINE = "RANKINE"
124
+
125
+ # Set metadata after class creation
126
+ TemperatureUnitEnum._metadata = {
127
+ "KELVIN": {'description': 'Kelvin (SI base unit)', 'meaning': 'UO:0000012', 'annotations': {'symbol': 'K', 'system': 'SI', 'absolute': 'true'}},
128
+ "CELSIUS": {'description': 'Celsius/Centigrade', 'meaning': 'UO:0000027', 'annotations': {'symbol': '°C', 'conversion': 'K - 273.15'}},
129
+ "FAHRENHEIT": {'description': 'Fahrenheit', 'meaning': 'UO:0000195', 'annotations': {'symbol': '°F', 'conversion': '(K - 273.15) * 9/5 + 32', 'system': 'imperial'}},
130
+ "RANKINE": {'description': 'Rankine', 'annotations': {'symbol': '°R', 'conversion': 'K * 9/5', 'absolute': 'true'}},
131
+ }
132
+
133
+ class TimeUnitEnum(RichEnum):
134
+ """
135
+ Units of time measurement
136
+ """
137
+ # Enum members
138
+ SECOND = "SECOND"
139
+ MILLISECOND = "MILLISECOND"
140
+ MICROSECOND = "MICROSECOND"
141
+ NANOSECOND = "NANOSECOND"
142
+ MINUTE = "MINUTE"
143
+ HOUR = "HOUR"
144
+ DAY = "DAY"
145
+ WEEK = "WEEK"
146
+ MONTH = "MONTH"
147
+ YEAR = "YEAR"
148
+
149
+ # Set metadata after class creation
150
+ TimeUnitEnum._metadata = {
151
+ "SECOND": {'description': 'Second (SI base unit)', 'meaning': 'UO:0000010', 'annotations': {'symbol': 's', 'system': 'SI'}},
152
+ "MILLISECOND": {'description': 'Millisecond (0.001 second)', 'meaning': 'UO:0000028', 'annotations': {'symbol': 'ms', 'conversion_to_second': '0.001'}},
153
+ "MICROSECOND": {'description': 'Microsecond (10^-6 second)', 'meaning': 'UO:0000029', 'annotations': {'symbol': 'μs', 'conversion_to_second': '1e-6'}},
154
+ "NANOSECOND": {'description': 'Nanosecond (10^-9 second)', 'meaning': 'UO:0000150', 'annotations': {'symbol': 'ns', 'conversion_to_second': '1e-9'}},
155
+ "MINUTE": {'description': 'Minute (60 seconds)', 'meaning': 'UO:0000031', 'annotations': {'symbol': 'min', 'conversion_to_second': '60'}},
156
+ "HOUR": {'description': 'Hour (3600 seconds)', 'meaning': 'UO:0000032', 'annotations': {'symbol': 'h', 'conversion_to_second': '3600'}},
157
+ "DAY": {'description': 'Day (86400 seconds)', 'meaning': 'UO:0000033', 'annotations': {'symbol': 'd', 'conversion_to_second': '86400'}},
158
+ "WEEK": {'description': 'Week (7 days)', 'meaning': 'UO:0000034', 'annotations': {'symbol': 'wk', 'conversion_to_second': '604800'}},
159
+ "MONTH": {'description': 'Month (approximately 30 days)', 'meaning': 'UO:0000035', 'annotations': {'symbol': 'mo', 'conversion_to_second': '2592000', 'note': 'approximate, varies by month'}},
160
+ "YEAR": {'description': 'Year (365.25 days)', 'meaning': 'UO:0000036', 'annotations': {'symbol': 'yr', 'conversion_to_second': '31557600', 'note': 'accounts for leap years'}},
161
+ }
162
+
163
+ class PressureUnitEnum(RichEnum):
164
+ """
165
+ Units of pressure measurement
166
+ """
167
+ # Enum members
168
+ PASCAL = "PASCAL"
169
+ KILOPASCAL = "KILOPASCAL"
170
+ MEGAPASCAL = "MEGAPASCAL"
171
+ BAR = "BAR"
172
+ MILLIBAR = "MILLIBAR"
173
+ ATMOSPHERE = "ATMOSPHERE"
174
+ TORR = "TORR"
175
+ PSI = "PSI"
176
+ MM_HG = "MM_HG"
177
+
178
+ # Set metadata after class creation
179
+ PressureUnitEnum._metadata = {
180
+ "PASCAL": {'description': 'Pascal (SI derived unit)', 'meaning': 'UO:0000110', 'annotations': {'symbol': 'Pa', 'system': 'SI', 'definition': 'N/m²'}},
181
+ "KILOPASCAL": {'description': 'Kilopascal (1000 pascals)', 'annotations': {'symbol': 'kPa', 'conversion_to_pascal': '1000'}},
182
+ "MEGAPASCAL": {'description': 'Megapascal (10^6 pascals)', 'annotations': {'symbol': 'MPa', 'conversion_to_pascal': '1e6'}},
183
+ "BAR": {'description': 'Bar', 'annotations': {'symbol': 'bar', 'conversion_to_pascal': '100000'}},
184
+ "MILLIBAR": {'description': 'Millibar', 'annotations': {'symbol': 'mbar', 'conversion_to_pascal': '100'}},
185
+ "ATMOSPHERE": {'description': 'Standard atmosphere', 'annotations': {'symbol': 'atm', 'conversion_to_pascal': '101325'}},
186
+ "TORR": {'description': 'Torr (millimeter of mercury)', 'annotations': {'symbol': 'Torr', 'conversion_to_pascal': '133.322'}},
187
+ "PSI": {'description': 'Pounds per square inch', 'meaning': 'UO:0010052', 'annotations': {'symbol': 'psi', 'conversion_to_pascal': '6894.76', 'system': 'imperial'}, 'aliases': ['pound-force per square inch']},
188
+ "MM_HG": {'description': 'Millimeters of mercury', 'meaning': 'UO:0000272', 'annotations': {'symbol': 'mmHg', 'conversion_to_pascal': '133.322', 'use': 'medical blood pressure'}},
189
+ }
190
+
191
+ class ConcentrationUnitEnum(RichEnum):
192
+ """
193
+ Units of concentration measurement
194
+ """
195
+ # Enum members
196
+ MOLAR = "MOLAR"
197
+ MILLIMOLAR = "MILLIMOLAR"
198
+ MICROMOLAR = "MICROMOLAR"
199
+ NANOMOLAR = "NANOMOLAR"
200
+ PICOMOLAR = "PICOMOLAR"
201
+ MG_PER_ML = "MG_PER_ML"
202
+ UG_PER_ML = "UG_PER_ML"
203
+ NG_PER_ML = "NG_PER_ML"
204
+ PERCENT = "PERCENT"
205
+ PPM = "PPM"
206
+ PPB = "PPB"
207
+
208
+ # Set metadata after class creation
209
+ ConcentrationUnitEnum._metadata = {
210
+ "MOLAR": {'description': 'Molar (moles per liter)', 'meaning': 'UO:0000062', 'annotations': {'symbol': 'M', 'definition': 'mol/L'}},
211
+ "MILLIMOLAR": {'description': 'Millimolar (10^-3 molar)', 'meaning': 'UO:0000063', 'annotations': {'symbol': 'mM', 'conversion_to_molar': '0.001'}},
212
+ "MICROMOLAR": {'description': 'Micromolar (10^-6 molar)', 'meaning': 'UO:0000064', 'annotations': {'symbol': 'μM', 'conversion_to_molar': '1e-6'}},
213
+ "NANOMOLAR": {'description': 'Nanomolar (10^-9 molar)', 'meaning': 'UO:0000065', 'annotations': {'symbol': 'nM', 'conversion_to_molar': '1e-9'}},
214
+ "PICOMOLAR": {'description': 'Picomolar (10^-12 molar)', 'meaning': 'UO:0000066', 'annotations': {'symbol': 'pM', 'conversion_to_molar': '1e-12'}},
215
+ "MG_PER_ML": {'description': 'Milligrams per milliliter', 'meaning': 'UO:0000176', 'annotations': {'symbol': 'mg/mL'}},
216
+ "UG_PER_ML": {'description': 'Micrograms per milliliter', 'meaning': 'UO:0000274', 'annotations': {'symbol': 'μg/mL'}},
217
+ "NG_PER_ML": {'description': 'Nanograms per milliliter', 'meaning': 'UO:0000275', 'annotations': {'symbol': 'ng/mL'}},
218
+ "PERCENT": {'description': 'Percent (parts per hundred)', 'meaning': 'UO:0000187', 'annotations': {'symbol': '%', 'conversion_to_fraction': '0.01'}},
219
+ "PPM": {'description': 'Parts per million', 'meaning': 'UO:0000169', 'annotations': {'symbol': 'ppm', 'conversion_to_fraction': '1e-6'}},
220
+ "PPB": {'description': 'Parts per billion', 'meaning': 'UO:0000170', 'annotations': {'symbol': 'ppb', 'conversion_to_fraction': '1e-9'}},
221
+ }
222
+
223
+ class FrequencyUnitEnum(RichEnum):
224
+ """
225
+ Units of frequency measurement
226
+ """
227
+ # Enum members
228
+ HERTZ = "HERTZ"
229
+ KILOHERTZ = "KILOHERTZ"
230
+ MEGAHERTZ = "MEGAHERTZ"
231
+ GIGAHERTZ = "GIGAHERTZ"
232
+ RPM = "RPM"
233
+ BPM = "BPM"
234
+
235
+ # Set metadata after class creation
236
+ FrequencyUnitEnum._metadata = {
237
+ "HERTZ": {'description': 'Hertz (cycles per second)', 'meaning': 'UO:0000106', 'annotations': {'symbol': 'Hz', 'system': 'SI'}},
238
+ "KILOHERTZ": {'description': 'Kilohertz (1000 Hz)', 'annotations': {'symbol': 'kHz', 'conversion_to_hz': '1000'}},
239
+ "MEGAHERTZ": {'description': 'Megahertz (10^6 Hz)', 'meaning': 'UO:0000325', 'annotations': {'symbol': 'MHz', 'conversion_to_hz': '1e6'}},
240
+ "GIGAHERTZ": {'description': 'Gigahertz (10^9 Hz)', 'annotations': {'symbol': 'GHz', 'conversion_to_hz': '1e9'}},
241
+ "RPM": {'description': 'Revolutions per minute', 'annotations': {'symbol': 'rpm', 'conversion_to_hz': '0.0166667'}},
242
+ "BPM": {'description': 'Beats per minute', 'annotations': {'symbol': 'bpm', 'conversion_to_hz': '0.0166667', 'use': 'heart rate'}},
243
+ }
244
+
245
+ class AngleUnitEnum(RichEnum):
246
+ """
247
+ Units of angle measurement
248
+ """
249
+ # Enum members
250
+ RADIAN = "RADIAN"
251
+ DEGREE = "DEGREE"
252
+ MINUTE_OF_ARC = "MINUTE_OF_ARC"
253
+ SECOND_OF_ARC = "SECOND_OF_ARC"
254
+ GRADIAN = "GRADIAN"
255
+ TURN = "TURN"
256
+
257
+ # Set metadata after class creation
258
+ AngleUnitEnum._metadata = {
259
+ "RADIAN": {'description': 'Radian (SI derived unit)', 'meaning': 'UO:0000123', 'annotations': {'symbol': 'rad', 'system': 'SI'}},
260
+ "DEGREE": {'description': 'Degree', 'meaning': 'UO:0000185', 'annotations': {'symbol': '°', 'conversion_to_radian': '0.0174533'}},
261
+ "MINUTE_OF_ARC": {'description': 'Minute of arc/arcminute', 'annotations': {'symbol': "'", 'conversion_to_degree': '0.0166667'}},
262
+ "SECOND_OF_ARC": {'description': 'Second of arc/arcsecond', 'annotations': {'symbol': '"', 'conversion_to_degree': '0.000277778'}},
263
+ "GRADIAN": {'description': 'Gradian/gon', 'annotations': {'symbol': 'gon', 'conversion_to_degree': '0.9'}},
264
+ "TURN": {'description': 'Turn/revolution', 'annotations': {'symbol': 'turn', 'conversion_to_radian': '6.28319'}},
265
+ }
266
+
267
+ class DataSizeUnitEnum(RichEnum):
268
+ """
269
+ Units of digital data size
270
+ """
271
+ # Enum members
272
+ BIT = "BIT"
273
+ BYTE = "BYTE"
274
+ KILOBYTE = "KILOBYTE"
275
+ MEGABYTE = "MEGABYTE"
276
+ GIGABYTE = "GIGABYTE"
277
+ TERABYTE = "TERABYTE"
278
+ PETABYTE = "PETABYTE"
279
+ KIBIBYTE = "KIBIBYTE"
280
+ MEBIBYTE = "MEBIBYTE"
281
+ GIBIBYTE = "GIBIBYTE"
282
+ TEBIBYTE = "TEBIBYTE"
283
+
284
+ # Set metadata after class creation
285
+ DataSizeUnitEnum._metadata = {
286
+ "BIT": {'description': 'Bit (binary digit)', 'annotations': {'symbol': 'bit', 'base': 'binary'}},
287
+ "BYTE": {'description': 'Byte (8 bits)', 'meaning': 'UO:0000233', 'annotations': {'symbol': 'B', 'conversion_to_bit': '8'}},
288
+ "KILOBYTE": {'description': 'Kilobyte (1000 bytes)', 'meaning': 'UO:0000234', 'annotations': {'symbol': 'KB', 'conversion_to_byte': '1000', 'standard': 'decimal'}},
289
+ "MEGABYTE": {'description': 'Megabyte (10^6 bytes)', 'meaning': 'UO:0000235', 'annotations': {'symbol': 'MB', 'conversion_to_byte': '1e6', 'standard': 'decimal'}},
290
+ "GIGABYTE": {'description': 'Gigabyte (10^9 bytes)', 'annotations': {'symbol': 'GB', 'conversion_to_byte': '1e9', 'standard': 'decimal'}},
291
+ "TERABYTE": {'description': 'Terabyte (10^12 bytes)', 'annotations': {'symbol': 'TB', 'conversion_to_byte': '1e12', 'standard': 'decimal'}},
292
+ "PETABYTE": {'description': 'Petabyte (10^15 bytes)', 'annotations': {'symbol': 'PB', 'conversion_to_byte': '1e15', 'standard': 'decimal'}},
293
+ "KIBIBYTE": {'description': 'Kibibyte (1024 bytes)', 'annotations': {'symbol': 'KiB', 'conversion_to_byte': '1024', 'standard': 'binary'}},
294
+ "MEBIBYTE": {'description': 'Mebibyte (2^20 bytes)', 'annotations': {'symbol': 'MiB', 'conversion_to_byte': '1048576', 'standard': 'binary'}},
295
+ "GIBIBYTE": {'description': 'Gibibyte (2^30 bytes)', 'annotations': {'symbol': 'GiB', 'conversion_to_byte': '1073741824', 'standard': 'binary'}},
296
+ "TEBIBYTE": {'description': 'Tebibyte (2^40 bytes)', 'annotations': {'symbol': 'TiB', 'conversion_to_byte': '1099511627776', 'standard': 'binary'}},
297
+ }
298
+
299
+ __all__ = [
300
+ "LengthUnitEnum",
301
+ "MassUnitEnum",
302
+ "VolumeUnitEnum",
303
+ "TemperatureUnitEnum",
304
+ "TimeUnitEnum",
305
+ "PressureUnitEnum",
306
+ "ConcentrationUnitEnum",
307
+ "FrequencyUnitEnum",
308
+ "AngleUnitEnum",
309
+ "DataSizeUnitEnum",
310
+ ]
@@ -0,0 +1 @@
1
+ """Auto-generated package."""