Skip to content

Commit 6ec0d64

Browse files
committed
11.4.0rc1
1 parent 1b42cef commit 6ec0d64

File tree

5 files changed

+364
-164
lines changed

5 files changed

+364
-164
lines changed

nmdc_schema/nmdc-pydantic.py

Lines changed: 40 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -766,6 +766,26 @@ class SampleStateEnum(str, Enum):
766766
gas = "gas"
767767

768768

769+
class ChemicalEntityEnum(str, Enum):
770+
acetonitrile = "acetonitrile"
771+
alphaLP = "alphaLP"
772+
ammonium_acetate = "ammonium_acetate"
773+
ammonium_bicarbonate = "ammonium_bicarbonate"
774+
Arg_C = "Arg-C"
775+
Asp_N = "Asp-N"
776+
chloroform = "chloroform"
777+
chymotrypsin = "chymotrypsin"
778+
formic_acid = "formic_acid"
779+
glucose = "glucose"
780+
Glu_C = "Glu-C"
781+
isopropyl_alcohol = "isopropyl_alcohol"
782+
Lys_C = "Lys-C"
783+
Lys_N = "Lys-N"
784+
methanol = "methanol"
785+
trypsin = "trypsin"
786+
water = "water"
787+
788+
769789
class ArchStrucEnum(str, Enum):
770790
building = "building"
771791
shed = "shed"
@@ -2347,6 +2367,18 @@ class MetaproteomicsAnalysisCategoryEnum(str, Enum):
23472367
in_silico_metagenome = "in_silico_metagenome"
23482368

23492369

2370+
class MetabolomicsAnalysisCategoryEnum(str, Enum):
2371+
"""
2372+
The category of metabolomics analysis being performed.
2373+
"""
2374+
# A metabolomics analysis that is performed on gas chromatography mass spectrometry data.
2375+
gc_ms_metabolomics = "gc_ms_metabolomics"
2376+
# A metabolomics analysis that is performed on liquid chromatography mass spectrometry data for lipidomics annotation.
2377+
lc_ms_lipidomics = "lc_ms_lipidomics"
2378+
# A metabolomics analysis that is performed on liquid chromatography mass spectrometry data.
2379+
lc_ms_metabolomics = "lc_ms_metabolomics"
2380+
2381+
23502382

23512383
class EukEval(ConfiguredBaseModel):
23522384
"""
@@ -2490,9 +2522,6 @@ class Database(ConfiguredBaseModel):
24902522
calibration_set: Optional[List[CalibrationInformation]] = Field(None, description="""This property links a database object to the set of calibrations within it.""", json_schema_extra = { "linkml_meta": {'alias': 'calibration_set',
24912523
'domain_of': ['Database'],
24922524
'mixins': ['object_set']} })
2493-
chemical_entity_set: Optional[List[ChemicalEntity]] = Field(None, description="""This property links a database object to the set of chemical entities within it.""", json_schema_extra = { "linkml_meta": {'alias': 'chemical_entity_set',
2494-
'domain_of': ['Database'],
2495-
'mixins': ['object_set']} })
24962525
collecting_biosamples_from_site_set: Optional[List[CollectingBiosamplesFromSite]] = Field(None, json_schema_extra = { "linkml_meta": {'alias': 'collecting_biosamples_from_site_set',
24972526
'domain_of': ['Database'],
24982527
'mixins': ['object_set']} })
@@ -2611,14 +2640,14 @@ class PortionOfSubstance(ConfiguredBaseModel):
26112640
final_concentration: Optional[QuantityValue] = Field(None, description="""When solutions A (containing substance X) and B are combined together, this slot captures the concentration of X in the combination""", json_schema_extra = { "linkml_meta": {'alias': 'final_concentration',
26122641
'domain_of': ['PortionOfSubstance'],
26132642
'is_a': 'concentration'} })
2614-
known_as: Optional[str] = Field(None, json_schema_extra = { "linkml_meta": {'alias': 'known_as', 'domain_of': ['PortionOfSubstance']} })
26152643
mass: Optional[QuantityValue] = Field(None, title="mass", description="""A physical quality that inheres in a bearer by virtue of the proportion of the bearer's amount of matter.""", json_schema_extra = { "linkml_meta": {'alias': 'mass',
26162644
'domain_of': ['SubSamplingProcess', 'PortionOfSubstance'],
26172645
'exact_mappings': ['PATO:0000125']} })
26182646
sample_state_information: Optional[SampleStateEnum] = Field(None, description="""The chemical phase of a pure sample, or the state of a mixed sample""", json_schema_extra = { "linkml_meta": {'alias': 'sample_state_information', 'domain_of': ['PortionOfSubstance']} })
26192647
source_concentration: Optional[QuantityValue] = Field(None, description="""When solutions A (containing substance X) and B are combined together, this slot captures the concentration of X in solution A""", json_schema_extra = { "linkml_meta": {'alias': 'source_concentration',
26202648
'domain_of': ['PortionOfSubstance'],
26212649
'is_a': 'concentration'} })
2650+
known_as: Optional[ChemicalEntityEnum] = Field(None, description="""The substance from which a portion was taken.""", json_schema_extra = { "linkml_meta": {'alias': 'known_as', 'domain_of': ['PortionOfSubstance']} })
26222651
substance_role: Optional[SubstanceRoleEnum] = Field(None, description="""The role of a substance in a process""", json_schema_extra = { "linkml_meta": {'alias': 'substance_role', 'domain_of': ['PortionOfSubstance']} })
26232652
type: Literal["https://w3id.org/nmdc/PortionOfSubstance","nmdc:PortionOfSubstance"] = Field("nmdc:PortionOfSubstance", description="""the class_uri of the class that has been instantiated""", json_schema_extra = { "linkml_meta": {'alias': 'type',
26242653
'designates_type': True,
@@ -3793,7 +3822,7 @@ def pattern_alternative_identifiers(cls, v):
37933822

37943823
class ChemicalEntity(OntologyClass):
37953824
"""
3796-
An atom or molecule that can be represented with a chemical formula. Include lipids, glycans, natural products, drugs. There may be different terms for distinct acid-base forms, protonation states
3825+
An atom or molecule that can be represented with a chemical formula. Include lipids, glycans, natural products, drugs. There may be different terms for distinct acid-base forms, protonation states. A chemical entity is a physical entity that pertains to chemistry or biochemistry.
37973826
"""
37983827
linkml_meta: ClassVar[LinkMLMeta] = LinkMLMeta({'aliases': ['metabolite',
37993828
'chemical substance',
@@ -3802,26 +3831,15 @@ class ChemicalEntity(OntologyClass):
38023831
'class_uri': 'nmdc:ChemicalEntity',
38033832
'comments': ['As with the parent OntologyClass, we will not assign an nmdc id '
38043833
'pattern or typecode to this class.'],
3834+
'deprecated': 'true; as of Jan 2025, NMDC only needs a handful of chemicals '
3835+
'and its use cases can be served via an enumeration rather than '
3836+
'supporting a full class.',
38053837
'exact_mappings': ['biolink:ChemicalSubstance'],
38063838
'from_schema': 'https://w3id.org/nmdc/nmdc',
3807-
'id_prefixes': ['cas',
3808-
'CHEBI',
3809-
'CHEMBL.COMPOUND',
3810-
'DRUGBANK',
3811-
'HMDB',
3812-
'KEGG.COMPOUND',
3813-
'MESH',
3814-
'PUBCHEM.COMPOUND'],
3839+
'id_prefixes': ['CHEBI', 'MS'],
38153840
'see_also': ['https://bioconductor.org/packages/devel/data/annotation/vignettes/metaboliteIDmapping/inst/doc/metaboliteIDmapping.html']})
38163841

38173842
chemical_formula: Optional[str] = Field(None, description="""A generic grouping for molecular formulae and empirical formulae""", json_schema_extra = { "linkml_meta": {'alias': 'chemical_formula', 'domain_of': ['ChemicalEntity']} })
3818-
inchi: Optional[str] = Field(None, json_schema_extra = { "linkml_meta": {'alias': 'inchi', 'domain_of': ['ChemicalEntity']} })
3819-
inchi_key: Optional[str] = Field(None, json_schema_extra = { "linkml_meta": {'alias': 'inchi_key',
3820-
'domain_of': ['ChemicalEntity'],
3821-
'notes': ['key set to false due to rare collisions: Pletnev I, Erin A, '
3822-
'McNaught A, Blinov K, Tchekhovskoi D, Heller S (2012) InChIKey '
3823-
'collision resistance: an experimental testing. J Cheminform. 4:12']} })
3824-
smiles: Optional[List[str]] = Field(None, description="""A string encoding of a molecular graph, no chiral or isotopic information. There are usually a large number of valid SMILES which represent a given structure. For example, CCO, OCC and C(O)C all specify the structure of ethanol.""", json_schema_extra = { "linkml_meta": {'alias': 'smiles', 'domain_of': ['ChemicalEntity']} })
38253843
alternative_names: Optional[List[str]] = Field(None, description="""A list of alternative names used to refer to the entity. The distinction between name and alternative names is application-specific.""", json_schema_extra = { "linkml_meta": {'alias': 'alternative_names',
38263844
'domain_of': ['OntologyClass', 'Study'],
38273845
'exact_mappings': ['dcterms:alternative', 'skos:altLabel']} })
@@ -18796,6 +18814,8 @@ class MetabolomicsAnalysis(WorkflowExecution):
1879618814
'domain_of': ['MetabolomicsAnalysis', 'NomAnalysis'],
1879718815
'structured_pattern': {'interpolated': True,
1879818816
'syntax': '{id_nmdc_prefix}:calib-{id_shoulder}-{id_blade}$'}} })
18817+
metabolomics_analysis_category: MetabolomicsAnalysisCategoryEnum = Field(..., description="""The category of metabolomics analysis being performed.""", json_schema_extra = { "linkml_meta": {'alias': 'metabolomics_analysis_category',
18818+
'domain_of': ['MetabolomicsAnalysis']} })
1879918819
ended_at_time: Optional[str] = Field(None, json_schema_extra = { "linkml_meta": {'alias': 'ended_at_time',
1880018820
'domain_of': ['WorkflowExecution'],
1880118821
'mappings': ['prov:endedAtTime'],

0 commit comments

Comments
 (0)