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.
- valuesets/__init__.py +7 -0
- valuesets/_version.py +8 -0
- valuesets/datamodel/valuesets.py +13796 -0
- valuesets/datamodel/valuesets_dataclass.py +24503 -0
- valuesets/datamodel/valuesets_pydantic.py +13796 -0
- valuesets/enums/__init__.py +590 -0
- valuesets/enums/academic/__init__.py +1 -0
- valuesets/enums/academic/research.py +559 -0
- valuesets/enums/analytical_chemistry/__init__.py +1 -0
- valuesets/enums/analytical_chemistry/mass_spectrometry.py +198 -0
- valuesets/enums/bio/__init__.py +1 -0
- valuesets/enums/bio/biological_colors.py +238 -0
- valuesets/enums/bio/cell_cycle.py +180 -0
- valuesets/enums/bio/currency_chemicals.py +52 -0
- valuesets/enums/bio/developmental_stages.py +103 -0
- valuesets/enums/bio/genome_features.py +182 -0
- valuesets/enums/bio/genomics.py +91 -0
- valuesets/enums/bio/go_aspect.py +32 -0
- valuesets/enums/bio/go_causality.py +58 -0
- valuesets/enums/bio/go_evidence.py +129 -0
- valuesets/enums/bio/human_developmental_stages.py +62 -0
- valuesets/enums/bio/insdc_geographic_locations.py +591 -0
- valuesets/enums/bio/insdc_missing_values.py +49 -0
- valuesets/enums/bio/lipid_categories.py +67 -0
- valuesets/enums/bio/mouse_developmental_stages.py +62 -0
- valuesets/enums/bio/plant_biology.py +86 -0
- valuesets/enums/bio/plant_developmental_stages.py +54 -0
- valuesets/enums/bio/plant_sex.py +81 -0
- valuesets/enums/bio/protein_evidence.py +61 -0
- valuesets/enums/bio/proteomics_standards.py +123 -0
- valuesets/enums/bio/psi_mi.py +306 -0
- valuesets/enums/bio/relationship_to_oxygen.py +37 -0
- valuesets/enums/bio/sequence_alphabets.py +449 -0
- valuesets/enums/bio/sequence_chemistry.py +357 -0
- valuesets/enums/bio/sequencing_platforms.py +302 -0
- valuesets/enums/bio/structural_biology.py +320 -0
- valuesets/enums/bio/taxonomy.py +238 -0
- valuesets/enums/bio/trophic_levels.py +85 -0
- valuesets/enums/bio/uniprot_species.py +344 -0
- valuesets/enums/bio/viral_genome_types.py +47 -0
- valuesets/enums/bioprocessing/__init__.py +1 -0
- valuesets/enums/bioprocessing/scale_up.py +249 -0
- valuesets/enums/business/__init__.py +1 -0
- valuesets/enums/business/human_resources.py +275 -0
- valuesets/enums/business/industry_classifications.py +181 -0
- valuesets/enums/business/management_operations.py +228 -0
- valuesets/enums/business/organizational_structures.py +236 -0
- valuesets/enums/business/quality_management.py +181 -0
- valuesets/enums/business/supply_chain.py +232 -0
- valuesets/enums/chemistry/__init__.py +1 -0
- valuesets/enums/chemistry/chemical_entities.py +315 -0
- valuesets/enums/chemistry/reaction_directionality.py +65 -0
- valuesets/enums/chemistry/reactions.py +256 -0
- valuesets/enums/clinical/__init__.py +1 -0
- valuesets/enums/clinical/nih_demographics.py +177 -0
- valuesets/enums/clinical/phenopackets.py +254 -0
- valuesets/enums/common_value_sets.py +8791 -0
- valuesets/enums/computing/__init__.py +1 -0
- valuesets/enums/computing/file_formats.py +294 -0
- valuesets/enums/computing/maturity_levels.py +196 -0
- valuesets/enums/computing/mime_types.py +227 -0
- valuesets/enums/confidence_levels.py +168 -0
- valuesets/enums/contributor.py +30 -0
- valuesets/enums/core.py +42 -0
- valuesets/enums/data/__init__.py +1 -0
- valuesets/enums/data/data_absent_reason.py +53 -0
- valuesets/enums/data_science/__init__.py +1 -0
- valuesets/enums/data_science/binary_classification.py +87 -0
- valuesets/enums/data_science/emotion_classification.py +66 -0
- valuesets/enums/data_science/priority_severity.py +73 -0
- valuesets/enums/data_science/quality_control.py +46 -0
- valuesets/enums/data_science/sentiment_analysis.py +50 -0
- valuesets/enums/data_science/text_classification.py +97 -0
- valuesets/enums/demographics.py +206 -0
- valuesets/enums/ecological_interactions.py +151 -0
- valuesets/enums/energy/__init__.py +1 -0
- valuesets/enums/energy/energy.py +343 -0
- valuesets/enums/energy/fossil_fuels.py +29 -0
- valuesets/enums/energy/nuclear/__init__.py +1 -0
- valuesets/enums/energy/nuclear/nuclear_facilities.py +195 -0
- valuesets/enums/energy/nuclear/nuclear_fuel_cycle.py +96 -0
- valuesets/enums/energy/nuclear/nuclear_fuels.py +175 -0
- valuesets/enums/energy/nuclear/nuclear_operations.py +191 -0
- valuesets/enums/energy/nuclear/nuclear_regulatory.py +188 -0
- valuesets/enums/energy/nuclear/nuclear_safety.py +164 -0
- valuesets/enums/energy/nuclear/nuclear_waste.py +158 -0
- valuesets/enums/energy/nuclear/reactor_types.py +163 -0
- valuesets/enums/environmental_health/__init__.py +1 -0
- valuesets/enums/environmental_health/exposures.py +265 -0
- valuesets/enums/geography/__init__.py +1 -0
- valuesets/enums/geography/geographic_codes.py +741 -0
- valuesets/enums/health/__init__.py +12 -0
- valuesets/enums/health/vaccination.py +98 -0
- valuesets/enums/health.py +36 -0
- valuesets/enums/health_base.py +36 -0
- valuesets/enums/healthcare.py +45 -0
- valuesets/enums/industry/__init__.py +1 -0
- valuesets/enums/industry/extractive_industry.py +94 -0
- valuesets/enums/industry/mining.py +388 -0
- valuesets/enums/industry/safety_colors.py +201 -0
- valuesets/enums/investigation.py +27 -0
- valuesets/enums/materials_science/__init__.py +1 -0
- valuesets/enums/materials_science/characterization_methods.py +112 -0
- valuesets/enums/materials_science/crystal_structures.py +76 -0
- valuesets/enums/materials_science/material_properties.py +119 -0
- valuesets/enums/materials_science/material_types.py +104 -0
- valuesets/enums/materials_science/pigments_dyes.py +198 -0
- valuesets/enums/materials_science/synthesis_methods.py +109 -0
- valuesets/enums/medical/__init__.py +1 -0
- valuesets/enums/medical/clinical.py +277 -0
- valuesets/enums/medical/neuroimaging.py +119 -0
- valuesets/enums/mining_processing.py +302 -0
- valuesets/enums/physics/__init__.py +1 -0
- valuesets/enums/physics/states_of_matter.py +46 -0
- valuesets/enums/social/__init__.py +1 -0
- valuesets/enums/social/person_status.py +29 -0
- valuesets/enums/spatial/__init__.py +1 -0
- valuesets/enums/spatial/spatial_qualifiers.py +246 -0
- valuesets/enums/statistics/__init__.py +5 -0
- valuesets/enums/statistics/prediction_outcomes.py +31 -0
- valuesets/enums/statistics.py +31 -0
- valuesets/enums/time/__init__.py +1 -0
- valuesets/enums/time/temporal.py +254 -0
- valuesets/enums/units/__init__.py +1 -0
- valuesets/enums/units/measurements.py +310 -0
- valuesets/enums/visual/__init__.py +1 -0
- valuesets/enums/visual/colors.py +376 -0
- valuesets/generators/__init__.py +19 -0
- valuesets/generators/auto_slot_injector.py +280 -0
- valuesets/generators/enhanced_pydantic_generator.py +100 -0
- valuesets/generators/enum_slot_generator.py +201 -0
- valuesets/generators/modular_rich_generator.py +353 -0
- valuesets/generators/prefix_standardizer.py +198 -0
- valuesets/generators/rich_enum.py +127 -0
- valuesets/generators/rich_pydantic_generator.py +310 -0
- valuesets/generators/smart_slot_syncer.py +428 -0
- valuesets/generators/sssom_generator.py +394 -0
- valuesets/merged/merged_hierarchy.yaml +21649 -0
- valuesets/schema/README.md +3 -0
- valuesets/schema/academic/research.yaml +911 -0
- valuesets/schema/analytical_chemistry/mass_spectrometry.yaml +206 -0
- valuesets/schema/bio/bio_entities.yaml +364 -0
- valuesets/schema/bio/biological_colors.yaml +434 -0
- valuesets/schema/bio/cell_cycle.yaml +309 -0
- valuesets/schema/bio/currency_chemicals.yaml +70 -0
- valuesets/schema/bio/developmental_stages.yaml +226 -0
- valuesets/schema/bio/genome_features.yaml +342 -0
- valuesets/schema/bio/genomics.yaml +101 -0
- valuesets/schema/bio/go_aspect.yaml +39 -0
- valuesets/schema/bio/go_causality.yaml +119 -0
- valuesets/schema/bio/go_evidence.yaml +215 -0
- valuesets/schema/bio/insdc_geographic_locations.yaml +911 -0
- valuesets/schema/bio/insdc_missing_values.yaml +85 -0
- valuesets/schema/bio/lipid_categories.yaml +72 -0
- valuesets/schema/bio/plant_biology.yaml +125 -0
- valuesets/schema/bio/plant_developmental_stages.yaml +77 -0
- valuesets/schema/bio/plant_sex.yaml +108 -0
- valuesets/schema/bio/protein_evidence.yaml +63 -0
- valuesets/schema/bio/proteomics_standards.yaml +116 -0
- valuesets/schema/bio/psi_mi.yaml +400 -0
- valuesets/schema/bio/relationship_to_oxygen.yaml +46 -0
- valuesets/schema/bio/sequence_alphabets.yaml +1168 -0
- valuesets/schema/bio/sequence_chemistry.yaml +477 -0
- valuesets/schema/bio/sequencing_platforms.yaml +515 -0
- valuesets/schema/bio/structural_biology.yaml +428 -0
- valuesets/schema/bio/taxonomy.yaml +453 -0
- valuesets/schema/bio/trophic_levels.yaml +118 -0
- valuesets/schema/bio/uniprot_species.yaml +1209 -0
- valuesets/schema/bio/viral_genome_types.yaml +99 -0
- valuesets/schema/bioprocessing/scale_up.yaml +458 -0
- valuesets/schema/business/human_resources.yaml +752 -0
- valuesets/schema/business/industry_classifications.yaml +448 -0
- valuesets/schema/business/management_operations.yaml +602 -0
- valuesets/schema/business/organizational_structures.yaml +645 -0
- valuesets/schema/business/quality_management.yaml +502 -0
- valuesets/schema/business/supply_chain.yaml +688 -0
- valuesets/schema/chemistry/chemical_entities.yaml +639 -0
- valuesets/schema/chemistry/reaction_directionality.yaml +60 -0
- valuesets/schema/chemistry/reactions.yaml +442 -0
- valuesets/schema/clinical/nih_demographics.yaml +285 -0
- valuesets/schema/clinical/phenopackets.yaml +429 -0
- valuesets/schema/computing/file_formats.yaml +631 -0
- valuesets/schema/computing/maturity_levels.yaml +229 -0
- valuesets/schema/computing/mime_types.yaml +266 -0
- valuesets/schema/confidence_levels.yaml +206 -0
- valuesets/schema/contributor.yaml +30 -0
- valuesets/schema/core.yaml +55 -0
- valuesets/schema/data/data_absent_reason.yaml +82 -0
- valuesets/schema/data_science/binary_classification.yaml +125 -0
- valuesets/schema/data_science/emotion_classification.yaml +109 -0
- valuesets/schema/data_science/priority_severity.yaml +122 -0
- valuesets/schema/data_science/quality_control.yaml +68 -0
- valuesets/schema/data_science/sentiment_analysis.yaml +81 -0
- valuesets/schema/data_science/text_classification.yaml +135 -0
- valuesets/schema/demographics.yaml +238 -0
- valuesets/schema/ecological_interactions.yaml +298 -0
- valuesets/schema/energy/energy.yaml +595 -0
- valuesets/schema/energy/fossil_fuels.yaml +28 -0
- valuesets/schema/energy/nuclear/nuclear_facilities.yaml +463 -0
- valuesets/schema/energy/nuclear/nuclear_fuel_cycle.yaml +82 -0
- valuesets/schema/energy/nuclear/nuclear_fuels.yaml +421 -0
- valuesets/schema/energy/nuclear/nuclear_operations.yaml +480 -0
- valuesets/schema/energy/nuclear/nuclear_regulatory.yaml +200 -0
- valuesets/schema/energy/nuclear/nuclear_safety.yaml +352 -0
- valuesets/schema/energy/nuclear/nuclear_waste.yaml +332 -0
- valuesets/schema/energy/nuclear/reactor_types.yaml +394 -0
- valuesets/schema/environmental_health/exposures.yaml +355 -0
- valuesets/schema/generated_slots.yaml +1828 -0
- valuesets/schema/geography/geographic_codes.yaml +1018 -0
- valuesets/schema/health/vaccination.yaml +102 -0
- valuesets/schema/health.yaml +38 -0
- valuesets/schema/healthcare.yaml +53 -0
- valuesets/schema/industry/extractive_industry.yaml +89 -0
- valuesets/schema/industry/mining.yaml +888 -0
- valuesets/schema/industry/safety_colors.yaml +375 -0
- valuesets/schema/investigation.yaml +64 -0
- valuesets/schema/materials_science/characterization_methods.yaml +193 -0
- valuesets/schema/materials_science/crystal_structures.yaml +138 -0
- valuesets/schema/materials_science/material_properties.yaml +135 -0
- valuesets/schema/materials_science/material_types.yaml +151 -0
- valuesets/schema/materials_science/pigments_dyes.yaml +465 -0
- valuesets/schema/materials_science/synthesis_methods.yaml +186 -0
- valuesets/schema/medical/clinical.yaml +610 -0
- valuesets/schema/medical/neuroimaging.yaml +325 -0
- valuesets/schema/mining_processing.yaml +295 -0
- valuesets/schema/physics/states_of_matter.yaml +46 -0
- valuesets/schema/slot_mixins.yaml +143 -0
- valuesets/schema/social/person_status.yaml +28 -0
- valuesets/schema/spatial/spatial_qualifiers.yaml +466 -0
- valuesets/schema/statistics/prediction_outcomes.yaml +26 -0
- valuesets/schema/statistics.yaml +34 -0
- valuesets/schema/time/temporal.yaml +435 -0
- valuesets/schema/types.yaml +15 -0
- valuesets/schema/units/measurements.yaml +675 -0
- valuesets/schema/valuesets.yaml +100 -0
- valuesets/schema/visual/colors.yaml +778 -0
- valuesets/utils/__init__.py +6 -0
- valuesets/utils/comparison.py +102 -0
- valuesets/utils/expand_dynamic_enums.py +414 -0
- valuesets/utils/mapping_utils.py +236 -0
- valuesets/validators/__init__.py +11 -0
- valuesets/validators/enum_evaluator.py +669 -0
- valuesets/validators/oak_config.yaml +70 -0
- valuesets/validators/validate_with_ols.py +241 -0
- valuesets-0.3.1.dist-info/METADATA +395 -0
- valuesets-0.3.1.dist-info/RECORD +248 -0
- valuesets-0.3.1.dist-info/WHEEL +4 -0
- valuesets-0.3.1.dist-info/licenses/LICENSE +201 -0
|
@@ -0,0 +1,388 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Mining and Extractive Industry Value Sets
|
|
3
|
+
|
|
4
|
+
Value sets for mining operations, minerals, extraction methods, and related concepts
|
|
5
|
+
|
|
6
|
+
Generated from: industry/mining.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 MiningType(RichEnum):
|
|
15
|
+
"""
|
|
16
|
+
Types of mining operations
|
|
17
|
+
"""
|
|
18
|
+
# Enum members
|
|
19
|
+
OPEN_PIT = "OPEN_PIT"
|
|
20
|
+
STRIP_MINING = "STRIP_MINING"
|
|
21
|
+
MOUNTAINTOP_REMOVAL = "MOUNTAINTOP_REMOVAL"
|
|
22
|
+
QUARRYING = "QUARRYING"
|
|
23
|
+
PLACER = "PLACER"
|
|
24
|
+
DREDGING = "DREDGING"
|
|
25
|
+
SHAFT_MINING = "SHAFT_MINING"
|
|
26
|
+
DRIFT_MINING = "DRIFT_MINING"
|
|
27
|
+
SLOPE_MINING = "SLOPE_MINING"
|
|
28
|
+
ROOM_AND_PILLAR = "ROOM_AND_PILLAR"
|
|
29
|
+
LONGWALL = "LONGWALL"
|
|
30
|
+
BLOCK_CAVING = "BLOCK_CAVING"
|
|
31
|
+
SOLUTION_MINING = "SOLUTION_MINING"
|
|
32
|
+
HYDRAULIC_MINING = "HYDRAULIC_MINING"
|
|
33
|
+
ARTISANAL = "ARTISANAL"
|
|
34
|
+
DEEP_SEA = "DEEP_SEA"
|
|
35
|
+
|
|
36
|
+
# Set metadata after class creation
|
|
37
|
+
MiningType._metadata = {
|
|
38
|
+
"OPEN_PIT": {'description': 'Open-pit mining', 'meaning': 'ENVO:00000284', 'annotations': {'category': 'surface', 'depth': 'shallow to deep'}},
|
|
39
|
+
"STRIP_MINING": {'description': 'Strip mining', 'meaning': 'ENVO:01001441', 'annotations': {'category': 'surface', 'aliases': 'surface mining, opencast mining'}},
|
|
40
|
+
"MOUNTAINTOP_REMOVAL": {'description': 'Mountaintop removal mining', 'annotations': {'category': 'surface', 'region': 'primarily Appalachian'}},
|
|
41
|
+
"QUARRYING": {'description': 'Quarrying', 'meaning': 'ENVO:00000284', 'annotations': {'category': 'surface', 'materials': 'stone, sand, gravel'}},
|
|
42
|
+
"PLACER": {'description': 'Placer mining', 'meaning': 'ENVO:01001204', 'annotations': {'category': 'surface', 'target': 'alluvial deposits'}},
|
|
43
|
+
"DREDGING": {'description': 'Dredging', 'annotations': {'category': 'surface/underwater', 'environment': 'rivers, harbors, seas'}},
|
|
44
|
+
"SHAFT_MINING": {'description': 'Shaft mining', 'annotations': {'category': 'underground', 'access': 'vertical shaft'}},
|
|
45
|
+
"DRIFT_MINING": {'description': 'Drift mining', 'annotations': {'category': 'underground', 'access': 'horizontal tunnel'}},
|
|
46
|
+
"SLOPE_MINING": {'description': 'Slope mining', 'annotations': {'category': 'underground', 'access': 'inclined shaft'}},
|
|
47
|
+
"ROOM_AND_PILLAR": {'description': 'Room and pillar mining', 'annotations': {'category': 'underground', 'method': 'leaves pillars for support'}},
|
|
48
|
+
"LONGWALL": {'description': 'Longwall mining', 'annotations': {'category': 'underground', 'method': 'progressive slice extraction'}},
|
|
49
|
+
"BLOCK_CAVING": {'description': 'Block caving', 'annotations': {'category': 'underground', 'method': 'gravity-assisted'}},
|
|
50
|
+
"SOLUTION_MINING": {'description': 'Solution mining (in-situ leaching)', 'annotations': {'category': 'specialized', 'method': 'chemical dissolution'}},
|
|
51
|
+
"HYDRAULIC_MINING": {'description': 'Hydraulic mining', 'annotations': {'category': 'specialized', 'method': 'high-pressure water'}},
|
|
52
|
+
"ARTISANAL": {'description': 'Artisanal and small-scale mining', 'annotations': {'category': 'small-scale', 'equipment': 'minimal mechanization'}},
|
|
53
|
+
"DEEP_SEA": {'description': 'Deep sea mining', 'annotations': {'category': 'marine', 'depth': 'ocean floor'}},
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
class MineralCategory(RichEnum):
|
|
57
|
+
"""
|
|
58
|
+
Categories of minerals and materials
|
|
59
|
+
"""
|
|
60
|
+
# Enum members
|
|
61
|
+
PRECIOUS_METALS = "PRECIOUS_METALS"
|
|
62
|
+
BASE_METALS = "BASE_METALS"
|
|
63
|
+
FERROUS_METALS = "FERROUS_METALS"
|
|
64
|
+
RARE_EARTH_ELEMENTS = "RARE_EARTH_ELEMENTS"
|
|
65
|
+
RADIOACTIVE = "RADIOACTIVE"
|
|
66
|
+
INDUSTRIAL_MINERALS = "INDUSTRIAL_MINERALS"
|
|
67
|
+
GEMSTONES = "GEMSTONES"
|
|
68
|
+
ENERGY_MINERALS = "ENERGY_MINERALS"
|
|
69
|
+
CONSTRUCTION_MATERIALS = "CONSTRUCTION_MATERIALS"
|
|
70
|
+
CHEMICAL_MINERALS = "CHEMICAL_MINERALS"
|
|
71
|
+
|
|
72
|
+
# Set metadata after class creation
|
|
73
|
+
MineralCategory._metadata = {
|
|
74
|
+
"PRECIOUS_METALS": {'description': 'Precious metals', 'annotations': {'examples': 'gold, silver, platinum'}},
|
|
75
|
+
"BASE_METALS": {'description': 'Base metals', 'annotations': {'examples': 'copper, lead, zinc, tin'}},
|
|
76
|
+
"FERROUS_METALS": {'description': 'Ferrous metals', 'annotations': {'examples': 'iron, steel, manganese'}},
|
|
77
|
+
"RARE_EARTH_ELEMENTS": {'description': 'Rare earth elements', 'annotations': {'examples': 'neodymium, dysprosium, cerium', 'count': '17 elements'}},
|
|
78
|
+
"RADIOACTIVE": {'description': 'Radioactive minerals', 'annotations': {'examples': 'uranium, thorium, radium'}},
|
|
79
|
+
"INDUSTRIAL_MINERALS": {'description': 'Industrial minerals', 'annotations': {'examples': 'limestone, gypsum, salt'}},
|
|
80
|
+
"GEMSTONES": {'description': 'Gemstones', 'annotations': {'examples': 'diamond, ruby, emerald'}},
|
|
81
|
+
"ENERGY_MINERALS": {'description': 'Energy minerals', 'annotations': {'examples': 'coal, oil shale, tar sands'}},
|
|
82
|
+
"CONSTRUCTION_MATERIALS": {'description': 'Construction materials', 'annotations': {'examples': 'sand, gravel, crushed stone'}},
|
|
83
|
+
"CHEMICAL_MINERALS": {'description': 'Chemical and fertilizer minerals', 'annotations': {'examples': 'phosphate, potash, sulfur'}},
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
class CriticalMineral(RichEnum):
|
|
87
|
+
"""
|
|
88
|
+
Critical minerals essential for economic and national security,
|
|
89
|
+
particularly for clean energy, defense, and technology applications.
|
|
90
|
+
Based on US Geological Survey and EU critical raw materials lists.
|
|
91
|
+
"""
|
|
92
|
+
# Enum members
|
|
93
|
+
LITHIUM = "LITHIUM"
|
|
94
|
+
COBALT = "COBALT"
|
|
95
|
+
NICKEL = "NICKEL"
|
|
96
|
+
GRAPHITE = "GRAPHITE"
|
|
97
|
+
MANGANESE = "MANGANESE"
|
|
98
|
+
NEODYMIUM = "NEODYMIUM"
|
|
99
|
+
DYSPROSIUM = "DYSPROSIUM"
|
|
100
|
+
PRASEODYMIUM = "PRASEODYMIUM"
|
|
101
|
+
TERBIUM = "TERBIUM"
|
|
102
|
+
EUROPIUM = "EUROPIUM"
|
|
103
|
+
YTTRIUM = "YTTRIUM"
|
|
104
|
+
CERIUM = "CERIUM"
|
|
105
|
+
LANTHANUM = "LANTHANUM"
|
|
106
|
+
GALLIUM = "GALLIUM"
|
|
107
|
+
GERMANIUM = "GERMANIUM"
|
|
108
|
+
INDIUM = "INDIUM"
|
|
109
|
+
TELLURIUM = "TELLURIUM"
|
|
110
|
+
ARSENIC = "ARSENIC"
|
|
111
|
+
TITANIUM = "TITANIUM"
|
|
112
|
+
VANADIUM = "VANADIUM"
|
|
113
|
+
CHROMIUM = "CHROMIUM"
|
|
114
|
+
TUNGSTEN = "TUNGSTEN"
|
|
115
|
+
TANTALUM = "TANTALUM"
|
|
116
|
+
NIOBIUM = "NIOBIUM"
|
|
117
|
+
ZIRCONIUM = "ZIRCONIUM"
|
|
118
|
+
HAFNIUM = "HAFNIUM"
|
|
119
|
+
PLATINUM = "PLATINUM"
|
|
120
|
+
PALLADIUM = "PALLADIUM"
|
|
121
|
+
RHODIUM = "RHODIUM"
|
|
122
|
+
IRIDIUM = "IRIDIUM"
|
|
123
|
+
RUTHENIUM = "RUTHENIUM"
|
|
124
|
+
ANTIMONY = "ANTIMONY"
|
|
125
|
+
BISMUTH = "BISMUTH"
|
|
126
|
+
BERYLLIUM = "BERYLLIUM"
|
|
127
|
+
MAGNESIUM = "MAGNESIUM"
|
|
128
|
+
ALUMINUM = "ALUMINUM"
|
|
129
|
+
TIN = "TIN"
|
|
130
|
+
FLUORSPAR = "FLUORSPAR"
|
|
131
|
+
BARITE = "BARITE"
|
|
132
|
+
HELIUM = "HELIUM"
|
|
133
|
+
POTASH = "POTASH"
|
|
134
|
+
PHOSPHATE_ROCK = "PHOSPHATE_ROCK"
|
|
135
|
+
SCANDIUM = "SCANDIUM"
|
|
136
|
+
STRONTIUM = "STRONTIUM"
|
|
137
|
+
|
|
138
|
+
# Set metadata after class creation
|
|
139
|
+
CriticalMineral._metadata = {
|
|
140
|
+
"LITHIUM": {'description': 'Lithium (Li) - essential for batteries', 'meaning': 'CHEBI:30145', 'annotations': {'symbol': 'Li', 'atomic_number': 3, 'applications': 'batteries, ceramics, glass'}},
|
|
141
|
+
"COBALT": {'description': 'Cobalt (Co) - battery cathodes and superalloys', 'meaning': 'CHEBI:27638', 'annotations': {'symbol': 'Co', 'atomic_number': 27, 'applications': 'batteries, superalloys, magnets'}},
|
|
142
|
+
"NICKEL": {'description': 'Nickel (Ni) - stainless steel and batteries', 'meaning': 'CHEBI:28112', 'annotations': {'symbol': 'Ni', 'atomic_number': 28, 'applications': 'stainless steel, batteries, alloys'}},
|
|
143
|
+
"GRAPHITE": {'description': 'Graphite - battery anodes and refractories', 'meaning': 'CHEBI:33418', 'annotations': {'formula': 'C', 'applications': 'batteries, lubricants, refractories'}},
|
|
144
|
+
"MANGANESE": {'description': 'Manganese (Mn) - steel and battery production', 'meaning': 'CHEBI:18291', 'annotations': {'symbol': 'Mn', 'atomic_number': 25, 'applications': 'steel, batteries, aluminum alloys'}},
|
|
145
|
+
"NEODYMIUM": {'description': 'Neodymium (Nd) - permanent magnets', 'meaning': 'CHEBI:33372', 'annotations': {'symbol': 'Nd', 'atomic_number': 60, 'category': 'light rare earth', 'applications': 'magnets, lasers, glass'}},
|
|
146
|
+
"DYSPROSIUM": {'description': 'Dysprosium (Dy) - high-performance magnets', 'meaning': 'CHEBI:33377', 'annotations': {'symbol': 'Dy', 'atomic_number': 66, 'category': 'heavy rare earth', 'applications': 'magnets, nuclear control rods'}},
|
|
147
|
+
"PRASEODYMIUM": {'description': 'Praseodymium (Pr) - magnets and alloys', 'meaning': 'CHEBI:49828', 'annotations': {'symbol': 'Pr', 'atomic_number': 59, 'category': 'light rare earth', 'applications': 'magnets, aircraft engines, glass'}},
|
|
148
|
+
"TERBIUM": {'description': 'Terbium (Tb) - phosphors and magnets', 'meaning': 'CHEBI:33376', 'annotations': {'symbol': 'Tb', 'atomic_number': 65, 'category': 'heavy rare earth', 'applications': 'solid-state devices, fuel cells'}},
|
|
149
|
+
"EUROPIUM": {'description': 'Europium (Eu) - phosphors and nuclear control', 'meaning': 'CHEBI:32999', 'annotations': {'symbol': 'Eu', 'atomic_number': 63, 'category': 'heavy rare earth', 'applications': 'LED phosphors, lasers'}},
|
|
150
|
+
"YTTRIUM": {'description': 'Yttrium (Y) - phosphors and ceramics', 'meaning': 'CHEBI:33331', 'annotations': {'symbol': 'Y', 'atomic_number': 39, 'applications': 'LEDs, superconductors, ceramics'}},
|
|
151
|
+
"CERIUM": {'description': 'Cerium (Ce) - catalysts and glass polishing', 'meaning': 'CHEBI:33369', 'annotations': {'symbol': 'Ce', 'atomic_number': 58, 'category': 'light rare earth', 'applications': 'catalysts, glass polishing, alloys'}},
|
|
152
|
+
"LANTHANUM": {'description': 'Lanthanum (La) - catalysts and optics', 'meaning': 'CHEBI:33336', 'annotations': {'symbol': 'La', 'atomic_number': 57, 'category': 'light rare earth', 'applications': 'catalysts, optical glass, batteries'}},
|
|
153
|
+
"GALLIUM": {'description': 'Gallium (Ga) - semiconductors and LEDs', 'meaning': 'CHEBI:49631', 'annotations': {'symbol': 'Ga', 'atomic_number': 31, 'applications': 'semiconductors, LEDs, solar cells'}},
|
|
154
|
+
"GERMANIUM": {'description': 'Germanium (Ge) - fiber optics and infrared', 'meaning': 'CHEBI:30441', 'annotations': {'symbol': 'Ge', 'atomic_number': 32, 'applications': 'fiber optics, infrared optics, solar cells'}},
|
|
155
|
+
"INDIUM": {'description': 'Indium (In) - displays and semiconductors', 'meaning': 'CHEBI:30430', 'annotations': {'symbol': 'In', 'atomic_number': 49, 'applications': 'LCD displays, semiconductors, solar panels'}},
|
|
156
|
+
"TELLURIUM": {'description': 'Tellurium (Te) - solar panels and thermoelectrics', 'meaning': 'CHEBI:30452', 'annotations': {'symbol': 'Te', 'atomic_number': 52, 'applications': 'solar panels, thermoelectrics, alloys'}},
|
|
157
|
+
"ARSENIC": {'description': 'Arsenic (As) - semiconductors and alloys', 'meaning': 'CHEBI:27563', 'annotations': {'symbol': 'As', 'atomic_number': 33, 'applications': 'semiconductors, wood preservatives'}},
|
|
158
|
+
"TITANIUM": {'description': 'Titanium (Ti) - aerospace and defense', 'meaning': 'CHEBI:33341', 'annotations': {'symbol': 'Ti', 'atomic_number': 22, 'applications': 'aerospace, medical implants, pigments'}},
|
|
159
|
+
"VANADIUM": {'description': 'Vanadium (V) - steel alloys and batteries', 'meaning': 'CHEBI:27698', 'annotations': {'symbol': 'V', 'atomic_number': 23, 'applications': 'steel alloys, flow batteries, catalysts'}},
|
|
160
|
+
"CHROMIUM": {'description': 'Chromium (Cr) - stainless steel and alloys', 'meaning': 'CHEBI:28073', 'annotations': {'symbol': 'Cr', 'atomic_number': 24, 'applications': 'stainless steel, superalloys, plating'}},
|
|
161
|
+
"TUNGSTEN": {'description': 'Tungsten (W) - hard metals and electronics', 'meaning': 'CHEBI:27998', 'annotations': {'symbol': 'W', 'atomic_number': 74, 'applications': 'cutting tools, electronics, alloys'}},
|
|
162
|
+
"TANTALUM": {'description': 'Tantalum (Ta) - capacitors and superalloys', 'meaning': 'CHEBI:33348', 'annotations': {'symbol': 'Ta', 'atomic_number': 73, 'applications': 'capacitors, medical implants, superalloys'}},
|
|
163
|
+
"NIOBIUM": {'description': 'Niobium (Nb) - steel alloys and superconductors', 'meaning': 'CHEBI:33344', 'annotations': {'symbol': 'Nb', 'atomic_number': 41, 'applications': 'steel alloys, superconductors, capacitors'}},
|
|
164
|
+
"ZIRCONIUM": {'description': 'Zirconium (Zr) - nuclear and ceramics', 'meaning': 'CHEBI:33342', 'annotations': {'symbol': 'Zr', 'atomic_number': 40, 'applications': 'nuclear reactors, ceramics, alloys'}},
|
|
165
|
+
"HAFNIUM": {'description': 'Hafnium (Hf) - nuclear and semiconductors', 'meaning': 'CHEBI:33343', 'annotations': {'symbol': 'Hf', 'atomic_number': 72, 'applications': 'nuclear control rods, superalloys'}},
|
|
166
|
+
"PLATINUM": {'description': 'Platinum (Pt) - catalysts and electronics', 'meaning': 'CHEBI:33400', 'annotations': {'symbol': 'Pt', 'atomic_number': 78, 'category': 'PGM', 'applications': 'catalysts, jewelry, electronics'}},
|
|
167
|
+
"PALLADIUM": {'description': 'Palladium (Pd) - catalysts and electronics', 'meaning': 'CHEBI:33363', 'annotations': {'symbol': 'Pd', 'atomic_number': 46, 'category': 'PGM', 'applications': 'catalysts, electronics, dentistry'}},
|
|
168
|
+
"RHODIUM": {'description': 'Rhodium (Rh) - catalysts and electronics', 'meaning': 'CHEBI:33359', 'annotations': {'symbol': 'Rh', 'atomic_number': 45, 'category': 'PGM', 'applications': 'catalysts, electronics, glass'}},
|
|
169
|
+
"IRIDIUM": {'description': 'Iridium (Ir) - electronics and catalysts', 'meaning': 'CHEBI:49666', 'annotations': {'symbol': 'Ir', 'atomic_number': 77, 'category': 'PGM', 'applications': 'spark plugs, electronics, catalysts'}},
|
|
170
|
+
"RUTHENIUM": {'description': 'Ruthenium (Ru) - electronics and catalysts', 'meaning': 'CHEBI:30682', 'annotations': {'symbol': 'Ru', 'atomic_number': 44, 'category': 'PGM', 'applications': 'electronics, catalysts, solar cells'}},
|
|
171
|
+
"ANTIMONY": {'description': 'Antimony (Sb) - flame retardants and batteries', 'meaning': 'CHEBI:30513', 'annotations': {'symbol': 'Sb', 'atomic_number': 51, 'applications': 'flame retardants, batteries, alloys'}},
|
|
172
|
+
"BISMUTH": {'description': 'Bismuth (Bi) - pharmaceuticals and alloys', 'meaning': 'CHEBI:33301', 'annotations': {'symbol': 'Bi', 'atomic_number': 83, 'applications': 'pharmaceuticals, cosmetics, alloys'}},
|
|
173
|
+
"BERYLLIUM": {'description': 'Beryllium (Be) - aerospace and defense', 'meaning': 'CHEBI:30501', 'annotations': {'symbol': 'Be', 'atomic_number': 4, 'applications': 'aerospace, defense, nuclear'}},
|
|
174
|
+
"MAGNESIUM": {'description': 'Magnesium (Mg) - lightweight alloys', 'meaning': 'CHEBI:25107', 'annotations': {'symbol': 'Mg', 'atomic_number': 12, 'applications': 'alloys, automotive, aerospace'}},
|
|
175
|
+
"ALUMINUM": {'description': 'Aluminum (Al) - construction and transportation', 'meaning': 'CHEBI:28984', 'annotations': {'symbol': 'Al', 'atomic_number': 13, 'applications': 'construction, transportation, packaging'}},
|
|
176
|
+
"TIN": {'description': 'Tin (Sn) - solders and coatings', 'meaning': 'CHEBI:27007', 'annotations': {'symbol': 'Sn', 'atomic_number': 50, 'applications': 'solders, coatings, alloys'}},
|
|
177
|
+
"FLUORSPAR": {'description': 'Fluorspar (CaF2) - steel and aluminum production', 'meaning': 'CHEBI:35437', 'annotations': {'formula': 'CaF2', 'mineral_name': 'fluorite', 'applications': 'steel, aluminum, refrigerants'}},
|
|
178
|
+
"BARITE": {'description': 'Barite (BaSO4) - drilling and chemicals', 'meaning': 'CHEBI:133326', 'annotations': {'formula': 'BaSO4', 'applications': 'oil drilling, chemicals, radiation shielding'}},
|
|
179
|
+
"HELIUM": {'description': 'Helium (He) - cryogenics and electronics', 'meaning': 'CHEBI:33681', 'annotations': {'symbol': 'He', 'atomic_number': 2, 'applications': 'MRI, semiconductors, aerospace'}},
|
|
180
|
+
"POTASH": {'description': 'Potash (K2O) - fertilizers and chemicals', 'meaning': 'CHEBI:88321', 'annotations': {'formula': 'K2O', 'applications': 'fertilizers, chemicals, glass'}},
|
|
181
|
+
"PHOSPHATE_ROCK": {'description': 'Phosphate rock - fertilizers and chemicals', 'meaning': 'CHEBI:26020', 'annotations': {'applications': 'fertilizers, food additives, chemicals'}},
|
|
182
|
+
"SCANDIUM": {'description': 'Scandium (Sc) - aerospace alloys', 'meaning': 'CHEBI:33330', 'annotations': {'symbol': 'Sc', 'atomic_number': 21, 'applications': 'aerospace alloys, solid oxide fuel cells'}},
|
|
183
|
+
"STRONTIUM": {'description': 'Strontium (Sr) - magnets and pyrotechnics', 'meaning': 'CHEBI:33324', 'annotations': {'symbol': 'Sr', 'atomic_number': 38, 'applications': 'magnets, pyrotechnics, medical'}},
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
class CommonMineral(RichEnum):
|
|
187
|
+
"""
|
|
188
|
+
Common minerals extracted through mining
|
|
189
|
+
"""
|
|
190
|
+
# Enum members
|
|
191
|
+
GOLD = "GOLD"
|
|
192
|
+
SILVER = "SILVER"
|
|
193
|
+
PLATINUM = "PLATINUM"
|
|
194
|
+
COPPER = "COPPER"
|
|
195
|
+
IRON = "IRON"
|
|
196
|
+
ALUMINUM = "ALUMINUM"
|
|
197
|
+
ZINC = "ZINC"
|
|
198
|
+
LEAD = "LEAD"
|
|
199
|
+
NICKEL = "NICKEL"
|
|
200
|
+
TIN = "TIN"
|
|
201
|
+
COAL = "COAL"
|
|
202
|
+
URANIUM = "URANIUM"
|
|
203
|
+
LIMESTONE = "LIMESTONE"
|
|
204
|
+
SALT = "SALT"
|
|
205
|
+
PHOSPHATE = "PHOSPHATE"
|
|
206
|
+
POTASH = "POTASH"
|
|
207
|
+
LITHIUM = "LITHIUM"
|
|
208
|
+
COBALT = "COBALT"
|
|
209
|
+
DIAMOND = "DIAMOND"
|
|
210
|
+
|
|
211
|
+
# Set metadata after class creation
|
|
212
|
+
CommonMineral._metadata = {
|
|
213
|
+
"GOLD": {'description': 'Gold (Au)', 'meaning': 'CHEBI:29287', 'annotations': {'symbol': 'Au', 'atomic_number': 79}},
|
|
214
|
+
"SILVER": {'description': 'Silver (Ag)', 'meaning': 'CHEBI:30512', 'annotations': {'symbol': 'Ag', 'atomic_number': 47}},
|
|
215
|
+
"PLATINUM": {'description': 'Platinum (Pt)', 'meaning': 'CHEBI:49202', 'annotations': {'symbol': 'Pt', 'atomic_number': 78}},
|
|
216
|
+
"COPPER": {'description': 'Copper (Cu)', 'meaning': 'CHEBI:28694', 'annotations': {'symbol': 'Cu', 'atomic_number': 29}},
|
|
217
|
+
"IRON": {'description': 'Iron (Fe)', 'meaning': 'CHEBI:18248', 'annotations': {'symbol': 'Fe', 'atomic_number': 26}},
|
|
218
|
+
"ALUMINUM": {'description': 'Aluminum (Al)', 'meaning': 'CHEBI:28984', 'annotations': {'symbol': 'Al', 'atomic_number': 13, 'ore': 'bauxite'}},
|
|
219
|
+
"ZINC": {'description': 'Zinc (Zn)', 'meaning': 'CHEBI:27363', 'annotations': {'symbol': 'Zn', 'atomic_number': 30}},
|
|
220
|
+
"LEAD": {'description': 'Lead (Pb)', 'meaning': 'CHEBI:25016', 'annotations': {'symbol': 'Pb', 'atomic_number': 82}},
|
|
221
|
+
"NICKEL": {'description': 'Nickel (Ni)', 'meaning': 'CHEBI:28112', 'annotations': {'symbol': 'Ni', 'atomic_number': 28}},
|
|
222
|
+
"TIN": {'description': 'Tin (Sn)', 'meaning': 'CHEBI:27007', 'annotations': {'symbol': 'Sn', 'atomic_number': 50}},
|
|
223
|
+
"COAL": {'description': 'Coal', 'meaning': 'ENVO:02000091', 'annotations': {'types': 'anthracite, bituminous, lignite'}},
|
|
224
|
+
"URANIUM": {'description': 'Uranium (U)', 'meaning': 'CHEBI:27214', 'annotations': {'symbol': 'U', 'atomic_number': 92}},
|
|
225
|
+
"LIMESTONE": {'description': 'Limestone (CaCO3)', 'meaning': 'ENVO:00002053', 'annotations': {'formula': 'CaCO3', 'use': 'cement, steel production'}},
|
|
226
|
+
"SALT": {'description': 'Salt (NaCl)', 'meaning': 'CHEBI:24866', 'annotations': {'formula': 'NaCl', 'aliases': 'halite, rock salt'}},
|
|
227
|
+
"PHOSPHATE": {'description': 'Phosphate rock', 'meaning': 'CHEBI:26020', 'annotations': {'use': 'fertilizer production'}},
|
|
228
|
+
"POTASH": {'description': 'Potash (K2O)', 'meaning': 'CHEBI:88321', 'annotations': {'formula': 'K2O', 'use': 'fertilizer'}},
|
|
229
|
+
"LITHIUM": {'description': 'Lithium (Li)', 'meaning': 'CHEBI:30145', 'annotations': {'symbol': 'Li', 'atomic_number': 3, 'use': 'batteries'}},
|
|
230
|
+
"COBALT": {'description': 'Cobalt (Co)', 'meaning': 'CHEBI:27638', 'annotations': {'symbol': 'Co', 'atomic_number': 27, 'use': 'batteries, alloys'}},
|
|
231
|
+
"DIAMOND": {'description': 'Diamond (C)', 'meaning': 'CHEBI:33417', 'annotations': {'formula': 'C', 'use': 'gemstone, industrial'}},
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
class MiningEquipment(RichEnum):
|
|
235
|
+
"""
|
|
236
|
+
Types of mining equipment
|
|
237
|
+
"""
|
|
238
|
+
# Enum members
|
|
239
|
+
DRILL_RIG = "DRILL_RIG"
|
|
240
|
+
JUMBO_DRILL = "JUMBO_DRILL"
|
|
241
|
+
EXCAVATOR = "EXCAVATOR"
|
|
242
|
+
DRAGLINE = "DRAGLINE"
|
|
243
|
+
BUCKET_WHEEL_EXCAVATOR = "BUCKET_WHEEL_EXCAVATOR"
|
|
244
|
+
HAUL_TRUCK = "HAUL_TRUCK"
|
|
245
|
+
LOADER = "LOADER"
|
|
246
|
+
CONVEYOR = "CONVEYOR"
|
|
247
|
+
CRUSHER = "CRUSHER"
|
|
248
|
+
BALL_MILL = "BALL_MILL"
|
|
249
|
+
FLOTATION_CELL = "FLOTATION_CELL"
|
|
250
|
+
CONTINUOUS_MINER = "CONTINUOUS_MINER"
|
|
251
|
+
ROOF_BOLTER = "ROOF_BOLTER"
|
|
252
|
+
SHUTTLE_CAR = "SHUTTLE_CAR"
|
|
253
|
+
|
|
254
|
+
# Set metadata after class creation
|
|
255
|
+
MiningEquipment._metadata = {
|
|
256
|
+
"DRILL_RIG": {'description': 'Drilling rig', 'annotations': {'category': 'drilling'}},
|
|
257
|
+
"JUMBO_DRILL": {'description': 'Jumbo drill', 'annotations': {'category': 'drilling', 'use': 'underground'}},
|
|
258
|
+
"EXCAVATOR": {'description': 'Excavator', 'annotations': {'category': 'excavation'}},
|
|
259
|
+
"DRAGLINE": {'description': 'Dragline excavator', 'annotations': {'category': 'excavation', 'size': 'large-scale'}},
|
|
260
|
+
"BUCKET_WHEEL_EXCAVATOR": {'description': 'Bucket-wheel excavator', 'annotations': {'category': 'excavation', 'use': 'continuous mining'}},
|
|
261
|
+
"HAUL_TRUCK": {'description': 'Haul truck', 'annotations': {'category': 'hauling', 'capacity': 'up to 400 tons'}},
|
|
262
|
+
"LOADER": {'description': 'Loader', 'annotations': {'category': 'loading'}},
|
|
263
|
+
"CONVEYOR": {'description': 'Conveyor system', 'annotations': {'category': 'transport'}},
|
|
264
|
+
"CRUSHER": {'description': 'Crusher', 'annotations': {'category': 'processing', 'types': 'jaw, cone, impact'}},
|
|
265
|
+
"BALL_MILL": {'description': 'Ball mill', 'annotations': {'category': 'processing', 'use': 'grinding'}},
|
|
266
|
+
"FLOTATION_CELL": {'description': 'Flotation cell', 'annotations': {'category': 'processing', 'use': 'mineral separation'}},
|
|
267
|
+
"CONTINUOUS_MINER": {'description': 'Continuous miner', 'annotations': {'category': 'underground'}},
|
|
268
|
+
"ROOF_BOLTER": {'description': 'Roof bolter', 'annotations': {'category': 'underground', 'use': 'support installation'}},
|
|
269
|
+
"SHUTTLE_CAR": {'description': 'Shuttle car', 'annotations': {'category': 'underground transport'}},
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
class OreGrade(RichEnum):
|
|
273
|
+
"""
|
|
274
|
+
Classification of ore grades
|
|
275
|
+
"""
|
|
276
|
+
# Enum members
|
|
277
|
+
HIGH_GRADE = "HIGH_GRADE"
|
|
278
|
+
MEDIUM_GRADE = "MEDIUM_GRADE"
|
|
279
|
+
LOW_GRADE = "LOW_GRADE"
|
|
280
|
+
MARGINAL = "MARGINAL"
|
|
281
|
+
SUB_ECONOMIC = "SUB_ECONOMIC"
|
|
282
|
+
WASTE = "WASTE"
|
|
283
|
+
|
|
284
|
+
# Set metadata after class creation
|
|
285
|
+
OreGrade._metadata = {
|
|
286
|
+
"HIGH_GRADE": {'description': 'High-grade ore', 'annotations': {'concentration': 'high', 'processing': 'minimal required'}},
|
|
287
|
+
"MEDIUM_GRADE": {'description': 'Medium-grade ore', 'annotations': {'concentration': 'moderate'}},
|
|
288
|
+
"LOW_GRADE": {'description': 'Low-grade ore', 'annotations': {'concentration': 'low', 'processing': 'extensive required'}},
|
|
289
|
+
"MARGINAL": {'description': 'Marginal ore', 'annotations': {'economics': 'borderline profitable'}},
|
|
290
|
+
"SUB_ECONOMIC": {'description': 'Sub-economic ore', 'annotations': {'economics': 'not currently profitable'}},
|
|
291
|
+
"WASTE": {'description': 'Waste rock', 'annotations': {'concentration': 'below cutoff'}},
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
class MiningPhase(RichEnum):
|
|
295
|
+
"""
|
|
296
|
+
Phases of mining operations
|
|
297
|
+
"""
|
|
298
|
+
# Enum members
|
|
299
|
+
EXPLORATION = "EXPLORATION"
|
|
300
|
+
DEVELOPMENT = "DEVELOPMENT"
|
|
301
|
+
PRODUCTION = "PRODUCTION"
|
|
302
|
+
PROCESSING = "PROCESSING"
|
|
303
|
+
CLOSURE = "CLOSURE"
|
|
304
|
+
RECLAMATION = "RECLAMATION"
|
|
305
|
+
POST_CLOSURE = "POST_CLOSURE"
|
|
306
|
+
|
|
307
|
+
# Set metadata after class creation
|
|
308
|
+
MiningPhase._metadata = {
|
|
309
|
+
"EXPLORATION": {'description': 'Exploration phase', 'annotations': {'activities': 'prospecting, sampling, drilling'}},
|
|
310
|
+
"DEVELOPMENT": {'description': 'Development phase', 'annotations': {'activities': 'infrastructure, access roads'}},
|
|
311
|
+
"PRODUCTION": {'description': 'Production/extraction phase', 'annotations': {'activities': 'active mining'}},
|
|
312
|
+
"PROCESSING": {'description': 'Processing/beneficiation phase', 'annotations': {'activities': 'crushing, milling, concentration'}},
|
|
313
|
+
"CLOSURE": {'description': 'Closure phase', 'annotations': {'activities': 'decommissioning, capping'}},
|
|
314
|
+
"RECLAMATION": {'description': 'Reclamation phase', 'annotations': {'activities': 'restoration, revegetation'}},
|
|
315
|
+
"POST_CLOSURE": {'description': 'Post-closure monitoring', 'annotations': {'activities': 'long-term monitoring'}},
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
class MiningHazard(RichEnum):
|
|
319
|
+
"""
|
|
320
|
+
Mining-related hazards and risks
|
|
321
|
+
"""
|
|
322
|
+
# Enum members
|
|
323
|
+
CAVE_IN = "CAVE_IN"
|
|
324
|
+
GAS_EXPLOSION = "GAS_EXPLOSION"
|
|
325
|
+
FLOODING = "FLOODING"
|
|
326
|
+
DUST_EXPOSURE = "DUST_EXPOSURE"
|
|
327
|
+
CHEMICAL_EXPOSURE = "CHEMICAL_EXPOSURE"
|
|
328
|
+
RADIATION = "RADIATION"
|
|
329
|
+
NOISE = "NOISE"
|
|
330
|
+
VIBRATION = "VIBRATION"
|
|
331
|
+
HEAT_STRESS = "HEAT_STRESS"
|
|
332
|
+
EQUIPMENT_ACCIDENT = "EQUIPMENT_ACCIDENT"
|
|
333
|
+
|
|
334
|
+
# Set metadata after class creation
|
|
335
|
+
MiningHazard._metadata = {
|
|
336
|
+
"CAVE_IN": {'description': 'Cave-in/roof collapse', 'annotations': {'type': 'structural'}},
|
|
337
|
+
"GAS_EXPLOSION": {'description': 'Gas explosion', 'annotations': {'type': 'chemical', 'gases': 'methane, coal dust'}},
|
|
338
|
+
"FLOODING": {'description': 'Mine flooding', 'annotations': {'type': 'water'}},
|
|
339
|
+
"DUST_EXPOSURE": {'description': 'Dust exposure', 'annotations': {'type': 'respiratory', 'diseases': 'silicosis, pneumoconiosis'}},
|
|
340
|
+
"CHEMICAL_EXPOSURE": {'description': 'Chemical exposure', 'annotations': {'type': 'toxic', 'chemicals': 'mercury, cyanide, acids'}},
|
|
341
|
+
"RADIATION": {'description': 'Radiation exposure', 'annotations': {'type': 'radioactive', 'source': 'uranium, radon'}},
|
|
342
|
+
"NOISE": {'description': 'Noise exposure', 'annotations': {'type': 'physical'}},
|
|
343
|
+
"VIBRATION": {'description': 'Vibration exposure', 'annotations': {'type': 'physical'}},
|
|
344
|
+
"HEAT_STRESS": {'description': 'Heat stress', 'annotations': {'type': 'thermal'}},
|
|
345
|
+
"EQUIPMENT_ACCIDENT": {'description': 'Equipment-related accident', 'annotations': {'type': 'mechanical'}},
|
|
346
|
+
}
|
|
347
|
+
|
|
348
|
+
class EnvironmentalImpact(RichEnum):
|
|
349
|
+
"""
|
|
350
|
+
Environmental impacts of mining
|
|
351
|
+
"""
|
|
352
|
+
# Enum members
|
|
353
|
+
HABITAT_DESTRUCTION = "HABITAT_DESTRUCTION"
|
|
354
|
+
WATER_POLLUTION = "WATER_POLLUTION"
|
|
355
|
+
AIR_POLLUTION = "AIR_POLLUTION"
|
|
356
|
+
SOIL_CONTAMINATION = "SOIL_CONTAMINATION"
|
|
357
|
+
DEFORESTATION = "DEFORESTATION"
|
|
358
|
+
EROSION = "EROSION"
|
|
359
|
+
ACID_MINE_DRAINAGE = "ACID_MINE_DRAINAGE"
|
|
360
|
+
TAILINGS = "TAILINGS"
|
|
361
|
+
SUBSIDENCE = "SUBSIDENCE"
|
|
362
|
+
BIODIVERSITY_LOSS = "BIODIVERSITY_LOSS"
|
|
363
|
+
|
|
364
|
+
# Set metadata after class creation
|
|
365
|
+
EnvironmentalImpact._metadata = {
|
|
366
|
+
"HABITAT_DESTRUCTION": {'description': 'Habitat destruction', 'meaning': 'ExO:0000012'},
|
|
367
|
+
"WATER_POLLUTION": {'description': 'Water pollution', 'meaning': 'ENVO:02500039', 'annotations': {'types': 'acid mine drainage, heavy metals'}},
|
|
368
|
+
"AIR_POLLUTION": {'description': 'Air pollution', 'meaning': 'ENVO:02500037', 'annotations': {'sources': 'dust, emissions'}},
|
|
369
|
+
"SOIL_CONTAMINATION": {'description': 'Soil contamination', 'meaning': 'ENVO:00002116'},
|
|
370
|
+
"DEFORESTATION": {'description': 'Deforestation', 'meaning': 'ENVO:02500012'},
|
|
371
|
+
"EROSION": {'description': 'Erosion and sedimentation', 'meaning': 'ENVO:01001346'},
|
|
372
|
+
"ACID_MINE_DRAINAGE": {'description': 'Acid mine drainage', 'meaning': 'ENVO:00001997'},
|
|
373
|
+
"TAILINGS": {'description': 'Tailings contamination', 'annotations': {'storage': 'tailings ponds, dams'}},
|
|
374
|
+
"SUBSIDENCE": {'description': 'Ground subsidence', 'annotations': {'cause': 'underground voids'}},
|
|
375
|
+
"BIODIVERSITY_LOSS": {'description': 'Biodiversity loss', 'annotations': {'impact': 'species extinction, ecosystem disruption'}},
|
|
376
|
+
}
|
|
377
|
+
|
|
378
|
+
__all__ = [
|
|
379
|
+
"MiningType",
|
|
380
|
+
"MineralCategory",
|
|
381
|
+
"CriticalMineral",
|
|
382
|
+
"CommonMineral",
|
|
383
|
+
"MiningEquipment",
|
|
384
|
+
"OreGrade",
|
|
385
|
+
"MiningPhase",
|
|
386
|
+
"MiningHazard",
|
|
387
|
+
"EnvironmentalImpact",
|
|
388
|
+
]
|
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Safety and Warning Color Value Sets
|
|
3
|
+
|
|
4
|
+
Color value sets for safety, warning, and signaling purposes based on international standards like ANSI, ISO, and OSHA.
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
Generated from: industry/safety_colors.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 SafetyColorEnum(RichEnum):
|
|
16
|
+
"""
|
|
17
|
+
ANSI/ISO standard safety colors
|
|
18
|
+
"""
|
|
19
|
+
# Enum members
|
|
20
|
+
SAFETY_RED = "SAFETY_RED"
|
|
21
|
+
SAFETY_ORANGE = "SAFETY_ORANGE"
|
|
22
|
+
SAFETY_YELLOW = "SAFETY_YELLOW"
|
|
23
|
+
SAFETY_GREEN = "SAFETY_GREEN"
|
|
24
|
+
SAFETY_BLUE = "SAFETY_BLUE"
|
|
25
|
+
SAFETY_PURPLE = "SAFETY_PURPLE"
|
|
26
|
+
SAFETY_BLACK = "SAFETY_BLACK"
|
|
27
|
+
SAFETY_WHITE = "SAFETY_WHITE"
|
|
28
|
+
SAFETY_GRAY = "SAFETY_GRAY"
|
|
29
|
+
SAFETY_BROWN = "SAFETY_BROWN"
|
|
30
|
+
|
|
31
|
+
# Set metadata after class creation
|
|
32
|
+
SafetyColorEnum._metadata = {
|
|
33
|
+
"SAFETY_RED": {'description': 'Safety red - danger, stop, prohibition', 'meaning': 'HEX:C8102E', 'annotations': {'standard': 'ANSI Z535.1', 'pantone': 'PMS 186 C', 'usage': 'fire equipment, stop signs, danger signs'}},
|
|
34
|
+
"SAFETY_ORANGE": {'description': 'Safety orange - warning of dangerous parts', 'meaning': 'HEX:FF6900', 'annotations': {'standard': 'ANSI Z535.1', 'pantone': 'PMS 151 C', 'usage': 'machine parts, exposed edges'}},
|
|
35
|
+
"SAFETY_YELLOW": {'description': 'Safety yellow - caution, physical hazards', 'meaning': 'HEX:F6D04D', 'annotations': {'standard': 'ANSI Z535.1', 'pantone': 'PMS 116 C', 'usage': 'caution signs, physical hazards, stumbling'}},
|
|
36
|
+
"SAFETY_GREEN": {'description': 'Safety green - safety, first aid, emergency egress', 'meaning': 'HEX:00843D', 'annotations': {'standard': 'ANSI Z535.1', 'pantone': 'PMS 355 C', 'usage': 'first aid, safety equipment, emergency exits'}},
|
|
37
|
+
"SAFETY_BLUE": {'description': 'Safety blue - mandatory, information', 'meaning': 'HEX:005EB8', 'annotations': {'standard': 'ANSI Z535.1', 'pantone': 'PMS 285 C', 'usage': 'mandatory signs, information signs'}},
|
|
38
|
+
"SAFETY_PURPLE": {'description': 'Safety purple - radiation hazards', 'meaning': 'HEX:652D90', 'annotations': {'standard': 'ANSI Z535.1', 'pantone': 'PMS 2685 C', 'usage': 'radiation hazards, x-ray equipment'}},
|
|
39
|
+
"SAFETY_BLACK": {'description': 'Safety black - traffic/housekeeping markings', 'meaning': 'HEX:000000', 'annotations': {'standard': 'ANSI Z535.1', 'usage': 'traffic control, housekeeping markers'}},
|
|
40
|
+
"SAFETY_WHITE": {'description': 'Safety white - traffic/housekeeping markings', 'meaning': 'HEX:FFFFFF', 'annotations': {'standard': 'ANSI Z535.1', 'usage': 'traffic lanes, housekeeping boundaries'}},
|
|
41
|
+
"SAFETY_GRAY": {'description': 'Safety gray - inactive/out of service', 'meaning': 'HEX:919191', 'annotations': {'standard': 'ANSI Z535.1', 'usage': 'out of service equipment'}},
|
|
42
|
+
"SAFETY_BROWN": {'description': 'Safety brown - no special hazard (background)', 'meaning': 'HEX:795548', 'annotations': {'usage': 'background color for signs'}},
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
class TrafficLightColorEnum(RichEnum):
|
|
46
|
+
"""
|
|
47
|
+
Traffic signal colors (international)
|
|
48
|
+
"""
|
|
49
|
+
# Enum members
|
|
50
|
+
RED = "RED"
|
|
51
|
+
AMBER = "AMBER"
|
|
52
|
+
GREEN = "GREEN"
|
|
53
|
+
FLASHING_RED = "FLASHING_RED"
|
|
54
|
+
FLASHING_AMBER = "FLASHING_AMBER"
|
|
55
|
+
WHITE = "WHITE"
|
|
56
|
+
|
|
57
|
+
# Set metadata after class creation
|
|
58
|
+
TrafficLightColorEnum._metadata = {
|
|
59
|
+
"RED": {'description': 'Red - stop', 'meaning': 'HEX:FF0000', 'annotations': {'wavelength': '630-700 nm', 'meaning_universal': 'stop, do not proceed'}},
|
|
60
|
+
"AMBER": {'description': 'Amber/yellow - caution', 'meaning': 'HEX:FFBF00', 'annotations': {'wavelength': '590 nm', 'meaning_universal': 'prepare to stop, caution'}},
|
|
61
|
+
"GREEN": {'description': 'Green - go', 'meaning': 'HEX:00FF00', 'annotations': {'wavelength': '510-570 nm', 'meaning_universal': 'proceed, safe to go'}},
|
|
62
|
+
"FLASHING_RED": {'description': 'Flashing red - stop then proceed', 'meaning': 'HEX:FF0000', 'annotations': {'pattern': 'flashing', 'meaning_universal': 'stop, then proceed when safe'}},
|
|
63
|
+
"FLASHING_AMBER": {'description': 'Flashing amber - proceed with caution', 'meaning': 'HEX:FFBF00', 'annotations': {'pattern': 'flashing', 'meaning_universal': 'proceed with caution'}},
|
|
64
|
+
"WHITE": {'description': 'White - special situations (transit)', 'meaning': 'HEX:FFFFFF', 'annotations': {'usage': 'transit priority signals'}},
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
class HazmatColorEnum(RichEnum):
|
|
68
|
+
"""
|
|
69
|
+
Hazardous materials placarding colors (DOT/UN)
|
|
70
|
+
"""
|
|
71
|
+
# Enum members
|
|
72
|
+
ORANGE = "ORANGE"
|
|
73
|
+
RED = "RED"
|
|
74
|
+
GREEN = "GREEN"
|
|
75
|
+
YELLOW = "YELLOW"
|
|
76
|
+
WHITE = "WHITE"
|
|
77
|
+
BLACK_WHITE_STRIPES = "BLACK_WHITE_STRIPES"
|
|
78
|
+
BLUE = "BLUE"
|
|
79
|
+
WHITE_RED_STRIPES = "WHITE_RED_STRIPES"
|
|
80
|
+
|
|
81
|
+
# Set metadata after class creation
|
|
82
|
+
HazmatColorEnum._metadata = {
|
|
83
|
+
"ORANGE": {'description': 'Orange - explosives (Class 1)', 'meaning': 'HEX:FF6600', 'annotations': {'class': '1', 'hazard': 'explosives'}},
|
|
84
|
+
"RED": {'description': 'Red - flammable (Classes 2.1, 3)', 'meaning': 'HEX:FF0000', 'annotations': {'class': '2.1, 3', 'hazard': 'flammable gas, flammable liquid'}},
|
|
85
|
+
"GREEN": {'description': 'Green - non-flammable gas (Class 2.2)', 'meaning': 'HEX:00FF00', 'annotations': {'class': '2.2', 'hazard': 'non-flammable gas'}},
|
|
86
|
+
"YELLOW": {'description': 'Yellow - oxidizer, organic peroxide (Classes 5.1, 5.2)', 'meaning': 'HEX:FFFF00', 'annotations': {'class': '5.1, 5.2', 'hazard': 'oxidizing substances, organic peroxides'}},
|
|
87
|
+
"WHITE": {'description': 'White - poison/toxic (Class 6.1)', 'meaning': 'HEX:FFFFFF', 'annotations': {'class': '6.1', 'hazard': 'toxic/poisonous substances'}},
|
|
88
|
+
"BLACK_WHITE_STRIPES": {'description': 'Black and white stripes - corrosive (Class 8)', 'annotations': {'class': '8', 'hazard': 'corrosive substances', 'pattern': 'black and white vertical stripes'}},
|
|
89
|
+
"BLUE": {'description': 'Blue - dangerous when wet (Class 4.3)', 'meaning': 'HEX:0000FF', 'annotations': {'class': '4.3', 'hazard': 'dangerous when wet'}},
|
|
90
|
+
"WHITE_RED_STRIPES": {'description': 'White with red stripes - flammable solid (Class 4.1)', 'annotations': {'class': '4.1', 'hazard': 'flammable solid', 'pattern': 'white with red vertical stripes'}},
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
class FireSafetyColorEnum(RichEnum):
|
|
94
|
+
"""
|
|
95
|
+
Fire safety equipment and signage colors
|
|
96
|
+
"""
|
|
97
|
+
# Enum members
|
|
98
|
+
FIRE_RED = "FIRE_RED"
|
|
99
|
+
PHOTOLUMINESCENT_GREEN = "PHOTOLUMINESCENT_GREEN"
|
|
100
|
+
YELLOW_BLACK_STRIPES = "YELLOW_BLACK_STRIPES"
|
|
101
|
+
WHITE = "WHITE"
|
|
102
|
+
BLUE = "BLUE"
|
|
103
|
+
|
|
104
|
+
# Set metadata after class creation
|
|
105
|
+
FireSafetyColorEnum._metadata = {
|
|
106
|
+
"FIRE_RED": {'description': 'Fire red - fire equipment', 'meaning': 'HEX:C8102E', 'annotations': {'usage': 'fire extinguishers, alarms, hose reels', 'standard': 'ISO 7010'}},
|
|
107
|
+
"PHOTOLUMINESCENT_GREEN": {'description': 'Photoluminescent green - emergency escape', 'meaning': 'HEX:7FFF00', 'annotations': {'usage': 'emergency exit signs, escape routes', 'property': 'glows in dark'}},
|
|
108
|
+
"YELLOW_BLACK_STRIPES": {'description': 'Yellow with black stripes - fire hazard area', 'annotations': {'pattern': 'diagonal stripes', 'usage': 'fire hazard zones'}},
|
|
109
|
+
"WHITE": {'description': 'White - fire protection water', 'meaning': 'HEX:FFFFFF', 'annotations': {'usage': 'water for fire protection'}},
|
|
110
|
+
"BLUE": {'description': 'Blue - mandatory fire safety', 'meaning': 'HEX:005EB8', 'annotations': {'usage': 'mandatory fire safety equipment'}},
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
class MaritimeSignalColorEnum(RichEnum):
|
|
114
|
+
"""
|
|
115
|
+
Maritime signal and navigation colors
|
|
116
|
+
"""
|
|
117
|
+
# Enum members
|
|
118
|
+
PORT_RED = "PORT_RED"
|
|
119
|
+
STARBOARD_GREEN = "STARBOARD_GREEN"
|
|
120
|
+
STERN_WHITE = "STERN_WHITE"
|
|
121
|
+
MASTHEAD_WHITE = "MASTHEAD_WHITE"
|
|
122
|
+
ALL_ROUND_WHITE = "ALL_ROUND_WHITE"
|
|
123
|
+
YELLOW_TOWING = "YELLOW_TOWING"
|
|
124
|
+
BLUE_FLASHING = "BLUE_FLASHING"
|
|
125
|
+
|
|
126
|
+
# Set metadata after class creation
|
|
127
|
+
MaritimeSignalColorEnum._metadata = {
|
|
128
|
+
"PORT_RED": {'description': 'Port (left) red light', 'meaning': 'HEX:FF0000', 'annotations': {'side': 'port (left)', 'wavelength': '625-740 nm'}},
|
|
129
|
+
"STARBOARD_GREEN": {'description': 'Starboard (right) green light', 'meaning': 'HEX:00FF00', 'annotations': {'side': 'starboard (right)', 'wavelength': '500-565 nm'}},
|
|
130
|
+
"STERN_WHITE": {'description': 'Stern white light', 'meaning': 'HEX:FFFFFF', 'annotations': {'position': 'stern (rear)'}},
|
|
131
|
+
"MASTHEAD_WHITE": {'description': 'Masthead white light', 'meaning': 'HEX:FFFFFF', 'annotations': {'position': 'masthead (forward)'}},
|
|
132
|
+
"ALL_ROUND_WHITE": {'description': 'All-round white light', 'meaning': 'HEX:FFFFFF', 'annotations': {'visibility': '360 degrees'}},
|
|
133
|
+
"YELLOW_TOWING": {'description': 'Yellow towing light', 'meaning': 'HEX:FFFF00', 'annotations': {'usage': 'vessel towing'}},
|
|
134
|
+
"BLUE_FLASHING": {'description': 'Blue flashing light', 'meaning': 'HEX:0000FF', 'annotations': {'usage': 'law enforcement vessels', 'pattern': 'flashing'}},
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
class AviationLightColorEnum(RichEnum):
|
|
138
|
+
"""
|
|
139
|
+
Aviation lighting colors
|
|
140
|
+
"""
|
|
141
|
+
# Enum members
|
|
142
|
+
RED_BEACON = "RED_BEACON"
|
|
143
|
+
WHITE_STROBE = "WHITE_STROBE"
|
|
144
|
+
GREEN_NAVIGATION = "GREEN_NAVIGATION"
|
|
145
|
+
RED_NAVIGATION = "RED_NAVIGATION"
|
|
146
|
+
WHITE_NAVIGATION = "WHITE_NAVIGATION"
|
|
147
|
+
BLUE_TAXIWAY = "BLUE_TAXIWAY"
|
|
148
|
+
YELLOW_RUNWAY = "YELLOW_RUNWAY"
|
|
149
|
+
GREEN_THRESHOLD = "GREEN_THRESHOLD"
|
|
150
|
+
RED_RUNWAY_END = "RED_RUNWAY_END"
|
|
151
|
+
|
|
152
|
+
# Set metadata after class creation
|
|
153
|
+
AviationLightColorEnum._metadata = {
|
|
154
|
+
"RED_BEACON": {'description': 'Red obstruction light', 'meaning': 'HEX:FF0000', 'annotations': {'usage': 'obstruction marking', 'intensity': 'high intensity'}},
|
|
155
|
+
"WHITE_STROBE": {'description': 'White anti-collision strobe', 'meaning': 'HEX:FFFFFF', 'annotations': {'usage': 'anti-collision', 'pattern': 'strobe'}},
|
|
156
|
+
"GREEN_NAVIGATION": {'description': 'Green navigation light (right wing)', 'meaning': 'HEX:00FF00', 'annotations': {'position': 'right wing tip'}},
|
|
157
|
+
"RED_NAVIGATION": {'description': 'Red navigation light (left wing)', 'meaning': 'HEX:FF0000', 'annotations': {'position': 'left wing tip'}},
|
|
158
|
+
"WHITE_NAVIGATION": {'description': 'White navigation light (tail)', 'meaning': 'HEX:FFFFFF', 'annotations': {'position': 'tail'}},
|
|
159
|
+
"BLUE_TAXIWAY": {'description': 'Blue taxiway edge lights', 'meaning': 'HEX:0000FF', 'annotations': {'usage': 'taxiway edges'}},
|
|
160
|
+
"YELLOW_RUNWAY": {'description': 'Yellow runway markings', 'meaning': 'HEX:FFFF00', 'annotations': {'usage': 'runway centerline, hold positions'}},
|
|
161
|
+
"GREEN_THRESHOLD": {'description': 'Green runway threshold lights', 'meaning': 'HEX:00FF00', 'annotations': {'usage': 'runway threshold'}},
|
|
162
|
+
"RED_RUNWAY_END": {'description': 'Red runway end lights', 'meaning': 'HEX:FF0000', 'annotations': {'usage': 'runway end'}},
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
class ElectricalWireColorEnum(RichEnum):
|
|
166
|
+
"""
|
|
167
|
+
Electrical wire color codes (US/International)
|
|
168
|
+
"""
|
|
169
|
+
# Enum members
|
|
170
|
+
BLACK_HOT = "BLACK_HOT"
|
|
171
|
+
RED_HOT = "RED_HOT"
|
|
172
|
+
BLUE_HOT = "BLUE_HOT"
|
|
173
|
+
WHITE_NEUTRAL = "WHITE_NEUTRAL"
|
|
174
|
+
GREEN_GROUND = "GREEN_GROUND"
|
|
175
|
+
GREEN_YELLOW_GROUND = "GREEN_YELLOW_GROUND"
|
|
176
|
+
BROWN_LIVE = "BROWN_LIVE"
|
|
177
|
+
BLUE_NEUTRAL = "BLUE_NEUTRAL"
|
|
178
|
+
GRAY_NEUTRAL = "GRAY_NEUTRAL"
|
|
179
|
+
|
|
180
|
+
# Set metadata after class creation
|
|
181
|
+
ElectricalWireColorEnum._metadata = {
|
|
182
|
+
"BLACK_HOT": {'description': 'Black - hot/live wire (US)', 'meaning': 'HEX:000000', 'annotations': {'voltage': '120/240V', 'region': 'North America'}},
|
|
183
|
+
"RED_HOT": {'description': 'Red - hot/live wire (US secondary)', 'meaning': 'HEX:FF0000', 'annotations': {'voltage': '120/240V', 'region': 'North America'}},
|
|
184
|
+
"BLUE_HOT": {'description': 'Blue - hot/live wire (US tertiary)', 'meaning': 'HEX:0000FF', 'annotations': {'voltage': '120/240V', 'region': 'North America'}},
|
|
185
|
+
"WHITE_NEUTRAL": {'description': 'White - neutral wire (US)', 'meaning': 'HEX:FFFFFF', 'annotations': {'function': 'neutral', 'region': 'North America'}},
|
|
186
|
+
"GREEN_GROUND": {'description': 'Green - ground/earth wire', 'meaning': 'HEX:00FF00', 'annotations': {'function': 'ground/earth', 'region': 'universal'}},
|
|
187
|
+
"GREEN_YELLOW_GROUND": {'description': 'Green with yellow stripe - ground/earth (International)', 'annotations': {'function': 'ground/earth', 'region': 'IEC standard', 'pattern': 'green with yellow stripe'}},
|
|
188
|
+
"BROWN_LIVE": {'description': 'Brown - live wire (EU/IEC)', 'meaning': 'HEX:964B00', 'annotations': {'voltage': '230V', 'region': 'Europe/IEC'}},
|
|
189
|
+
"BLUE_NEUTRAL": {'description': 'Blue - neutral wire (EU/IEC)', 'meaning': 'HEX:0000FF', 'annotations': {'function': 'neutral', 'region': 'Europe/IEC'}},
|
|
190
|
+
"GRAY_NEUTRAL": {'description': 'Gray - neutral wire (alternative)', 'meaning': 'HEX:808080', 'annotations': {'function': 'neutral', 'region': 'some installations'}},
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
__all__ = [
|
|
194
|
+
"SafetyColorEnum",
|
|
195
|
+
"TrafficLightColorEnum",
|
|
196
|
+
"HazmatColorEnum",
|
|
197
|
+
"FireSafetyColorEnum",
|
|
198
|
+
"MaritimeSignalColorEnum",
|
|
199
|
+
"AviationLightColorEnum",
|
|
200
|
+
"ElectricalWireColorEnum",
|
|
201
|
+
]
|