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,191 @@
1
+ """
2
+ Nuclear Operations and Reactor States
3
+
4
+ Classifications for nuclear reactor operational states, maintenance activities, licensing stages, and operational procedures. Based on nuclear industry standards and regulatory frameworks.
5
+
6
+ Generated from: energy/nuclear/nuclear_operations.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 ReactorOperatingStateEnum(RichEnum):
15
+ """
16
+ Operational states of nuclear reactors
17
+ """
18
+ # Enum members
19
+ STARTUP = "STARTUP"
20
+ CRITICAL = "CRITICAL"
21
+ POWER_ESCALATION = "POWER_ESCALATION"
22
+ FULL_POWER_OPERATION = "FULL_POWER_OPERATION"
23
+ LOAD_FOLLOWING = "LOAD_FOLLOWING"
24
+ REDUCED_POWER = "REDUCED_POWER"
25
+ HOT_STANDBY = "HOT_STANDBY"
26
+ COLD_SHUTDOWN = "COLD_SHUTDOWN"
27
+ REFUELING = "REFUELING"
28
+ REACTOR_TRIP = "REACTOR_TRIP"
29
+ SCRAM = "SCRAM"
30
+ EMERGENCY_SHUTDOWN = "EMERGENCY_SHUTDOWN"
31
+
32
+ # Set metadata after class creation
33
+ ReactorOperatingStateEnum._metadata = {
34
+ "STARTUP": {'description': 'Reactor transitioning from shutdown to power operation', 'annotations': {'neutron_level': 'increasing', 'control_rod_position': 'withdrawing', 'power_level': 'rising from zero', 'duration': 'hours to days', 'operator_attention': 'high'}},
35
+ "CRITICAL": {'description': 'Reactor achieving self-sustaining chain reaction', 'annotations': {'neutron_multiplication': 'k-effective = 1.0', 'power_level': 'minimal but self-sustaining', 'control_rod_position': 'critical position', 'milestone': 'first criticality achievement'}},
36
+ "POWER_ESCALATION": {'description': 'Reactor increasing power toward full power operation', 'annotations': {'power_level': 'increasing incrementally', 'testing': 'ongoing at each power level', 'duration': 'days to weeks', 'procedures': 'systematic power increases'}},
37
+ "FULL_POWER_OPERATION": {'description': 'Reactor operating at rated thermal power', 'annotations': {'power_level': '100% rated power', 'operation_mode': 'commercial electricity generation', 'duration': 'typically 12-24 months', 'fuel_burnup': 'accumulating'}},
38
+ "LOAD_FOLLOWING": {'description': 'Reactor adjusting power to match electrical demand', 'annotations': {'power_level': 'variable based on demand', 'control_mode': 'automatic load following', 'flexibility': 'grid demand responsive', 'frequency': 'daily power variations'}},
39
+ "REDUCED_POWER": {'description': 'Reactor operating below rated power', 'annotations': {'power_level': '<100% rated power', 'reasons': 'maintenance, grid demand, testing', 'control_rod_position': 'partially inserted'}},
40
+ "HOT_STANDBY": {'description': 'Reactor subcritical but at operating temperature', 'annotations': {'criticality': 'subcritical', 'temperature': 'operating temperature maintained', 'pressure': 'operating pressure maintained', 'ready_time': 'rapid return to power possible'}},
41
+ "COLD_SHUTDOWN": {'description': 'Reactor subcritical and cooled below operating temperature', 'annotations': {'criticality': 'subcritical with margin', 'temperature': '<200°F (93°C) typically', 'refueling': 'possible in this state', 'maintenance': 'major maintenance possible'}},
42
+ "REFUELING": {'description': 'Reactor shut down for fuel replacement', 'annotations': {'reactor_head': 'removed', 'fuel_handling': 'active fuel movement', 'criticality_control': 'strict procedures', 'duration': 'typically 30-60 days'}},
43
+ "REACTOR_TRIP": {'description': 'Rapid automatic shutdown due to safety system actuation', 'annotations': {'shutdown_speed': 'seconds', 'cause': 'safety system activation', 'control_rods': 'fully inserted rapidly', 'investigation': 'cause determination required'}},
44
+ "SCRAM": {'description': 'Emergency rapid shutdown of reactor', 'annotations': {'shutdown_type': 'emergency shutdown', 'control_rod_insertion': 'fastest possible', 'operator_action': 'manual or automatic', 'follow_up': 'immediate safety assessment'}},
45
+ "EMERGENCY_SHUTDOWN": {'description': 'Shutdown due to emergency conditions', 'annotations': {'urgency': 'immediate shutdown required', 'safety_systems': 'may be activated', 'investigation': 'extensive post-event analysis', 'recovery': 'detailed restart procedures'}},
46
+ }
47
+
48
+ class MaintenanceTypeEnum(RichEnum):
49
+ """
50
+ Types of nuclear facility maintenance activities
51
+ """
52
+ # Enum members
53
+ PREVENTIVE_MAINTENANCE = "PREVENTIVE_MAINTENANCE"
54
+ CORRECTIVE_MAINTENANCE = "CORRECTIVE_MAINTENANCE"
55
+ PREDICTIVE_MAINTENANCE = "PREDICTIVE_MAINTENANCE"
56
+ CONDITION_BASED_MAINTENANCE = "CONDITION_BASED_MAINTENANCE"
57
+ REFUELING_OUTAGE_MAINTENANCE = "REFUELING_OUTAGE_MAINTENANCE"
58
+ FORCED_OUTAGE_MAINTENANCE = "FORCED_OUTAGE_MAINTENANCE"
59
+ IN_SERVICE_INSPECTION = "IN_SERVICE_INSPECTION"
60
+ MODIFICATION_WORK = "MODIFICATION_WORK"
61
+
62
+ # Set metadata after class creation
63
+ MaintenanceTypeEnum._metadata = {
64
+ "PREVENTIVE_MAINTENANCE": {'description': 'Scheduled maintenance to prevent equipment failure', 'annotations': {'schedule': 'predetermined intervals', 'purpose': 'prevent failures', 'planning': 'extensive advance planning', 'outage_type': 'planned outage'}},
65
+ "CORRECTIVE_MAINTENANCE": {'description': 'Maintenance to repair failed or degraded equipment', 'annotations': {'trigger': 'equipment failure or degradation', 'urgency': 'varies by safety significance', 'planning': 'may be immediate', 'schedule': 'unplanned'}},
66
+ "PREDICTIVE_MAINTENANCE": {'description': 'Maintenance based on condition monitoring', 'annotations': {'basis': 'condition monitoring data', 'timing': 'based on predicted failure', 'efficiency': 'optimized maintenance timing', 'technology': 'condition monitoring systems'}},
67
+ "CONDITION_BASED_MAINTENANCE": {'description': 'Maintenance triggered by equipment condition assessment', 'annotations': {'assessment': 'continuous condition monitoring', 'trigger': 'condition degradation', 'optimization': 'resource optimization', 'safety': 'maintains safety margins'}},
68
+ "REFUELING_OUTAGE_MAINTENANCE": {'description': 'Major maintenance during scheduled refueling', 'annotations': {'frequency': 'every 12-24 months', 'scope': 'major equipment inspection and repair', 'duration': '30-60 days typical', 'access': 'full plant access available'}},
69
+ "FORCED_OUTAGE_MAINTENANCE": {'description': 'Unplanned maintenance due to equipment failure', 'annotations': {'cause': 'unexpected equipment failure', 'urgency': 'immediate attention required', 'duration': 'variable', 'safety_significance': 'may affect safety systems'}},
70
+ "IN_SERVICE_INSPECTION": {'description': 'Required inspection of safety-related components', 'annotations': {'regulatory_requirement': 'mandated by regulations', 'frequency': 'specified intervals (typically 10 years)', 'scope': 'pressure vessels, piping, supports', 'techniques': 'non-destructive testing'}},
71
+ "MODIFICATION_WORK": {'description': 'Changes to plant design or configuration', 'annotations': {'purpose': 'plant improvement or regulatory compliance', 'approval': 'requires design change approval', 'testing': 'extensive post-modification testing', 'documentation': 'comprehensive documentation updates'}},
72
+ }
73
+
74
+ class LicensingStageEnum(RichEnum):
75
+ """
76
+ Nuclear facility licensing stages
77
+ """
78
+ # Enum members
79
+ SITE_PERMIT = "SITE_PERMIT"
80
+ DESIGN_CERTIFICATION = "DESIGN_CERTIFICATION"
81
+ CONSTRUCTION_PERMIT = "CONSTRUCTION_PERMIT"
82
+ OPERATING_LICENSE = "OPERATING_LICENSE"
83
+ LICENSE_RENEWAL = "LICENSE_RENEWAL"
84
+ COMBINED_LICENSE = "COMBINED_LICENSE"
85
+ DECOMMISSIONING_PLAN = "DECOMMISSIONING_PLAN"
86
+ LICENSE_TERMINATION = "LICENSE_TERMINATION"
87
+
88
+ # Set metadata after class creation
89
+ LicensingStageEnum._metadata = {
90
+ "SITE_PERMIT": {'description': 'Early site permit for nuclear facility', 'annotations': {'scope': 'site suitability evaluation', 'duration': '10-20 years typically', 'flexibility': 'technology-neutral', 'advantage': 'reduced licensing risk'}},
91
+ "DESIGN_CERTIFICATION": {'description': 'Certification of standardized reactor design', 'annotations': {'scope': 'reactor design approval', 'duration': '15-20 years typically', 'advantage': 'reduced construction licensing time', 'standardization': 'enables multiple deployments'}},
92
+ "CONSTRUCTION_PERMIT": {'description': 'Authorization to begin nuclear facility construction', 'annotations': {'authorization': 'construction activities', 'requirements': 'detailed design and safety analysis', 'oversight': 'construction inspection program', 'milestone': 'major licensing milestone'}},
93
+ "OPERATING_LICENSE": {'description': 'Authorization for commercial reactor operation', 'annotations': {'authorization': 'power operation and fuel loading', 'duration': 'initially 40 years', 'renewal': 'possible for additional 20 years', 'testing': 'extensive pre-operational testing'}},
94
+ "LICENSE_RENEWAL": {'description': 'Extension of operating license beyond initial term', 'annotations': {'extension': 'additional 20 years typical', 'review': 'aging management program review', 'basis': 'demonstrated safe operation', 'economics': 'enables continued operation'}},
95
+ "COMBINED_LICENSE": {'description': 'Combined construction and operating license', 'annotations': {'scope': 'construction and operation authorization', 'advantage': 'single licensing process', 'requirements': 'complete design and safety analysis', 'efficiency': 'streamlined licensing approach'}},
96
+ "DECOMMISSIONING_PLAN": {'description': 'Approval of facility decommissioning plan', 'annotations': {'scope': 'facility dismantlement plan', 'funding': 'decommissioning funding assurance', 'schedule': 'decommissioning timeline', 'end_state': 'final site condition'}},
97
+ "LICENSE_TERMINATION": {'description': 'Final termination of nuclear facility license', 'annotations': {'completion': 'decommissioning completion', 'survey': 'final radiological survey', 'release': 'site release for unrestricted use', 'finality': 'end of regulatory oversight'}},
98
+ }
99
+
100
+ class FuelCycleOperationEnum(RichEnum):
101
+ """
102
+ Nuclear fuel cycle operational activities
103
+ """
104
+ # Enum members
105
+ URANIUM_EXPLORATION = "URANIUM_EXPLORATION"
106
+ URANIUM_EXTRACTION = "URANIUM_EXTRACTION"
107
+ URANIUM_MILLING = "URANIUM_MILLING"
108
+ URANIUM_CONVERSION = "URANIUM_CONVERSION"
109
+ URANIUM_ENRICHMENT = "URANIUM_ENRICHMENT"
110
+ FUEL_FABRICATION = "FUEL_FABRICATION"
111
+ REACTOR_FUEL_LOADING = "REACTOR_FUEL_LOADING"
112
+ REACTOR_OPERATION = "REACTOR_OPERATION"
113
+ SPENT_FUEL_DISCHARGE = "SPENT_FUEL_DISCHARGE"
114
+ SPENT_FUEL_STORAGE = "SPENT_FUEL_STORAGE"
115
+ SPENT_FUEL_REPROCESSING = "SPENT_FUEL_REPROCESSING"
116
+ WASTE_CONDITIONING = "WASTE_CONDITIONING"
117
+ WASTE_DISPOSAL = "WASTE_DISPOSAL"
118
+
119
+ # Set metadata after class creation
120
+ FuelCycleOperationEnum._metadata = {
121
+ "URANIUM_EXPLORATION": {'description': 'Search and evaluation of uranium deposits', 'annotations': {'activities': 'geological surveys, drilling, sampling', 'purpose': 'locate economically viable deposits', 'methods': 'airborne surveys, ground exploration'}},
122
+ "URANIUM_EXTRACTION": {'description': 'Mining and extraction of uranium ore', 'annotations': {'methods': 'open pit, underground, in-situ leaching', 'output': 'uranium ore', 'processing': 'crushing and grinding'}},
123
+ "URANIUM_MILLING": {'description': 'Processing of uranium ore to produce yellowcake', 'annotations': {'input': 'uranium ore', 'output': 'uranium concentrate (U3O8)', 'process': 'acid or alkaline leaching'}},
124
+ "URANIUM_CONVERSION": {'description': 'Conversion of yellowcake to uranium hexafluoride', 'annotations': {'input': 'uranium concentrate (U3O8)', 'output': 'uranium hexafluoride (UF6)', 'purpose': 'prepare for enrichment'}},
125
+ "URANIUM_ENRICHMENT": {'description': 'Increase U-235 concentration in uranium', 'annotations': {'input': 'natural uranium (0.711% U-235)', 'output': 'enriched uranium (3-5% typical)', 'waste': 'depleted uranium tails', 'methods': 'gas centrifuge, gaseous diffusion'}},
126
+ "FUEL_FABRICATION": {'description': 'Manufacturing of nuclear fuel assemblies', 'annotations': {'input': 'enriched uranium', 'output': 'fuel assemblies', 'process': 'pellet production, rod assembly'}},
127
+ "REACTOR_FUEL_LOADING": {'description': 'Installation of fresh fuel in reactor', 'annotations': {'frequency': 'every 12-24 months', 'procedure': 'careful criticality control', 'configuration': 'specific loading pattern'}},
128
+ "REACTOR_OPERATION": {'description': 'Power generation and fuel burnup', 'annotations': {'duration': '12-24 months typical cycle', 'burnup': 'fuel depletion over time', 'output': 'electricity and fission products'}},
129
+ "SPENT_FUEL_DISCHARGE": {'description': 'Removal of used fuel from reactor', 'annotations': {'timing': 'end of fuel cycle', 'handling': 'underwater fuel handling', 'destination': 'spent fuel pool storage'}},
130
+ "SPENT_FUEL_STORAGE": {'description': 'Interim storage of discharged fuel', 'annotations': {'cooling': 'decay heat removal', 'duration': '5-100+ years', 'methods': 'pools, dry casks'}},
131
+ "SPENT_FUEL_REPROCESSING": {'description': 'Chemical separation of spent fuel components', 'annotations': {'separation': 'uranium, plutonium, waste', 'recovery': 'recovers usable materials', 'waste': 'high-level waste production'}},
132
+ "WASTE_CONDITIONING": {'description': 'Preparation of waste for storage or disposal', 'annotations': {'treatment': 'solidification, encapsulation', 'purpose': 'stable waste form', 'standards': 'waste acceptance criteria'}},
133
+ "WASTE_DISPOSAL": {'description': 'Permanent disposal of nuclear waste', 'annotations': {'method': 'geological repository', 'isolation': 'long-term containment', 'safety': 'protect public and environment'}},
134
+ }
135
+
136
+ class ReactorControlModeEnum(RichEnum):
137
+ """
138
+ Reactor control and safety system operational modes
139
+ """
140
+ # Enum members
141
+ MANUAL_CONTROL = "MANUAL_CONTROL"
142
+ AUTOMATIC_CONTROL = "AUTOMATIC_CONTROL"
143
+ REACTOR_PROTECTION_SYSTEM = "REACTOR_PROTECTION_SYSTEM"
144
+ ENGINEERED_SAFEGUARDS = "ENGINEERED_SAFEGUARDS"
145
+ EMERGENCY_OPERATING_PROCEDURES = "EMERGENCY_OPERATING_PROCEDURES"
146
+ SEVERE_ACCIDENT_MANAGEMENT = "SEVERE_ACCIDENT_MANAGEMENT"
147
+
148
+ # Set metadata after class creation
149
+ ReactorControlModeEnum._metadata = {
150
+ "MANUAL_CONTROL": {'description': 'Direct operator control of reactor systems', 'annotations': {'operator_role': 'direct manual operation', 'automation': 'minimal automation', 'response_time': 'depends on operator', 'application': 'startup, shutdown, testing'}},
151
+ "AUTOMATIC_CONTROL": {'description': 'Automated reactor control systems', 'annotations': {'automation': 'high level automation', 'operator_role': 'supervisory', 'response_time': 'rapid automatic response', 'application': 'normal power operation'}},
152
+ "REACTOR_PROTECTION_SYSTEM": {'description': 'Safety system monitoring for trip conditions', 'annotations': {'function': 'automatic reactor trip on unsafe conditions', 'redundancy': 'multiple independent channels', 'response_time': 'milliseconds to seconds', 'priority': 'overrides operator actions'}},
153
+ "ENGINEERED_SAFEGUARDS": {'description': 'Safety systems for accident mitigation', 'annotations': {'function': 'mitigate consequences of accidents', 'activation': 'automatic on accident conditions', 'systems': 'emergency core cooling, containment', 'redundancy': 'multiple trains'}},
154
+ "EMERGENCY_OPERATING_PROCEDURES": {'description': 'Operator actions for emergency conditions', 'annotations': {'guidance': 'symptom-based procedures', 'training': 'extensive operator training', 'decision_making': 'structured approach', 'coordination': 'with emergency response'}},
155
+ "SEVERE_ACCIDENT_MANAGEMENT": {'description': 'Procedures for beyond design basis accidents', 'annotations': {'scope': 'core damage mitigation', 'guidance': 'severe accident management guidelines', 'equipment': 'portable emergency equipment', 'coordination': 'multi-unit considerations'}},
156
+ }
157
+
158
+ class OperationalProcedureEnum(RichEnum):
159
+ """
160
+ Standard nuclear facility operational procedures
161
+ """
162
+ # Enum members
163
+ STARTUP_PROCEDURE = "STARTUP_PROCEDURE"
164
+ SHUTDOWN_PROCEDURE = "SHUTDOWN_PROCEDURE"
165
+ REFUELING_PROCEDURE = "REFUELING_PROCEDURE"
166
+ SURVEILLANCE_TESTING = "SURVEILLANCE_TESTING"
167
+ MAINTENANCE_PROCEDURE = "MAINTENANCE_PROCEDURE"
168
+ EMERGENCY_RESPONSE = "EMERGENCY_RESPONSE"
169
+ RADIOLOGICAL_PROTECTION = "RADIOLOGICAL_PROTECTION"
170
+ SECURITY_PROCEDURE = "SECURITY_PROCEDURE"
171
+
172
+ # Set metadata after class creation
173
+ OperationalProcedureEnum._metadata = {
174
+ "STARTUP_PROCEDURE": {'description': 'Systematic procedure for bringing reactor to power', 'annotations': {'phases': 'multiple phases with hold points', 'testing': 'system testing at each phase', 'authorization': 'management authorization required', 'duration': 'hours to days'}},
175
+ "SHUTDOWN_PROCEDURE": {'description': 'Systematic procedure for shutting down reactor', 'annotations': {'control_rod_insertion': 'gradual or rapid', 'cooling': 'controlled cooldown', 'systems': 'systematic system shutdown', 'verification': 'shutdown margin verification'}},
176
+ "REFUELING_PROCEDURE": {'description': 'Procedure for fuel handling and replacement', 'annotations': {'criticality_control': 'strict criticality prevention', 'handling': 'underwater fuel handling', 'documentation': 'detailed records', 'verification': 'independent verification'}},
177
+ "SURVEILLANCE_TESTING": {'description': 'Regular testing of safety systems', 'annotations': {'frequency': 'specified by technical specifications', 'scope': 'functionality verification', 'documentation': 'test result documentation', 'corrective_action': 'if performance degraded'}},
178
+ "MAINTENANCE_PROCEDURE": {'description': 'Systematic approach to equipment maintenance', 'annotations': {'work_control': 'work order control process', 'safety_tagging': 'equipment isolation', 'testing': 'post-maintenance testing', 'documentation': 'maintenance records'}},
179
+ "EMERGENCY_RESPONSE": {'description': 'Response to emergency conditions', 'annotations': {'classification': 'event classification', 'notification': 'offsite notification', 'mitigation': 'protective action implementation', 'coordination': 'with offsite authorities'}},
180
+ "RADIOLOGICAL_PROTECTION": {'description': 'Procedures for radiation protection', 'annotations': {'monitoring': 'radiation monitoring', 'contamination_control': 'contamination prevention', 'dose_control': 'personnel dose limits', 'emergency': 'radiological emergency response'}},
181
+ "SECURITY_PROCEDURE": {'description': 'Physical security and access control procedures', 'annotations': {'access_control': 'personnel access authorization', 'detection': 'intrusion detection systems', 'response': 'security force response', 'coordination': 'with law enforcement'}},
182
+ }
183
+
184
+ __all__ = [
185
+ "ReactorOperatingStateEnum",
186
+ "MaintenanceTypeEnum",
187
+ "LicensingStageEnum",
188
+ "FuelCycleOperationEnum",
189
+ "ReactorControlModeEnum",
190
+ "OperationalProcedureEnum",
191
+ ]
@@ -0,0 +1,188 @@
1
+ """
2
+ Nuclear Regulatory Frameworks Value Sets
3
+
4
+ Value sets for nuclear regulatory bodies, frameworks, and compliance standards
5
+
6
+ Generated from: energy/nuclear/nuclear_regulatory.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 NuclearRegulatoryBodyEnum(RichEnum):
15
+ """
16
+ Nuclear regulatory authorities and international organizations
17
+ """
18
+ # Enum members
19
+ IAEA = "IAEA"
20
+ NRC = "NRC"
21
+ ONR = "ONR"
22
+ ASN = "ASN"
23
+ NISA = "NISA"
24
+ CNSC = "CNSC"
25
+ STUK = "STUK"
26
+ SKI = "SKI"
27
+ ENSI = "ENSI"
28
+ ROSATOM = "ROSATOM"
29
+ CNNC = "CNNC"
30
+ KAERI = "KAERI"
31
+ AERB = "AERB"
32
+
33
+ # Set metadata after class creation
34
+ NuclearRegulatoryBodyEnum._metadata = {
35
+ "IAEA": {'description': 'International Atomic Energy Agency'},
36
+ "NRC": {'description': 'US Nuclear Regulatory Commission'},
37
+ "ONR": {'description': 'Office for Nuclear Regulation (UK)'},
38
+ "ASN": {'description': 'Autorité de sûreté nucléaire (France)'},
39
+ "NISA": {'description': 'Nuclear and Industrial Safety Agency (Japan)'},
40
+ "CNSC": {'description': 'Canadian Nuclear Safety Commission'},
41
+ "STUK": {'description': 'Radiation and Nuclear Safety Authority (Finland)'},
42
+ "SKI": {'description': 'Swedish Nuclear Power Inspectorate'},
43
+ "ENSI": {'description': 'Swiss Federal Nuclear Safety Inspectorate'},
44
+ "ROSATOM": {'description': 'State Atomic Energy Corporation (Russia)'},
45
+ "CNNC": {'description': 'China National Nuclear Corporation'},
46
+ "KAERI": {'description': 'Korea Atomic Energy Research Institute'},
47
+ "AERB": {'description': 'Atomic Energy Regulatory Board (India)'},
48
+ }
49
+
50
+ class RegulatoryFrameworkEnum(RichEnum):
51
+ """
52
+ Nuclear regulatory frameworks and international conventions
53
+ """
54
+ # Enum members
55
+ NPT = "NPT"
56
+ COMPREHENSIVE_SAFEGUARDS = "COMPREHENSIVE_SAFEGUARDS"
57
+ ADDITIONAL_PROTOCOL = "ADDITIONAL_PROTOCOL"
58
+ CONVENTION_NUCLEAR_SAFETY = "CONVENTION_NUCLEAR_SAFETY"
59
+ JOINT_CONVENTION = "JOINT_CONVENTION"
60
+ PARIS_CONVENTION = "PARIS_CONVENTION"
61
+ VIENNA_CONVENTION = "VIENNA_CONVENTION"
62
+ CPPNM = "CPPNM"
63
+ ICSANT = "ICSANT"
64
+ SAFETY_STANDARDS = "SAFETY_STANDARDS"
65
+ SECURITY_SERIES = "SECURITY_SERIES"
66
+
67
+ # Set metadata after class creation
68
+ RegulatoryFrameworkEnum._metadata = {
69
+ "NPT": {'description': 'Nuclear Non-Proliferation Treaty'},
70
+ "COMPREHENSIVE_SAFEGUARDS": {'description': 'IAEA Comprehensive Safeguards Agreements'},
71
+ "ADDITIONAL_PROTOCOL": {'description': 'IAEA Additional Protocol'},
72
+ "CONVENTION_NUCLEAR_SAFETY": {'description': 'Convention on Nuclear Safety'},
73
+ "JOINT_CONVENTION": {'description': 'Joint Convention on the Safety of Spent Fuel Management and Radioactive Waste'},
74
+ "PARIS_CONVENTION": {'description': 'Paris Convention on Third Party Liability in the Field of Nuclear Energy'},
75
+ "VIENNA_CONVENTION": {'description': 'Vienna Convention on Civil Liability for Nuclear Damage'},
76
+ "CPPNM": {'description': 'Convention on the Physical Protection of Nuclear Material'},
77
+ "ICSANT": {'description': 'International Convention for the Suppression of Acts of Nuclear Terrorism'},
78
+ "SAFETY_STANDARDS": {'description': 'IAEA Safety Standards Series'},
79
+ "SECURITY_SERIES": {'description': 'IAEA Nuclear Security Series'},
80
+ }
81
+
82
+ class LicensingStageEnum(RichEnum):
83
+ """
84
+ Stages in nuclear facility licensing process
85
+ """
86
+ # Enum members
87
+ PRE_APPLICATION = "PRE_APPLICATION"
88
+ CONSTRUCTION_PERMIT = "CONSTRUCTION_PERMIT"
89
+ OPERATING_LICENSE = "OPERATING_LICENSE"
90
+ LICENSE_RENEWAL = "LICENSE_RENEWAL"
91
+ POWER_UPRATE = "POWER_UPRATE"
92
+ DECOMMISSIONING_PLAN = "DECOMMISSIONING_PLAN"
93
+ LICENSE_TERMINATION = "LICENSE_TERMINATION"
94
+ DESIGN_CERTIFICATION = "DESIGN_CERTIFICATION"
95
+ EARLY_SITE_PERMIT = "EARLY_SITE_PERMIT"
96
+ COMBINED_LICENSE = "COMBINED_LICENSE"
97
+
98
+ # Set metadata after class creation
99
+ LicensingStageEnum._metadata = {
100
+ "PRE_APPLICATION": {'description': 'Pre-application consultation and preparation'},
101
+ "CONSTRUCTION_PERMIT": {'description': 'Construction permit application and review'},
102
+ "OPERATING_LICENSE": {'description': 'Operating license application and review'},
103
+ "LICENSE_RENEWAL": {'description': 'License renewal application and review'},
104
+ "POWER_UPRATE": {'description': 'Power uprate license amendment'},
105
+ "DECOMMISSIONING_PLAN": {'description': 'Decommissioning plan approval'},
106
+ "LICENSE_TERMINATION": {'description': 'License termination and site release'},
107
+ "DESIGN_CERTIFICATION": {'description': 'Standard design certification'},
108
+ "EARLY_SITE_PERMIT": {'description': 'Early site permit for future construction'},
109
+ "COMBINED_LICENSE": {'description': 'Combined construction and operating license'},
110
+ }
111
+
112
+ class ComplianceStandardEnum(RichEnum):
113
+ """
114
+ Nuclear safety and security compliance standards
115
+ """
116
+ # Enum members
117
+ ISO_14001 = "ISO_14001"
118
+ ISO_9001 = "ISO_9001"
119
+ ASME_NQA_1 = "ASME_NQA_1"
120
+ IEEE_603 = "IEEE_603"
121
+ IEC_61513 = "IEC_61513"
122
+ ANSI_N45_2 = "ANSI_N45_2"
123
+ NUREG_0800 = "NUREG_0800"
124
+ IAEA_GSR = "IAEA_GSR"
125
+ IAEA_NSS = "IAEA_NSS"
126
+ WENRA_RL = "WENRA_RL"
127
+
128
+ # Set metadata after class creation
129
+ ComplianceStandardEnum._metadata = {
130
+ "ISO_14001": {'description': 'Environmental Management Systems'},
131
+ "ISO_9001": {'description': 'Quality Management Systems'},
132
+ "ASME_NQA_1": {'description': 'Quality Assurance Requirements for Nuclear Facility Applications'},
133
+ "IEEE_603": {'description': 'IEEE Standard Criteria for Safety Systems for Nuclear Power Generating Stations'},
134
+ "IEC_61513": {'description': 'Nuclear power plants - Instrumentation and control systems'},
135
+ "ANSI_N45_2": {'description': 'Quality Assurance Program Requirements for Nuclear Power Plants'},
136
+ "NUREG_0800": {'description': 'Standard Review Plan for the Review of Safety Analysis Reports'},
137
+ "IAEA_GSR": {'description': 'IAEA General Safety Requirements'},
138
+ "IAEA_NSS": {'description': 'IAEA Nuclear Security Series'},
139
+ "WENRA_RL": {'description': 'Western European Nuclear Regulators Association Reference Levels'},
140
+ }
141
+
142
+ class InspectionTypeEnum(RichEnum):
143
+ """
144
+ Types of nuclear regulatory inspections and assessments
145
+ """
146
+ # Enum members
147
+ ROUTINE_INSPECTION = "ROUTINE_INSPECTION"
148
+ REACTIVE_INSPECTION = "REACTIVE_INSPECTION"
149
+ TEAM_INSPECTION = "TEAM_INSPECTION"
150
+ TRIENNIAL_INSPECTION = "TRIENNIAL_INSPECTION"
151
+ CONSTRUCTION_INSPECTION = "CONSTRUCTION_INSPECTION"
152
+ PRE_OPERATIONAL_TESTING = "PRE_OPERATIONAL_TESTING"
153
+ STARTUP_TESTING = "STARTUP_TESTING"
154
+ PERIODIC_SAFETY_REVIEW = "PERIODIC_SAFETY_REVIEW"
155
+ INTEGRATED_INSPECTION = "INTEGRATED_INSPECTION"
156
+ FORCE_ON_FORCE = "FORCE_ON_FORCE"
157
+ EMERGENCY_PREPAREDNESS = "EMERGENCY_PREPAREDNESS"
158
+ SPECIAL_INSPECTION = "SPECIAL_INSPECTION"
159
+ VENDOR_INSPECTION = "VENDOR_INSPECTION"
160
+ CYBER_SECURITY = "CYBER_SECURITY"
161
+ DECOMMISSIONING_INSPECTION = "DECOMMISSIONING_INSPECTION"
162
+
163
+ # Set metadata after class creation
164
+ InspectionTypeEnum._metadata = {
165
+ "ROUTINE_INSPECTION": {'description': 'Regularly scheduled inspection activities'},
166
+ "REACTIVE_INSPECTION": {'description': 'Event-driven or follow-up inspections'},
167
+ "TEAM_INSPECTION": {'description': 'Multi-disciplinary team inspections'},
168
+ "TRIENNIAL_INSPECTION": {'description': 'Three-year cycle comprehensive inspections'},
169
+ "CONSTRUCTION_INSPECTION": {'description': 'Construction phase inspections'},
170
+ "PRE_OPERATIONAL_TESTING": {'description': 'Pre-operational testing and commissioning inspections'},
171
+ "STARTUP_TESTING": {'description': 'Initial startup and power ascension inspections'},
172
+ "PERIODIC_SAFETY_REVIEW": {'description': 'Comprehensive periodic safety reviews'},
173
+ "INTEGRATED_INSPECTION": {'description': 'Integrated inspection program'},
174
+ "FORCE_ON_FORCE": {'description': 'Security force-on-force exercises'},
175
+ "EMERGENCY_PREPAREDNESS": {'description': 'Emergency preparedness and response inspections'},
176
+ "SPECIAL_INSPECTION": {'description': 'Special inspections for significant events'},
177
+ "VENDOR_INSPECTION": {'description': 'Nuclear vendor and supplier inspections'},
178
+ "CYBER_SECURITY": {'description': 'Cybersecurity program inspections'},
179
+ "DECOMMISSIONING_INSPECTION": {'description': 'Decommissioning activities inspections'},
180
+ }
181
+
182
+ __all__ = [
183
+ "NuclearRegulatoryBodyEnum",
184
+ "RegulatoryFrameworkEnum",
185
+ "LicensingStageEnum",
186
+ "ComplianceStandardEnum",
187
+ "InspectionTypeEnum",
188
+ ]
@@ -0,0 +1,164 @@
1
+ """
2
+ Nuclear Safety Classifications and Emergency Levels
3
+
4
+ Nuclear safety classifications including INES scale, emergency action levels, nuclear security categories, and safety system classifications. Based on IAEA standards, NRC regulations, and international nuclear safety frameworks.
5
+
6
+ Generated from: energy/nuclear/nuclear_safety.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 INESLevelEnum(RichEnum):
15
+ """
16
+ International Nuclear and Radiological Event Scale (INES) levels
17
+ """
18
+ # Enum members
19
+ LEVEL_0 = "LEVEL_0"
20
+ LEVEL_1 = "LEVEL_1"
21
+ LEVEL_2 = "LEVEL_2"
22
+ LEVEL_3 = "LEVEL_3"
23
+ LEVEL_4 = "LEVEL_4"
24
+ LEVEL_5 = "LEVEL_5"
25
+ LEVEL_6 = "LEVEL_6"
26
+ LEVEL_7 = "LEVEL_7"
27
+
28
+ # Set metadata after class creation
29
+ INESLevelEnum._metadata = {
30
+ "LEVEL_0": {'description': 'Events without safety significance', 'annotations': {'scale_position': 'below scale', 'safety_significance': 'no safety significance', 'public_impact': 'none', 'examples': 'minor technical issues'}},
31
+ "LEVEL_1": {'description': 'Anomaly beyond authorized operating regime', 'annotations': {'scale_position': 'incidents', 'safety_significance': 'minor', 'public_impact': 'none', 'examples': 'minor contamination, minor safety system failure'}},
32
+ "LEVEL_2": {'description': 'Incident with significant defenses remaining', 'annotations': {'scale_position': 'incidents', 'safety_significance': 'minor', 'public_impact': 'none', 'radiation_dose': '<10 mSv to workers'}},
33
+ "LEVEL_3": {'description': 'Serious incident with some defense degradation', 'annotations': {'scale_position': 'incidents', 'safety_significance': 'minor', 'public_impact': 'very minor', 'radiation_dose': '<100 mSv to workers', 'examples': 'near accident, serious contamination'}},
34
+ "LEVEL_4": {'description': 'Accident with minor off-site releases', 'annotations': {'scale_position': 'accidents', 'safety_significance': 'moderate', 'public_impact': 'minor local impact', 'evacuation': 'not required', 'examples': 'partial core damage'}},
35
+ "LEVEL_5": {'description': 'Accident with limited off-site releases', 'annotations': {'scale_position': 'accidents', 'safety_significance': 'moderate to major', 'public_impact': 'limited wider impact', 'protective_actions': 'limited evacuation', 'examples': 'Three Mile Island (1979)'}},
36
+ "LEVEL_6": {'description': 'Serious accident with significant releases', 'annotations': {'scale_position': 'accidents', 'safety_significance': 'major', 'public_impact': 'significant', 'protective_actions': 'extensive evacuation and countermeasures'}},
37
+ "LEVEL_7": {'description': 'Major accident with widespread health and environmental effects', 'annotations': {'scale_position': 'accidents', 'safety_significance': 'major', 'public_impact': 'widespread', 'examples': 'Chernobyl (1986), Fukushima (2011)', 'consequences': 'long-term environmental contamination'}},
38
+ }
39
+
40
+ class EmergencyClassificationEnum(RichEnum):
41
+ """
42
+ Nuclear emergency action levels and classifications
43
+ """
44
+ # Enum members
45
+ NOTIFICATION_UNUSUAL_EVENT = "NOTIFICATION_UNUSUAL_EVENT"
46
+ ALERT = "ALERT"
47
+ SITE_AREA_EMERGENCY = "SITE_AREA_EMERGENCY"
48
+ GENERAL_EMERGENCY = "GENERAL_EMERGENCY"
49
+
50
+ # Set metadata after class creation
51
+ EmergencyClassificationEnum._metadata = {
52
+ "NOTIFICATION_UNUSUAL_EVENT": {'description': 'Events that are in process or have occurred which indicate potential degradation', 'annotations': {'severity': 'lowest emergency level', 'off_site_response': 'notification only', 'public_protective_actions': 'none required', 'emergency_response': 'minimal activation'}, 'aliases': ['NOUE', 'Unusual Event']},
53
+ "ALERT": {'description': 'Events involving actual or potential substantial degradation of plant safety', 'annotations': {'severity': 'second emergency level', 'off_site_response': 'notification and standby', 'public_protective_actions': 'none required, but preparation', 'emergency_response': 'partial activation', 'plant_status': 'substantial safety degradation possible'}},
54
+ "SITE_AREA_EMERGENCY": {'description': 'Events with actual or likely major failures of plant protective systems', 'annotations': {'severity': 'third emergency level', 'off_site_response': 'offsite centers activated', 'public_protective_actions': 'may be required near site', 'emergency_response': 'full activation', 'plant_status': 'major plant safety systems failure'}, 'aliases': ['SAE']},
55
+ "GENERAL_EMERGENCY": {'description': 'Events involving actual or imminent substantial core degradation', 'annotations': {'severity': 'highest emergency level', 'off_site_response': 'full activation', 'public_protective_actions': 'implementation likely', 'emergency_response': 'maximum response', 'plant_status': 'core degradation or containment failure'}},
56
+ }
57
+
58
+ class NuclearSecurityCategoryEnum(RichEnum):
59
+ """
60
+ IAEA nuclear material security categories (INFCIRC/225)
61
+ """
62
+ # Enum members
63
+ CATEGORY_I = "CATEGORY_I"
64
+ CATEGORY_II = "CATEGORY_II"
65
+ CATEGORY_III = "CATEGORY_III"
66
+ CATEGORY_IV = "CATEGORY_IV"
67
+
68
+ # Set metadata after class creation
69
+ NuclearSecurityCategoryEnum._metadata = {
70
+ "CATEGORY_I": {'description': 'Material that can be used directly to manufacture nuclear explosive devices', 'annotations': {'direct_use': True, 'proliferation_risk': 'highest', 'protection_requirements': 'maximum', 'examples': 'HEU ≥20%, Pu ≥2kg, U-233 ≥2kg', 'physical_protection': 'multiple independent physical barriers'}},
71
+ "CATEGORY_II": {'description': 'Material requiring further processing to manufacture nuclear explosive devices', 'annotations': {'direct_use': 'requires processing', 'proliferation_risk': 'moderate', 'protection_requirements': 'substantial', 'examples': 'HEU <20% but >5%, natural uranium >500kg', 'physical_protection': 'significant barriers required'}},
72
+ "CATEGORY_III": {'description': 'Material posing radiation hazard but minimal proliferation risk', 'annotations': {'direct_use': False, 'proliferation_risk': 'low', 'protection_requirements': 'basic', 'examples': 'natural uranium 10-500kg, depleted uranium', 'physical_protection': 'basic measures sufficient'}},
73
+ "CATEGORY_IV": {'description': 'Material with minimal security significance', 'annotations': {'direct_use': False, 'proliferation_risk': 'minimal', 'protection_requirements': 'administrative', 'examples': 'small quantities of natural uranium'}},
74
+ }
75
+
76
+ class SafetySystemClassEnum(RichEnum):
77
+ """
78
+ Nuclear safety system classifications (based on IEEE and ASME standards)
79
+ """
80
+ # Enum members
81
+ CLASS_1E = "CLASS_1E"
82
+ SAFETY_RELATED = "SAFETY_RELATED"
83
+ SAFETY_SIGNIFICANT = "SAFETY_SIGNIFICANT"
84
+ NON_SAFETY_RELATED = "NON_SAFETY_RELATED"
85
+
86
+ # Set metadata after class creation
87
+ SafetySystemClassEnum._metadata = {
88
+ "CLASS_1E": {'description': 'Safety systems essential to emergency reactor shutdown and core cooling', 'annotations': {'safety_function': 'essential to safety', 'redundancy': 'required', 'independence': 'required', 'power_supply': 'independent emergency power', 'seismic_qualification': 'required', 'examples': 'reactor protection system, emergency core cooling'}},
89
+ "SAFETY_RELATED": {'description': 'Systems important to safety but not classified as Class 1E', 'annotations': {'safety_function': 'important to safety', 'quality_requirements': 'enhanced', 'testing_requirements': 'extensive', 'examples': 'some support systems, barriers'}},
90
+ "SAFETY_SIGNIFICANT": {'description': 'Systems with risk significance but not safety-related', 'annotations': {'safety_function': 'risk-significant', 'quality_requirements': 'graded approach', 'risk_informed': 'classification based on risk assessment'}},
91
+ "NON_SAFETY_RELATED": {'description': 'Systems not required for nuclear safety functions', 'annotations': {'safety_function': 'not required for safety', 'quality_requirements': 'commercial standards', 'failure_impact': 'minimal safety impact'}},
92
+ }
93
+
94
+ class ReactorSafetyFunctionEnum(RichEnum):
95
+ """
96
+ Fundamental nuclear reactor safety functions
97
+ """
98
+ # Enum members
99
+ REACTIVITY_CONTROL = "REACTIVITY_CONTROL"
100
+ HEAT_REMOVAL = "HEAT_REMOVAL"
101
+ CONTAINMENT_INTEGRITY = "CONTAINMENT_INTEGRITY"
102
+ CORE_COOLING = "CORE_COOLING"
103
+ SHUTDOWN_CAPABILITY = "SHUTDOWN_CAPABILITY"
104
+
105
+ # Set metadata after class creation
106
+ ReactorSafetyFunctionEnum._metadata = {
107
+ "REACTIVITY_CONTROL": {'description': 'Control of nuclear chain reaction', 'annotations': {'function': 'maintain reactor subcritical when required', 'systems': 'control rods, neutron absorbers', 'failure_consequence': 'criticality accident', 'defense_category': 'prevent accidents'}},
108
+ "HEAT_REMOVAL": {'description': 'Removal of decay heat from reactor core', 'annotations': {'function': 'prevent fuel overheating', 'systems': 'cooling systems, heat exchangers', 'failure_consequence': 'core damage, meltdown', 'defense_category': 'mitigate consequences'}},
109
+ "CONTAINMENT_INTEGRITY": {'description': 'Confinement of radioactive materials', 'annotations': {'function': 'prevent radioactive release', 'systems': 'containment structure, isolation systems', 'failure_consequence': 'environmental contamination', 'defense_category': 'mitigate consequences'}},
110
+ "CORE_COOLING": {'description': 'Maintenance of adequate core cooling', 'annotations': {'function': 'prevent fuel damage', 'systems': 'primary cooling, emergency cooling', 'failure_consequence': 'fuel damage', 'time_sensitivity': 'immediate to long-term'}},
111
+ "SHUTDOWN_CAPABILITY": {'description': 'Ability to shut down and maintain shutdown', 'annotations': {'function': 'terminate power operation safely', 'systems': 'control systems, shutdown systems', 'time_requirement': 'rapid response capability'}},
112
+ }
113
+
114
+ class DefenseInDepthLevelEnum(RichEnum):
115
+ """
116
+ Defense in depth barrier levels for nuclear safety
117
+ """
118
+ # Enum members
119
+ LEVEL_1 = "LEVEL_1"
120
+ LEVEL_2 = "LEVEL_2"
121
+ LEVEL_3 = "LEVEL_3"
122
+ LEVEL_4 = "LEVEL_4"
123
+ LEVEL_5 = "LEVEL_5"
124
+
125
+ # Set metadata after class creation
126
+ DefenseInDepthLevelEnum._metadata = {
127
+ "LEVEL_1": {'description': 'Conservative design and high quality in construction and operation', 'annotations': {'objective': 'prevent deviations from normal operation', 'approach': 'conservative design, quality assurance', 'examples': 'design margins, quality construction'}},
128
+ "LEVEL_2": {'description': 'Control of abnormal operation and detection of failures', 'annotations': {'objective': 'control abnormal operation and failures', 'approach': 'control systems, protection systems', 'examples': 'reactor protection systems, safety systems'}},
129
+ "LEVEL_3": {'description': 'Control of accidents to prevent progression to severe conditions', 'annotations': {'objective': 'control design basis accidents', 'approach': 'engineered safety features', 'examples': 'emergency core cooling, containment systems'}},
130
+ "LEVEL_4": {'description': 'Control of severe accidents including prevention of core melt progression', 'annotations': {'objective': 'control severe accidents', 'approach': 'severe accident management', 'examples': 'cavity flooding, filtered venting'}},
131
+ "LEVEL_5": {'description': 'Mitigation of off-site radiological consequences', 'annotations': {'objective': 'protect public and environment', 'approach': 'emergency planning and response', 'examples': 'evacuation plans, protective actions'}},
132
+ }
133
+
134
+ class RadiationProtectionZoneEnum(RichEnum):
135
+ """
136
+ Radiation protection zone classifications for nuclear facilities
137
+ """
138
+ # Enum members
139
+ EXCLUSION_AREA = "EXCLUSION_AREA"
140
+ LOW_POPULATION_ZONE = "LOW_POPULATION_ZONE"
141
+ EMERGENCY_PLANNING_ZONE = "EMERGENCY_PLANNING_ZONE"
142
+ INGESTION_PATHWAY_ZONE = "INGESTION_PATHWAY_ZONE"
143
+ CONTROLLED_AREA = "CONTROLLED_AREA"
144
+ SUPERVISED_AREA = "SUPERVISED_AREA"
145
+
146
+ # Set metadata after class creation
147
+ RadiationProtectionZoneEnum._metadata = {
148
+ "EXCLUSION_AREA": {'description': 'Area under control of reactor operator with restricted access', 'annotations': {'control': 'reactor operator', 'public_access': 'restricted', 'size': 'typically few hundred meters radius', 'purpose': 'immediate accident response control'}},
149
+ "LOW_POPULATION_ZONE": {'description': 'Area with low population density surrounding exclusion area', 'annotations': {'population_density': 'low', 'evacuation': 'feasible if needed', 'size': 'typically few kilometers radius', 'dose_limit': 'design basis for accident consequences'}},
150
+ "EMERGENCY_PLANNING_ZONE": {'description': 'Area for which emergency planning is conducted', 'annotations': {'planning_required': 'comprehensive emergency plans', 'size': 'typically 10-mile (16 km) radius', 'protective_actions': 'evacuation and sheltering plans'}},
151
+ "INGESTION_PATHWAY_ZONE": {'description': 'Area for controlling food and water contamination', 'annotations': {'contamination_control': 'food and water supplies', 'size': 'typically 50-mile (80 km) radius', 'monitoring': 'food chain monitoring required'}},
152
+ "CONTROLLED_AREA": {'description': 'Area within facility boundary with access control', 'annotations': {'access_control': 'personnel monitoring required', 'radiation_monitoring': 'continuous monitoring', 'training_required': 'radiation safety training'}},
153
+ "SUPERVISED_AREA": {'description': 'Area with potential for radiation exposure but lower than controlled', 'annotations': {'monitoring': 'periodic monitoring', 'access_control': 'limited restrictions', 'training_required': 'basic radiation awareness'}},
154
+ }
155
+
156
+ __all__ = [
157
+ "INESLevelEnum",
158
+ "EmergencyClassificationEnum",
159
+ "NuclearSecurityCategoryEnum",
160
+ "SafetySystemClassEnum",
161
+ "ReactorSafetyFunctionEnum",
162
+ "DefenseInDepthLevelEnum",
163
+ "RadiationProtectionZoneEnum",
164
+ ]