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 @@
|
|
|
1
|
+
"""Auto-generated package."""
|
|
@@ -0,0 +1,294 @@
|
|
|
1
|
+
"""
|
|
2
|
+
File Formats and Protocols Value Sets
|
|
3
|
+
|
|
4
|
+
Value sets for file formats, data formats, and communication protocols commonly used in computing and data exchange.
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
Generated from: computing/file_formats.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 ImageFileFormatEnum(RichEnum):
|
|
16
|
+
"""
|
|
17
|
+
Common image file formats
|
|
18
|
+
"""
|
|
19
|
+
# Enum members
|
|
20
|
+
JPEG = "JPEG"
|
|
21
|
+
PNG = "PNG"
|
|
22
|
+
GIF = "GIF"
|
|
23
|
+
BMP = "BMP"
|
|
24
|
+
TIFF = "TIFF"
|
|
25
|
+
SVG = "SVG"
|
|
26
|
+
WEBP = "WEBP"
|
|
27
|
+
HEIC = "HEIC"
|
|
28
|
+
RAW = "RAW"
|
|
29
|
+
ICO = "ICO"
|
|
30
|
+
|
|
31
|
+
# Set metadata after class creation
|
|
32
|
+
ImageFileFormatEnum._metadata = {
|
|
33
|
+
"JPEG": {'description': 'Joint Photographic Experts Group', 'meaning': 'EDAM:format_3579', 'annotations': {'extension': '.jpg, .jpeg', 'mime_type': 'image/jpeg', 'compression': 'lossy'}, 'aliases': ['JPG']},
|
|
34
|
+
"PNG": {'description': 'Portable Network Graphics', 'meaning': 'EDAM:format_3603', 'annotations': {'extension': '.png', 'mime_type': 'image/png', 'compression': 'lossless'}},
|
|
35
|
+
"GIF": {'description': 'Graphics Interchange Format', 'meaning': 'EDAM:format_3467', 'annotations': {'extension': '.gif', 'mime_type': 'image/gif', 'features': 'animation support'}},
|
|
36
|
+
"BMP": {'description': 'Bitmap Image File', 'meaning': 'EDAM:format_3592', 'annotations': {'extension': '.bmp', 'mime_type': 'image/bmp', 'compression': 'uncompressed'}},
|
|
37
|
+
"TIFF": {'description': 'Tagged Image File Format', 'meaning': 'EDAM:format_3591', 'annotations': {'extension': '.tif, .tiff', 'mime_type': 'image/tiff', 'use': 'professional photography, scanning'}},
|
|
38
|
+
"SVG": {'description': 'Scalable Vector Graphics', 'meaning': 'EDAM:format_3604', 'annotations': {'extension': '.svg', 'mime_type': 'image/svg+xml', 'type': 'vector'}},
|
|
39
|
+
"WEBP": {'description': 'WebP image format', 'annotations': {'extension': '.webp', 'mime_type': 'image/webp', 'compression': 'lossy and lossless'}},
|
|
40
|
+
"HEIC": {'description': 'High Efficiency Image Container', 'annotations': {'extension': '.heic, .heif', 'mime_type': 'image/heic', 'use': 'Apple devices'}},
|
|
41
|
+
"RAW": {'description': 'Raw image format', 'annotations': {'extension': '.raw, .cr2, .nef, .arw', 'type': 'unprocessed sensor data'}},
|
|
42
|
+
"ICO": {'description': 'Icon file format', 'annotations': {'extension': '.ico', 'mime_type': 'image/x-icon', 'use': 'favicons, app icons'}},
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
class DocumentFormatEnum(RichEnum):
|
|
46
|
+
"""
|
|
47
|
+
Document and text file formats
|
|
48
|
+
"""
|
|
49
|
+
# Enum members
|
|
50
|
+
PDF = "PDF"
|
|
51
|
+
DOCX = "DOCX"
|
|
52
|
+
DOC = "DOC"
|
|
53
|
+
TXT = "TXT"
|
|
54
|
+
RTF = "RTF"
|
|
55
|
+
ODT = "ODT"
|
|
56
|
+
LATEX = "LATEX"
|
|
57
|
+
MARKDOWN = "MARKDOWN"
|
|
58
|
+
HTML = "HTML"
|
|
59
|
+
XML = "XML"
|
|
60
|
+
EPUB = "EPUB"
|
|
61
|
+
|
|
62
|
+
# Set metadata after class creation
|
|
63
|
+
DocumentFormatEnum._metadata = {
|
|
64
|
+
"PDF": {'description': 'Portable Document Format', 'meaning': 'EDAM:format_3508', 'annotations': {'extension': '.pdf', 'mime_type': 'application/pdf', 'creator': 'Adobe'}},
|
|
65
|
+
"DOCX": {'description': 'Microsoft Word Open XML', 'annotations': {'extension': '.docx', 'mime_type': 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', 'application': 'Microsoft Word'}},
|
|
66
|
+
"DOC": {'description': 'Microsoft Word legacy format', 'annotations': {'extension': '.doc', 'mime_type': 'application/msword', 'application': 'Microsoft Word (legacy)'}},
|
|
67
|
+
"TXT": {'description': 'Plain text file', 'meaning': 'EDAM:format_1964', 'annotations': {'extension': '.txt', 'mime_type': 'text/plain', 'encoding': 'UTF-8, ASCII'}, 'aliases': ['plain text format (unformatted)']},
|
|
68
|
+
"RTF": {'description': 'Rich Text Format', 'annotations': {'extension': '.rtf', 'mime_type': 'application/rtf'}},
|
|
69
|
+
"ODT": {'description': 'OpenDocument Text', 'annotations': {'extension': '.odt', 'mime_type': 'application/vnd.oasis.opendocument.text', 'application': 'LibreOffice, OpenOffice'}},
|
|
70
|
+
"LATEX": {'description': 'LaTeX document', 'meaning': 'EDAM:format_3817', 'annotations': {'extension': '.tex', 'mime_type': 'application/x-latex', 'use': 'scientific documents'}, 'aliases': ['latex', 'LaTeX']},
|
|
71
|
+
"MARKDOWN": {'description': 'Markdown formatted text', 'annotations': {'extension': '.md, .markdown', 'mime_type': 'text/markdown'}},
|
|
72
|
+
"HTML": {'description': 'HyperText Markup Language', 'meaning': 'EDAM:format_2331', 'annotations': {'extension': '.html, .htm', 'mime_type': 'text/html'}},
|
|
73
|
+
"XML": {'description': 'Extensible Markup Language', 'meaning': 'EDAM:format_2332', 'annotations': {'extension': '.xml', 'mime_type': 'application/xml'}},
|
|
74
|
+
"EPUB": {'description': 'Electronic Publication', 'annotations': {'extension': '.epub', 'mime_type': 'application/epub+zip', 'use': 'e-books'}},
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
class DataFormatEnum(RichEnum):
|
|
78
|
+
"""
|
|
79
|
+
Structured data file formats
|
|
80
|
+
"""
|
|
81
|
+
# Enum members
|
|
82
|
+
JSON = "JSON"
|
|
83
|
+
CSV = "CSV"
|
|
84
|
+
TSV = "TSV"
|
|
85
|
+
YAML = "YAML"
|
|
86
|
+
TOML = "TOML"
|
|
87
|
+
XLSX = "XLSX"
|
|
88
|
+
XLS = "XLS"
|
|
89
|
+
ODS = "ODS"
|
|
90
|
+
PARQUET = "PARQUET"
|
|
91
|
+
AVRO = "AVRO"
|
|
92
|
+
HDF5 = "HDF5"
|
|
93
|
+
NETCDF = "NETCDF"
|
|
94
|
+
SQLITE = "SQLITE"
|
|
95
|
+
|
|
96
|
+
# Set metadata after class creation
|
|
97
|
+
DataFormatEnum._metadata = {
|
|
98
|
+
"JSON": {'description': 'JavaScript Object Notation', 'meaning': 'EDAM:format_3464', 'annotations': {'extension': '.json', 'mime_type': 'application/json', 'type': 'text-based'}},
|
|
99
|
+
"CSV": {'description': 'Comma-Separated Values', 'meaning': 'EDAM:format_3752', 'annotations': {'extension': '.csv', 'mime_type': 'text/csv', 'delimiter': 'comma'}},
|
|
100
|
+
"TSV": {'description': 'Tab-Separated Values', 'meaning': 'EDAM:format_3475', 'annotations': {'extension': '.tsv, .tab', 'mime_type': 'text/tab-separated-values', 'delimiter': 'tab'}},
|
|
101
|
+
"YAML": {'description': "YAML Ain't Markup Language", 'meaning': 'EDAM:format_3750', 'annotations': {'extension': '.yaml, .yml', 'mime_type': 'application/x-yaml'}},
|
|
102
|
+
"TOML": {'description': "Tom's Obvious Minimal Language", 'annotations': {'extension': '.toml', 'mime_type': 'application/toml', 'use': 'configuration files'}},
|
|
103
|
+
"XLSX": {'description': 'Microsoft Excel Open XML', 'annotations': {'extension': '.xlsx', 'mime_type': 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'}},
|
|
104
|
+
"XLS": {'description': 'Microsoft Excel legacy format', 'annotations': {'extension': '.xls', 'mime_type': 'application/vnd.ms-excel'}},
|
|
105
|
+
"ODS": {'description': 'OpenDocument Spreadsheet', 'annotations': {'extension': '.ods', 'mime_type': 'application/vnd.oasis.opendocument.spreadsheet'}},
|
|
106
|
+
"PARQUET": {'description': 'Apache Parquet columnar format', 'annotations': {'extension': '.parquet', 'mime_type': 'application/parquet', 'type': 'columnar storage'}},
|
|
107
|
+
"AVRO": {'description': 'Apache Avro data serialization', 'annotations': {'extension': '.avro', 'mime_type': 'application/avro', 'features': 'schema evolution'}},
|
|
108
|
+
"HDF5": {'description': 'Hierarchical Data Format version 5', 'meaning': 'EDAM:format_3590', 'annotations': {'extension': '.h5, .hdf5', 'mime_type': 'application/x-hdf', 'use': 'scientific data'}},
|
|
109
|
+
"NETCDF": {'description': 'Network Common Data Form', 'meaning': 'EDAM:format_3650', 'annotations': {'extension': '.nc, .nc4', 'mime_type': 'application/x-netcdf', 'use': 'array-oriented scientific data'}},
|
|
110
|
+
"SQLITE": {'description': 'SQLite database', 'annotations': {'extension': '.db, .sqlite, .sqlite3', 'mime_type': 'application/x-sqlite3', 'type': 'embedded database'}},
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
class ArchiveFormatEnum(RichEnum):
|
|
114
|
+
"""
|
|
115
|
+
Archive and compression formats
|
|
116
|
+
"""
|
|
117
|
+
# Enum members
|
|
118
|
+
ZIP = "ZIP"
|
|
119
|
+
TAR = "TAR"
|
|
120
|
+
GZIP = "GZIP"
|
|
121
|
+
TAR_GZ = "TAR_GZ"
|
|
122
|
+
BZIP2 = "BZIP2"
|
|
123
|
+
TAR_BZ2 = "TAR_BZ2"
|
|
124
|
+
XZ = "XZ"
|
|
125
|
+
TAR_XZ = "TAR_XZ"
|
|
126
|
+
SEVEN_ZIP = "SEVEN_ZIP"
|
|
127
|
+
RAR = "RAR"
|
|
128
|
+
|
|
129
|
+
# Set metadata after class creation
|
|
130
|
+
ArchiveFormatEnum._metadata = {
|
|
131
|
+
"ZIP": {'description': 'ZIP archive', 'annotations': {'extension': '.zip', 'mime_type': 'application/zip', 'compression': 'DEFLATE'}},
|
|
132
|
+
"TAR": {'description': 'Tape Archive', 'annotations': {'extension': '.tar', 'mime_type': 'application/x-tar', 'compression': 'none (archive only)'}},
|
|
133
|
+
"GZIP": {'description': 'GNU zip', 'annotations': {'extension': '.gz', 'mime_type': 'application/gzip', 'compression': 'DEFLATE'}},
|
|
134
|
+
"TAR_GZ": {'description': 'Gzipped tar archive', 'annotations': {'extension': '.tar.gz, .tgz', 'mime_type': 'application/x-gtar', 'compression': 'tar + gzip'}},
|
|
135
|
+
"BZIP2": {'description': 'Bzip2 compression', 'annotations': {'extension': '.bz2', 'mime_type': 'application/x-bzip2', 'compression': 'Burrows-Wheeler'}},
|
|
136
|
+
"TAR_BZ2": {'description': 'Bzip2 compressed tar archive', 'annotations': {'extension': '.tar.bz2, .tbz2', 'mime_type': 'application/x-bzip2'}},
|
|
137
|
+
"XZ": {'description': 'XZ compression', 'annotations': {'extension': '.xz', 'mime_type': 'application/x-xz', 'compression': 'LZMA2'}},
|
|
138
|
+
"TAR_XZ": {'description': 'XZ compressed tar archive', 'annotations': {'extension': '.tar.xz, .txz', 'mime_type': 'application/x-xz'}},
|
|
139
|
+
"SEVEN_ZIP": {'description': '7-Zip archive', 'annotations': {'extension': '.7z', 'mime_type': 'application/x-7z-compressed', 'compression': 'LZMA'}},
|
|
140
|
+
"RAR": {'description': 'RAR archive', 'annotations': {'extension': '.rar', 'mime_type': 'application/vnd.rar', 'proprietary': 'true'}},
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
class VideoFormatEnum(RichEnum):
|
|
144
|
+
"""
|
|
145
|
+
Video file formats
|
|
146
|
+
"""
|
|
147
|
+
# Enum members
|
|
148
|
+
MP4 = "MP4"
|
|
149
|
+
AVI = "AVI"
|
|
150
|
+
MOV = "MOV"
|
|
151
|
+
MKV = "MKV"
|
|
152
|
+
WEBM = "WEBM"
|
|
153
|
+
FLV = "FLV"
|
|
154
|
+
WMV = "WMV"
|
|
155
|
+
MPEG = "MPEG"
|
|
156
|
+
|
|
157
|
+
# Set metadata after class creation
|
|
158
|
+
VideoFormatEnum._metadata = {
|
|
159
|
+
"MP4": {'description': 'MPEG-4 Part 14', 'annotations': {'extension': '.mp4', 'mime_type': 'video/mp4', 'codec': 'H.264, H.265'}},
|
|
160
|
+
"AVI": {'description': 'Audio Video Interleave', 'annotations': {'extension': '.avi', 'mime_type': 'video/x-msvideo', 'creator': 'Microsoft'}},
|
|
161
|
+
"MOV": {'description': 'QuickTime Movie', 'annotations': {'extension': '.mov', 'mime_type': 'video/quicktime', 'creator': 'Apple'}},
|
|
162
|
+
"MKV": {'description': 'Matroska Video', 'annotations': {'extension': '.mkv', 'mime_type': 'video/x-matroska', 'features': 'multiple tracks'}},
|
|
163
|
+
"WEBM": {'description': 'WebM video', 'annotations': {'extension': '.webm', 'mime_type': 'video/webm', 'codec': 'VP8, VP9'}},
|
|
164
|
+
"FLV": {'description': 'Flash Video', 'annotations': {'extension': '.flv', 'mime_type': 'video/x-flv', 'status': 'legacy'}},
|
|
165
|
+
"WMV": {'description': 'Windows Media Video', 'annotations': {'extension': '.wmv', 'mime_type': 'video/x-ms-wmv', 'creator': 'Microsoft'}},
|
|
166
|
+
"MPEG": {'description': 'Moving Picture Experts Group', 'annotations': {'extension': '.mpeg, .mpg', 'mime_type': 'video/mpeg'}},
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
class AudioFormatEnum(RichEnum):
|
|
170
|
+
"""
|
|
171
|
+
Audio file formats
|
|
172
|
+
"""
|
|
173
|
+
# Enum members
|
|
174
|
+
MP3 = "MP3"
|
|
175
|
+
WAV = "WAV"
|
|
176
|
+
FLAC = "FLAC"
|
|
177
|
+
AAC = "AAC"
|
|
178
|
+
OGG = "OGG"
|
|
179
|
+
M4A = "M4A"
|
|
180
|
+
WMA = "WMA"
|
|
181
|
+
OPUS = "OPUS"
|
|
182
|
+
AIFF = "AIFF"
|
|
183
|
+
|
|
184
|
+
# Set metadata after class creation
|
|
185
|
+
AudioFormatEnum._metadata = {
|
|
186
|
+
"MP3": {'description': 'MPEG Audio Layer 3', 'annotations': {'extension': '.mp3', 'mime_type': 'audio/mpeg', 'compression': 'lossy'}},
|
|
187
|
+
"WAV": {'description': 'Waveform Audio File Format', 'annotations': {'extension': '.wav', 'mime_type': 'audio/wav', 'compression': 'uncompressed'}},
|
|
188
|
+
"FLAC": {'description': 'Free Lossless Audio Codec', 'annotations': {'extension': '.flac', 'mime_type': 'audio/flac', 'compression': 'lossless'}},
|
|
189
|
+
"AAC": {'description': 'Advanced Audio Coding', 'annotations': {'extension': '.aac', 'mime_type': 'audio/aac', 'compression': 'lossy'}},
|
|
190
|
+
"OGG": {'description': 'Ogg Vorbis', 'annotations': {'extension': '.ogg', 'mime_type': 'audio/ogg', 'compression': 'lossy'}},
|
|
191
|
+
"M4A": {'description': 'MPEG-4 Audio', 'annotations': {'extension': '.m4a', 'mime_type': 'audio/mp4', 'compression': 'lossy or lossless'}},
|
|
192
|
+
"WMA": {'description': 'Windows Media Audio', 'annotations': {'extension': '.wma', 'mime_type': 'audio/x-ms-wma', 'creator': 'Microsoft'}},
|
|
193
|
+
"OPUS": {'description': 'Opus Interactive Audio Codec', 'annotations': {'extension': '.opus', 'mime_type': 'audio/opus', 'use': 'streaming, VoIP'}},
|
|
194
|
+
"AIFF": {'description': 'Audio Interchange File Format', 'annotations': {'extension': '.aiff, .aif', 'mime_type': 'audio/aiff', 'creator': 'Apple'}},
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
class ProgrammingLanguageFileEnum(RichEnum):
|
|
198
|
+
"""
|
|
199
|
+
Programming language source file extensions
|
|
200
|
+
"""
|
|
201
|
+
# Enum members
|
|
202
|
+
PYTHON = "PYTHON"
|
|
203
|
+
JAVASCRIPT = "JAVASCRIPT"
|
|
204
|
+
TYPESCRIPT = "TYPESCRIPT"
|
|
205
|
+
JAVA = "JAVA"
|
|
206
|
+
C = "C"
|
|
207
|
+
CPP = "CPP"
|
|
208
|
+
C_SHARP = "C_SHARP"
|
|
209
|
+
GO = "GO"
|
|
210
|
+
RUST = "RUST"
|
|
211
|
+
RUBY = "RUBY"
|
|
212
|
+
PHP = "PHP"
|
|
213
|
+
SWIFT = "SWIFT"
|
|
214
|
+
KOTLIN = "KOTLIN"
|
|
215
|
+
R = "R"
|
|
216
|
+
MATLAB = "MATLAB"
|
|
217
|
+
JULIA = "JULIA"
|
|
218
|
+
SHELL = "SHELL"
|
|
219
|
+
|
|
220
|
+
# Set metadata after class creation
|
|
221
|
+
ProgrammingLanguageFileEnum._metadata = {
|
|
222
|
+
"PYTHON": {'description': 'Python source file', 'annotations': {'extension': '.py', 'mime_type': 'text/x-python'}},
|
|
223
|
+
"JAVASCRIPT": {'description': 'JavaScript source file', 'annotations': {'extension': '.js', 'mime_type': 'text/javascript'}},
|
|
224
|
+
"TYPESCRIPT": {'description': 'TypeScript source file', 'annotations': {'extension': '.ts', 'mime_type': 'text/typescript'}},
|
|
225
|
+
"JAVA": {'description': 'Java source file', 'annotations': {'extension': '.java', 'mime_type': 'text/x-java-source'}},
|
|
226
|
+
"C": {'description': 'C source file', 'annotations': {'extension': '.c', 'mime_type': 'text/x-c'}},
|
|
227
|
+
"CPP": {'description': 'C++ source file', 'annotations': {'extension': '.cpp, .cc, .cxx', 'mime_type': 'text/x-c++'}},
|
|
228
|
+
"C_SHARP": {'description': 'C# source file', 'annotations': {'extension': '.cs', 'mime_type': 'text/x-csharp'}},
|
|
229
|
+
"GO": {'description': 'Go source file', 'annotations': {'extension': '.go', 'mime_type': 'text/x-go'}},
|
|
230
|
+
"RUST": {'description': 'Rust source file', 'annotations': {'extension': '.rs', 'mime_type': 'text/x-rust'}},
|
|
231
|
+
"RUBY": {'description': 'Ruby source file', 'annotations': {'extension': '.rb', 'mime_type': 'text/x-ruby'}},
|
|
232
|
+
"PHP": {'description': 'PHP source file', 'annotations': {'extension': '.php', 'mime_type': 'text/x-php'}},
|
|
233
|
+
"SWIFT": {'description': 'Swift source file', 'annotations': {'extension': '.swift', 'mime_type': 'text/x-swift'}},
|
|
234
|
+
"KOTLIN": {'description': 'Kotlin source file', 'annotations': {'extension': '.kt', 'mime_type': 'text/x-kotlin'}},
|
|
235
|
+
"R": {'description': 'R source file', 'annotations': {'extension': '.r, .R', 'mime_type': 'text/x-r'}},
|
|
236
|
+
"MATLAB": {'description': 'MATLAB source file', 'annotations': {'extension': '.m', 'mime_type': 'text/x-matlab'}},
|
|
237
|
+
"JULIA": {'description': 'Julia source file', 'annotations': {'extension': '.jl', 'mime_type': 'text/x-julia'}},
|
|
238
|
+
"SHELL": {'description': 'Shell script', 'annotations': {'extension': '.sh, .bash', 'mime_type': 'text/x-shellscript'}},
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
class NetworkProtocolEnum(RichEnum):
|
|
242
|
+
"""
|
|
243
|
+
Network communication protocols
|
|
244
|
+
"""
|
|
245
|
+
# Enum members
|
|
246
|
+
HTTP = "HTTP"
|
|
247
|
+
HTTPS = "HTTPS"
|
|
248
|
+
FTP = "FTP"
|
|
249
|
+
SFTP = "SFTP"
|
|
250
|
+
SSH = "SSH"
|
|
251
|
+
TELNET = "TELNET"
|
|
252
|
+
SMTP = "SMTP"
|
|
253
|
+
POP3 = "POP3"
|
|
254
|
+
IMAP = "IMAP"
|
|
255
|
+
DNS = "DNS"
|
|
256
|
+
DHCP = "DHCP"
|
|
257
|
+
TCP = "TCP"
|
|
258
|
+
UDP = "UDP"
|
|
259
|
+
WEBSOCKET = "WEBSOCKET"
|
|
260
|
+
MQTT = "MQTT"
|
|
261
|
+
AMQP = "AMQP"
|
|
262
|
+
GRPC = "GRPC"
|
|
263
|
+
|
|
264
|
+
# Set metadata after class creation
|
|
265
|
+
NetworkProtocolEnum._metadata = {
|
|
266
|
+
"HTTP": {'description': 'Hypertext Transfer Protocol', 'annotations': {'port': '80', 'layer': 'application', 'version': '1.0, 1.1, 2, 3'}},
|
|
267
|
+
"HTTPS": {'description': 'HTTP Secure', 'annotations': {'port': '443', 'layer': 'application', 'encryption': 'TLS/SSL'}},
|
|
268
|
+
"FTP": {'description': 'File Transfer Protocol', 'annotations': {'port': '21', 'layer': 'application', 'use': 'file transfer'}},
|
|
269
|
+
"SFTP": {'description': 'SSH File Transfer Protocol', 'annotations': {'port': '22', 'layer': 'application', 'encryption': 'SSH'}},
|
|
270
|
+
"SSH": {'description': 'Secure Shell', 'annotations': {'port': '22', 'layer': 'application', 'use': 'secure remote access'}},
|
|
271
|
+
"TELNET": {'description': 'Telnet protocol', 'annotations': {'port': '23', 'layer': 'application', 'security': 'unencrypted'}},
|
|
272
|
+
"SMTP": {'description': 'Simple Mail Transfer Protocol', 'annotations': {'port': '25, 587', 'layer': 'application', 'use': 'email sending'}},
|
|
273
|
+
"POP3": {'description': 'Post Office Protocol version 3', 'annotations': {'port': '110, 995', 'layer': 'application', 'use': 'email retrieval'}},
|
|
274
|
+
"IMAP": {'description': 'Internet Message Access Protocol', 'annotations': {'port': '143, 993', 'layer': 'application', 'use': 'email access'}},
|
|
275
|
+
"DNS": {'description': 'Domain Name System', 'annotations': {'port': '53', 'layer': 'application', 'use': 'name resolution'}},
|
|
276
|
+
"DHCP": {'description': 'Dynamic Host Configuration Protocol', 'annotations': {'port': '67, 68', 'layer': 'application', 'use': 'IP assignment'}},
|
|
277
|
+
"TCP": {'description': 'Transmission Control Protocol', 'annotations': {'layer': 'transport', 'type': 'connection-oriented'}},
|
|
278
|
+
"UDP": {'description': 'User Datagram Protocol', 'annotations': {'layer': 'transport', 'type': 'connectionless'}},
|
|
279
|
+
"WEBSOCKET": {'description': 'WebSocket protocol', 'annotations': {'port': '80, 443', 'layer': 'application', 'use': 'bidirectional communication'}},
|
|
280
|
+
"MQTT": {'description': 'Message Queuing Telemetry Transport', 'annotations': {'port': '1883, 8883', 'layer': 'application', 'use': 'IoT messaging'}},
|
|
281
|
+
"AMQP": {'description': 'Advanced Message Queuing Protocol', 'annotations': {'port': '5672', 'layer': 'application', 'use': 'message queuing'}},
|
|
282
|
+
"GRPC": {'description': 'gRPC Remote Procedure Call', 'annotations': {'transport': 'HTTP/2', 'use': 'RPC framework'}},
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
__all__ = [
|
|
286
|
+
"ImageFileFormatEnum",
|
|
287
|
+
"DocumentFormatEnum",
|
|
288
|
+
"DataFormatEnum",
|
|
289
|
+
"ArchiveFormatEnum",
|
|
290
|
+
"VideoFormatEnum",
|
|
291
|
+
"AudioFormatEnum",
|
|
292
|
+
"ProgrammingLanguageFileEnum",
|
|
293
|
+
"NetworkProtocolEnum",
|
|
294
|
+
]
|
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Software and Technology Maturity Levels
|
|
3
|
+
|
|
4
|
+
Value sets for assessing maturity levels of software, technology, and standards across different frameworks and domains.
|
|
5
|
+
|
|
6
|
+
Generated from: computing/maturity_levels.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 TechnologyReadinessLevel(RichEnum):
|
|
15
|
+
"""
|
|
16
|
+
NASA's Technology Readiness Level scale for assessing the maturity of technologies from basic research through operational deployment
|
|
17
|
+
"""
|
|
18
|
+
# Enum members
|
|
19
|
+
TRL_1 = "TRL_1"
|
|
20
|
+
TRL_2 = "TRL_2"
|
|
21
|
+
TRL_3 = "TRL_3"
|
|
22
|
+
TRL_4 = "TRL_4"
|
|
23
|
+
TRL_5 = "TRL_5"
|
|
24
|
+
TRL_6 = "TRL_6"
|
|
25
|
+
TRL_7 = "TRL_7"
|
|
26
|
+
TRL_8 = "TRL_8"
|
|
27
|
+
TRL_9 = "TRL_9"
|
|
28
|
+
|
|
29
|
+
# Set metadata after class creation
|
|
30
|
+
TechnologyReadinessLevel._metadata = {
|
|
31
|
+
"TRL_1": {'description': 'Basic principles observed and reported'},
|
|
32
|
+
"TRL_2": {'description': 'Technology concept and/or application formulated'},
|
|
33
|
+
"TRL_3": {'description': 'Analytical and experimental critical function and/or characteristic proof of concept'},
|
|
34
|
+
"TRL_4": {'description': 'Component and/or breadboard validation in laboratory environment'},
|
|
35
|
+
"TRL_5": {'description': 'Component and/or breadboard validation in relevant environment'},
|
|
36
|
+
"TRL_6": {'description': 'System/subsystem model or prototype demonstration in a relevant environment'},
|
|
37
|
+
"TRL_7": {'description': 'System prototype demonstration in an operational environment'},
|
|
38
|
+
"TRL_8": {'description': 'Actual system completed and qualified through test and demonstration'},
|
|
39
|
+
"TRL_9": {'description': 'Actual system proven through successful mission operations'},
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
class SoftwareMaturityLevel(RichEnum):
|
|
43
|
+
"""
|
|
44
|
+
General software maturity assessment levels
|
|
45
|
+
"""
|
|
46
|
+
# Enum members
|
|
47
|
+
ALPHA = "ALPHA"
|
|
48
|
+
BETA = "BETA"
|
|
49
|
+
RELEASE_CANDIDATE = "RELEASE_CANDIDATE"
|
|
50
|
+
STABLE = "STABLE"
|
|
51
|
+
MATURE = "MATURE"
|
|
52
|
+
LEGACY = "LEGACY"
|
|
53
|
+
DEPRECATED = "DEPRECATED"
|
|
54
|
+
OBSOLETE = "OBSOLETE"
|
|
55
|
+
|
|
56
|
+
# Set metadata after class creation
|
|
57
|
+
SoftwareMaturityLevel._metadata = {
|
|
58
|
+
"ALPHA": {'description': 'Early development stage with basic functionality, may be unstable'},
|
|
59
|
+
"BETA": {'description': 'Feature-complete but may contain bugs, ready for testing'},
|
|
60
|
+
"RELEASE_CANDIDATE": {'description': 'Stable version ready for final testing before release'},
|
|
61
|
+
"STABLE": {'description': 'Production-ready with proven stability and reliability'},
|
|
62
|
+
"MATURE": {'description': 'Well-established with extensive usage and proven track record'},
|
|
63
|
+
"LEGACY": {'description': 'Older version still in use but no longer actively developed'},
|
|
64
|
+
"DEPRECATED": {'description': 'No longer recommended for use, superseded by newer versions'},
|
|
65
|
+
"OBSOLETE": {'description': 'No longer supported or maintained'},
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
class CapabilityMaturityLevel(RichEnum):
|
|
69
|
+
"""
|
|
70
|
+
CMMI levels for assessing organizational process maturity in software development
|
|
71
|
+
"""
|
|
72
|
+
# Enum members
|
|
73
|
+
LEVEL_1 = "LEVEL_1"
|
|
74
|
+
LEVEL_2 = "LEVEL_2"
|
|
75
|
+
LEVEL_3 = "LEVEL_3"
|
|
76
|
+
LEVEL_4 = "LEVEL_4"
|
|
77
|
+
LEVEL_5 = "LEVEL_5"
|
|
78
|
+
|
|
79
|
+
# Set metadata after class creation
|
|
80
|
+
CapabilityMaturityLevel._metadata = {
|
|
81
|
+
"LEVEL_1": {'description': 'Initial - Processes are unpredictable, poorly controlled, and reactive'},
|
|
82
|
+
"LEVEL_2": {'description': 'Managed - Processes are characterized for projects and reactive'},
|
|
83
|
+
"LEVEL_3": {'description': 'Defined - Processes are characterized for the organization and proactive'},
|
|
84
|
+
"LEVEL_4": {'description': 'Quantitatively Managed - Processes are measured and controlled'},
|
|
85
|
+
"LEVEL_5": {'description': 'Optimizing - Focus on continuous process improvement'},
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
class StandardsMaturityLevel(RichEnum):
|
|
89
|
+
"""
|
|
90
|
+
Maturity levels for standards and specifications
|
|
91
|
+
"""
|
|
92
|
+
# Enum members
|
|
93
|
+
DRAFT = "DRAFT"
|
|
94
|
+
WORKING_DRAFT = "WORKING_DRAFT"
|
|
95
|
+
COMMITTEE_DRAFT = "COMMITTEE_DRAFT"
|
|
96
|
+
CANDIDATE_RECOMMENDATION = "CANDIDATE_RECOMMENDATION"
|
|
97
|
+
PROPOSED_STANDARD = "PROPOSED_STANDARD"
|
|
98
|
+
STANDARD = "STANDARD"
|
|
99
|
+
MATURE_STANDARD = "MATURE_STANDARD"
|
|
100
|
+
SUPERSEDED = "SUPERSEDED"
|
|
101
|
+
WITHDRAWN = "WITHDRAWN"
|
|
102
|
+
|
|
103
|
+
# Set metadata after class creation
|
|
104
|
+
StandardsMaturityLevel._metadata = {
|
|
105
|
+
"DRAFT": {'description': 'Initial draft under development'},
|
|
106
|
+
"WORKING_DRAFT": {'description': 'Work in progress by working group'},
|
|
107
|
+
"COMMITTEE_DRAFT": {'description': 'Draft reviewed by committee'},
|
|
108
|
+
"CANDIDATE_RECOMMENDATION": {'description': 'Mature draft ready for implementation testing'},
|
|
109
|
+
"PROPOSED_STANDARD": {'description': 'Stable specification ready for adoption'},
|
|
110
|
+
"STANDARD": {'description': 'Approved and published standard'},
|
|
111
|
+
"MATURE_STANDARD": {'description': 'Well-established standard with wide adoption'},
|
|
112
|
+
"SUPERSEDED": {'description': 'Replaced by a newer version'},
|
|
113
|
+
"WITHDRAWN": {'description': 'No longer valid or recommended'},
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
class ProjectMaturityLevel(RichEnum):
|
|
117
|
+
"""
|
|
118
|
+
General project development maturity assessment
|
|
119
|
+
"""
|
|
120
|
+
# Enum members
|
|
121
|
+
CONCEPT = "CONCEPT"
|
|
122
|
+
PLANNING = "PLANNING"
|
|
123
|
+
DEVELOPMENT = "DEVELOPMENT"
|
|
124
|
+
TESTING = "TESTING"
|
|
125
|
+
PILOT = "PILOT"
|
|
126
|
+
PRODUCTION = "PRODUCTION"
|
|
127
|
+
MAINTENANCE = "MAINTENANCE"
|
|
128
|
+
END_OF_LIFE = "END_OF_LIFE"
|
|
129
|
+
|
|
130
|
+
# Set metadata after class creation
|
|
131
|
+
ProjectMaturityLevel._metadata = {
|
|
132
|
+
"CONCEPT": {'description': 'Initial idea or concept stage'},
|
|
133
|
+
"PLANNING": {'description': 'Project planning and design phase'},
|
|
134
|
+
"DEVELOPMENT": {'description': 'Active development in progress'},
|
|
135
|
+
"TESTING": {'description': 'Testing and quality assurance phase'},
|
|
136
|
+
"PILOT": {'description': 'Limited deployment or pilot testing'},
|
|
137
|
+
"PRODUCTION": {'description': 'Full production deployment'},
|
|
138
|
+
"MAINTENANCE": {'description': 'Maintenance and support mode'},
|
|
139
|
+
"END_OF_LIFE": {'description': 'Project reaching end of lifecycle'},
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
class DataMaturityLevel(RichEnum):
|
|
143
|
+
"""
|
|
144
|
+
Levels of data quality, governance, and organizational maturity
|
|
145
|
+
"""
|
|
146
|
+
# Enum members
|
|
147
|
+
RAW = "RAW"
|
|
148
|
+
CLEANED = "CLEANED"
|
|
149
|
+
STANDARDIZED = "STANDARDIZED"
|
|
150
|
+
INTEGRATED = "INTEGRATED"
|
|
151
|
+
CURATED = "CURATED"
|
|
152
|
+
PUBLISHED = "PUBLISHED"
|
|
153
|
+
ARCHIVED = "ARCHIVED"
|
|
154
|
+
|
|
155
|
+
# Set metadata after class creation
|
|
156
|
+
DataMaturityLevel._metadata = {
|
|
157
|
+
"RAW": {'description': 'Unprocessed, uncleaned data'},
|
|
158
|
+
"CLEANED": {'description': 'Basic cleaning and validation applied'},
|
|
159
|
+
"STANDARDIZED": {'description': 'Conforms to defined standards and formats'},
|
|
160
|
+
"INTEGRATED": {'description': 'Combined with other data sources'},
|
|
161
|
+
"CURATED": {'description': 'Expert-reviewed and validated'},
|
|
162
|
+
"PUBLISHED": {'description': 'Publicly available with proper metadata'},
|
|
163
|
+
"ARCHIVED": {'description': 'Long-term preservation with access controls'},
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
class OpenSourceMaturityLevel(RichEnum):
|
|
167
|
+
"""
|
|
168
|
+
Maturity assessment for open source projects
|
|
169
|
+
"""
|
|
170
|
+
# Enum members
|
|
171
|
+
EXPERIMENTAL = "EXPERIMENTAL"
|
|
172
|
+
EMERGING = "EMERGING"
|
|
173
|
+
ESTABLISHED = "ESTABLISHED"
|
|
174
|
+
MATURE = "MATURE"
|
|
175
|
+
DECLINING = "DECLINING"
|
|
176
|
+
ARCHIVED = "ARCHIVED"
|
|
177
|
+
|
|
178
|
+
# Set metadata after class creation
|
|
179
|
+
OpenSourceMaturityLevel._metadata = {
|
|
180
|
+
"EXPERIMENTAL": {'description': 'Early experimental project'},
|
|
181
|
+
"EMERGING": {'description': 'Gaining traction and contributors'},
|
|
182
|
+
"ESTABLISHED": {'description': 'Stable with active community'},
|
|
183
|
+
"MATURE": {'description': 'Well-established with proven governance'},
|
|
184
|
+
"DECLINING": {'description': 'Decreasing activity and maintenance'},
|
|
185
|
+
"ARCHIVED": {'description': 'No longer actively maintained'},
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
__all__ = [
|
|
189
|
+
"TechnologyReadinessLevel",
|
|
190
|
+
"SoftwareMaturityLevel",
|
|
191
|
+
"CapabilityMaturityLevel",
|
|
192
|
+
"StandardsMaturityLevel",
|
|
193
|
+
"ProjectMaturityLevel",
|
|
194
|
+
"DataMaturityLevel",
|
|
195
|
+
"OpenSourceMaturityLevel",
|
|
196
|
+
]
|