nmdc-schema 11.13.0__py3-none-any.whl → 11.14.0rc1__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.
@@ -0,0 +1,113 @@
1
+ from linkml.validator import Validator
2
+
3
+ from nmdc_schema.migrators.migrator_base import MigratorBase
4
+ import sys
5
+ from pathlib import Path
6
+ from nmdc_schema.migrators.helpers import create_schema_view, get_classes_with_slots_by_range, \
7
+ get_database_collections_for_class
8
+ from nmdc_schema import NmdcSchemaValidationPlugin
9
+
10
+ project_root = Path(__file__).parent.parent.parent
11
+ sys.path.insert(0, str(project_root))
12
+
13
+
14
+ class Migrator(MigratorBase):
15
+ r"""A check-only migrator that raises an exception if any QuantityValue's has_unit slot
16
+ is not valid against the slot's storage_unit or UnitEnum constraints."""
17
+
18
+ _from_version = '11.13.0'
19
+ _to_version = '11.14.0'
20
+
21
+ def __init__(self, *args, **kwargs):
22
+ super().__init__(*args, **kwargs)
23
+
24
+ self.schema_view = create_schema_view()
25
+ self.validator = Validator(
26
+ self.schema_view.schema,
27
+ # This is intentionally *only* using the NMDC plugin, because this migrator is *only*
28
+ # concerned with validating the QuantityValue-related constraints that the plugin
29
+ # implements.
30
+ validation_plugins=[
31
+ NmdcSchemaValidationPlugin()
32
+ ]
33
+ )
34
+
35
+ def upgrade(self, commit_changes: bool = False) -> None:
36
+ r'''
37
+ Migrates the database from conforming to the original schema, to conforming to the new schema.
38
+ '''
39
+
40
+ # Get the schema classes which have slots with range QuantityValue
41
+ classes_with_qv_slots = get_classes_with_slots_by_range(self.schema_view, 'QuantityValue')
42
+
43
+ # Get the Database collection names that can hold these classes
44
+ eligible_collection_names = set()
45
+ for class_name in classes_with_qv_slots.keys():
46
+ collection_names = get_database_collections_for_class(self.schema_view, class_name)
47
+ eligible_collection_names.update(collection_names)
48
+
49
+ # Apply migrator through collections
50
+ self.logger.info("Checking QuantityValue units against UnitEnum and storage_units constraints")
51
+ for collection_name in eligible_collection_names:
52
+ self.logger.info(f" Checking collection '{collection_name}'")
53
+ self.adapter.do_for_each_document(collection_name, self.confirm_units_fit_unitenum_and_storage_units)
54
+
55
+ def confirm_units_fit_unitenum_and_storage_units(self, document: dict) -> None:
56
+ r'''
57
+ Raise an exception if the QuantityValue's has_unit slot is not valid against slot's storage_unit or UnitEnum constraints.
58
+
59
+ >>> m = Migrator()
60
+
61
+ # Test: valid QuantityValue with proper units in biosample
62
+ >>> valid_biosample = {
63
+ ... "id": "test1",
64
+ ... "type": "nmdc:Biosample",
65
+ ... "bulk_elect_conductivity": {
66
+ ... "type": "nmdc:QuantityValue",
67
+ ... "has_unit": "mS/cm",
68
+ ... "has_numeric_value": 25.0
69
+ ... }
70
+ ... }
71
+ >>> m.confirm_units_fit_unitenum_and_storage_units(valid_biosample) # Should not raise
72
+
73
+ # Test: unit not allowed for bulk_elect_conductivity's storage_units
74
+ >>> invalid_biosample_storage = {
75
+ ... "id": "test2",
76
+ ... "type": "nmdc:Biosample",
77
+ ... "bulk_elect_conductivity": {
78
+ ... "type": "nmdc:QuantityValue",
79
+ ... "has_unit": "Cel",
80
+ ... "has_numeric_value": 25.0
81
+ ... }
82
+ ... }
83
+ >>> m.confirm_units_fit_unitenum_and_storage_units(invalid_biosample_storage)
84
+ Traceback (most recent call last):
85
+ ...
86
+ ValueError: In test2:
87
+ QuantityValue at /bulk_elect_conductivity has unit 'Cel' which is not allowed for slot 'bulk_elect_conductivity' (allowed: mS/cm)
88
+
89
+ # Test: unit not allowed for substances_volume's storage_units
90
+ >>> invalid_chem_storage = {
91
+ ... "id": "test3",
92
+ ... "type": "nmdc:ChemicalConversionProcess",
93
+ ... "substances_volume": {
94
+ ... "type": "nmdc:QuantityValue",
95
+ ... "has_unit": "J/K", # Wrong unit type for substances_volume
96
+ ... "has_numeric_value": 25.0
97
+ ... }
98
+ ... }
99
+ >>> m.confirm_units_fit_unitenum_and_storage_units(invalid_chem_storage)
100
+ Traceback (most recent call last):
101
+ ...
102
+ ValueError: In test3:
103
+ QuantityValue at /substances_volume has unit 'J/K' which is not allowed for slot 'substances_volume' (allowed: mL)
104
+ '''
105
+
106
+ document_id = document.get('id', '<unknown id>')
107
+ document_type = document.get('type')
108
+ if not document_type:
109
+ raise ValueError(f"Unable to infer target_class for document with id '{document_id}'")
110
+ target_class = document_type.replace('nmdc:', '')
111
+ report = self.validator.validate(document, target_class)
112
+ if report.results:
113
+ raise ValueError(f"In {document_id}:\n" + "\n".join(" " + result.message for result in report.results))
@@ -27,7 +27,7 @@ from pydantic import (
27
27
 
28
28
 
29
29
  metamodel_version = "None"
30
- version = "11.13.0"
30
+ version = "11.14.0rc1"
31
31
 
32
32
 
33
33
  class ConfiguredBaseModel(BaseModel):
@@ -3422,25 +3422,17 @@ class SubmissionStatusEnum(str, Enum):
3422
3422
  """
3423
3423
  Submission is ready for NMDC review, the submitter cannot edit.
3424
3424
  """
3425
- Resubmitted___Pending_review = "ResubmittedPendingReview"
3426
- """
3427
- Submission has been resubmitted after updates. It is now ready for NMDC review. The submitter cannot edit.
3428
- """
3429
3425
  Approved___Held = "ApprovedHeld"
3430
3426
  """
3431
3427
  Submission has been reviewed and approved. Information is complete, but not yet shared on the data portal. The submitter cannot edit.
3432
3428
  """
3433
- Pending___Sent_to_User_Facility = "PendingUserFacility"
3429
+ Approved___Sent_to_User_Facility = "ApprovedPendingUserFacility"
3434
3430
  """
3435
- Submission has been reviewed and approved. Information is complete, but not yet shared on the data portal. Sample information shared with designated user facility and pending approvals. The submitter cannot edit.
3431
+ Submission has been reviewed and approved by NMDC. Sample information has been shared with designated user facility and is ready for their review. The submitter cannot edit.
3436
3432
  """
3437
3433
  Updates_Required = "UpdatesRequired"
3438
3434
  """
3439
- Submission has been reviewed and submitter edits are required for approval. The submitter can reopen and edit the submission.
3440
- """
3441
- In_Progress___UpdateSOLIDUSAddition = "InProgressUpdate"
3442
- """
3443
- NMDC reviewer has reopened submission on behalf of submitter. The submitter is currently editing the submission.
3435
+ Submission has been reviewed and submitter edits are required for approval. The submitter can edit the submission.
3444
3436
  """
3445
3437
  Denied = "Denied"
3446
3438
  """
@@ -10196,8 +10188,7 @@ class Biosample(Sample):
10196
10188
  'occurrence': {'tag': 'occurrence', 'value': '1'},
10197
10189
  'preferred_unit': {'tag': 'preferred_unit',
10198
10190
  'value': 'gram of air, kilogram of air'},
10199
- 'units_alignment_excuse': {'tag': 'units_alignment_excuse',
10200
- 'value': 'mixs_inconsistent'}},
10191
+ 'storage_units': {'tag': 'storage_units', 'value': 'g/kg'}},
10201
10192
  'domain_of': ['Biosample'],
10202
10193
  'examples': [{'value': '15 per kilogram of air'}],
10203
10194
  'is_a': 'core field',
@@ -10686,8 +10677,7 @@ class Biosample(Sample):
10686
10677
  'value': 'measurement value'},
10687
10678
  'occurrence': {'tag': 'occurrence', 'value': '1'},
10688
10679
  'preferred_unit': {'tag': 'preferred_unit', 'value': 'meter'},
10689
- 'units_alignment_excuse': {'tag': 'units_alignment_excuse',
10690
- 'value': 'complex_unit'}},
10680
+ 'storage_units': {'tag': 'storage_units', 'value': 'm'}},
10691
10681
  'domain_of': ['Biosample'],
10692
10682
  'examples': [{'value': ''}],
10693
10683
  'is_a': 'core field',
@@ -11455,8 +11445,7 @@ class Biosample(Sample):
11455
11445
  'slot_group': 'Sample ID',
11456
11446
  'string_serialization': '{text}:{text}'} })
11457
11447
  bulk_elect_conductivity: Optional[QuantityValue] = Field(default=None, title="bulk electrical conductivity", description="""Electrical conductivity is a measure of the ability to carry electric current, which is mostly dictated by the chemistry of and amount of water.""", json_schema_extra = { "linkml_meta": {'alias': 'bulk_elect_conductivity',
11458
- 'annotations': {'units_alignment_excuse': {'tag': 'units_alignment_excuse',
11459
- 'value': 'pending_analysis'}},
11448
+ 'annotations': {'storage_units': {'tag': 'storage_units', 'value': 'mS/cm'}},
11460
11449
  'comments': ['Provide the value output of the field instrument.'],
11461
11450
  'domain_of': ['Biosample'],
11462
11451
  'examples': [{'description': 'The conductivity measurement was 0.017 '
@@ -13575,8 +13564,7 @@ class SubSamplingProcess(MaterialProcessing):
13575
13564
  'name': 'volume'}}})
13576
13565
 
13577
13566
  container_size: Optional[QuantityValue] = Field(default=None, description="""The volume of the container an analyte is stored in or an activity takes place in""", json_schema_extra = { "linkml_meta": {'alias': 'container_size',
13578
- 'annotations': {'units_alignment_excuse': {'tag': 'units_alignment_excuse',
13579
- 'value': 'pending_analysis'}},
13567
+ 'annotations': {'storage_units': {'tag': 'storage_units', 'value': 'mL'}},
13580
13568
  'contributors': ['ORCID:0009-0001-1555-1601', 'ORCID:0000-0002-8683-0050'],
13581
13569
  'domain_of': ['SubSamplingProcess', 'FiltrationProcess']} })
13582
13570
  contained_in: Optional[ContainerCategoryEnum] = Field(default=None, description="""A type of container.""", json_schema_extra = { "linkml_meta": {'alias': 'contained_in',
@@ -13985,8 +13973,7 @@ class FiltrationProcess(MaterialProcessing):
13985
13973
  'domain_of': ['FiltrationProcess'],
13986
13974
  'list_elements_ordered': True} })
13987
13975
  container_size: Optional[QuantityValue] = Field(default=None, description="""The volume of the container an analyte is stored in or an activity takes place in""", json_schema_extra = { "linkml_meta": {'alias': 'container_size',
13988
- 'annotations': {'units_alignment_excuse': {'tag': 'units_alignment_excuse',
13989
- 'value': 'pending_analysis'}},
13976
+ 'annotations': {'storage_units': {'tag': 'storage_units', 'value': 'mL'}},
13990
13977
  'contributors': ['ORCID:0009-0001-1555-1601', 'ORCID:0000-0002-8683-0050'],
13991
13978
  'domain_of': ['SubSamplingProcess', 'FiltrationProcess']} })
13992
13979
  filter_material: Optional[str] = Field(default=None, description="""A porous material on which solid particles present in air or other fluid which flows through it are largely caught and retained.""", json_schema_extra = { "linkml_meta": {'alias': 'filter_material',
@@ -14002,8 +13989,7 @@ class FiltrationProcess(MaterialProcessing):
14002
13989
  '(0.45−0.8 μm are commonly employed).'],
14003
13990
  'domain_of': ['FiltrationProcess']} })
14004
13991
  filter_pore_size: Optional[QuantityValue] = Field(default=None, description="""A quantitative or qualitative measurement of the physical dimensions of the pores in a material.""", json_schema_extra = { "linkml_meta": {'alias': 'filter_pore_size',
14005
- 'annotations': {'units_alignment_excuse': {'tag': 'units_alignment_excuse',
14006
- 'value': 'pending_analysis'}},
13992
+ 'annotations': {'storage_units': {'tag': 'storage_units', 'value': 'um'}},
14007
13993
  'domain_of': ['FiltrationProcess']} })
14008
13994
  filtration_category: Optional[str] = Field(default=None, description="""The type of conditioning applied to a filter, device, etc.""", json_schema_extra = { "linkml_meta": {'alias': 'filtration_category', 'domain_of': ['FiltrationProcess']} })
14009
13995
  is_pressurized: Optional[bool] = Field(default=None, description="""Whether or not pressure was applied to a thing or process.""", json_schema_extra = { "linkml_meta": {'alias': 'is_pressurized', 'domain_of': ['FiltrationProcess']} })
@@ -14599,8 +14585,7 @@ class ChemicalConversionProcess(MaterialProcessing):
14599
14585
  'ChemicalConversionProcess',
14600
14586
  'MobilePhaseSegment']} })
14601
14587
  substances_volume: Optional[QuantityValue] = Field(default=None, description="""The volume of the combined substances that was included in a ChemicalConversionProcess.""", json_schema_extra = { "linkml_meta": {'alias': 'substances_volume',
14602
- 'annotations': {'units_alignment_excuse': {'tag': 'units_alignment_excuse',
14603
- 'value': 'pending_analysis'}},
14588
+ 'annotations': {'storage_units': {'tag': 'storage_units', 'value': 'mL'}},
14604
14589
  'domain_of': ['ChemicalConversionProcess']} })
14605
14590
  instrument_used: Optional[list[str]] = Field(default=None, description="""What instrument was used during DataGeneration or MaterialProcessing.""", json_schema_extra = { "linkml_meta": {'alias': 'instrument_used',
14606
14591
  'domain_of': ['MaterialProcessing', 'DataGeneration'],
nmdc_schema/nmdc.py CHANGED
@@ -1,5 +1,5 @@
1
1
  # Auto generated from nmdc.yaml by pythongen.py version: 0.0.1
2
- # Generation date: 2025-10-29T21:55:59
2
+ # Generation date: 2025-11-19T00:25:31
3
3
  # Schema: NMDC
4
4
  #
5
5
  # id: https://w3id.org/nmdc/nmdc
@@ -60,7 +60,7 @@ from linkml_runtime.linkml_model.types import Boolean, Decimal, Double, Float, I
60
60
  from linkml_runtime.utils.metamodelcore import Bool, Decimal, URIorCURIE
61
61
 
62
62
  metamodel_version = "1.7.0"
63
- version = "11.13.0"
63
+ version = "11.14.0rc1"
64
64
 
65
65
  # Namespaces
66
66
  BFO = CurieNamespace('BFO', 'http://purl.obolibrary.org/obo/BFO_')
@@ -10473,21 +10473,15 @@ class SubmissionStatusEnum(EnumDefinitionImpl):
10473
10473
  SubmittedPendingReview = PermissibleValue(
10474
10474
  text="SubmittedPendingReview",
10475
10475
  description="Submission is ready for NMDC review, the submitter cannot edit.")
10476
- ResubmittedPendingReview = PermissibleValue(
10477
- text="ResubmittedPendingReview",
10478
- description="""Submission has been resubmitted after updates. It is now ready for NMDC review. The submitter cannot edit.""")
10479
10476
  ApprovedHeld = PermissibleValue(
10480
10477
  text="ApprovedHeld",
10481
10478
  description="""Submission has been reviewed and approved. Information is complete, but not yet shared on the data portal. The submitter cannot edit.""")
10482
- PendingUserFacility = PermissibleValue(
10483
- text="PendingUserFacility",
10484
- description="""Submission has been reviewed and approved. Information is complete, but not yet shared on the data portal. Sample information shared with designated user facility and pending approvals. The submitter cannot edit.""")
10479
+ ApprovedPendingUserFacility = PermissibleValue(
10480
+ text="ApprovedPendingUserFacility",
10481
+ description="""Submission has been reviewed and approved by NMDC. Sample information has been shared with designated user facility and is ready for their review. The submitter cannot edit.""")
10485
10482
  UpdatesRequired = PermissibleValue(
10486
10483
  text="UpdatesRequired",
10487
- description="""Submission has been reviewed and submitter edits are required for approval. The submitter can reopen and edit the submission.""")
10488
- InProgressUpdate = PermissibleValue(
10489
- text="InProgressUpdate",
10490
- description="""NMDC reviewer has reopened submission on behalf of submitter. The submitter is currently editing the submission.""")
10484
+ description="""Submission has been reviewed and submitter edits are required for approval. The submitter can edit the submission.""")
10491
10485
  Denied = PermissibleValue(
10492
10486
  text="Denied",
10493
10487
  description="Submission has been reviewed and denied. The submitter cannot edit.")
@@ -14917,11 +14917,9 @@
14917
14917
  "enum": [
14918
14918
  "InProgress",
14919
14919
  "SubmittedPendingReview",
14920
- "ResubmittedPendingReview",
14921
14920
  "ApprovedHeld",
14922
- "PendingUserFacility",
14921
+ "ApprovedPendingUserFacility",
14923
14922
  "UpdatesRequired",
14924
- "InProgressUpdate",
14925
14923
  "Denied",
14926
14924
  "Released"
14927
14925
  ],
@@ -15715,5 +15713,5 @@
15715
15713
  },
15716
15714
  "title": "NMDC",
15717
15715
  "type": "object",
15718
- "version": "11.13.0"
15716
+ "version": "11.14.0rc1"
15719
15717
  }
@@ -6,7 +6,7 @@
6
6
  "not importing any MIxS terms where the relationship between the name (SCN) and the id isn't 1:1"
7
7
  ],
8
8
  "id": "https://w3id.org/nmdc/nmdc",
9
- "version": "11.13.0",
9
+ "version": "11.14.0rc1",
10
10
  "license": "https://creativecommons.org/publicdomain/zero/1.0/",
11
11
  "prefixes": {
12
12
  "BFO": {
@@ -7708,31 +7708,21 @@
7708
7708
  "description": "Submission is ready for NMDC review, the submitter cannot edit.",
7709
7709
  "title": "Submitted - Pending Review"
7710
7710
  },
7711
- "ResubmittedPendingReview": {
7712
- "text": "ResubmittedPendingReview",
7713
- "description": "Submission has been resubmitted after updates. It is now ready for NMDC review. The submitter cannot edit.",
7714
- "title": "Resubmitted - Pending review"
7715
- },
7716
7711
  "ApprovedHeld": {
7717
7712
  "text": "ApprovedHeld",
7718
7713
  "description": "Submission has been reviewed and approved. Information is complete, but not yet shared on the data portal. The submitter cannot edit.",
7719
7714
  "title": "Approved - Held"
7720
7715
  },
7721
- "PendingUserFacility": {
7722
- "text": "PendingUserFacility",
7723
- "description": "Submission has been reviewed and approved. Information is complete, but not yet shared on the data portal. Sample information shared with designated user facility and pending approvals. The submitter cannot edit.",
7724
- "title": "Pending - Sent to User Facility"
7716
+ "ApprovedPendingUserFacility": {
7717
+ "text": "ApprovedPendingUserFacility",
7718
+ "description": "Submission has been reviewed and approved by NMDC. Sample information has been shared with designated user facility and is ready for their review. The submitter cannot edit.",
7719
+ "title": "Approved - Sent to User Facility"
7725
7720
  },
7726
7721
  "UpdatesRequired": {
7727
7722
  "text": "UpdatesRequired",
7728
- "description": "Submission has been reviewed and submitter edits are required for approval. The submitter can reopen and edit the submission.",
7723
+ "description": "Submission has been reviewed and submitter edits are required for approval. The submitter can edit the submission.",
7729
7724
  "title": "Updates Required"
7730
7725
  },
7731
- "InProgressUpdate": {
7732
- "text": "InProgressUpdate",
7733
- "description": "NMDC reviewer has reopened submission on behalf of submitter. The submitter is currently editing the submission.",
7734
- "title": "In Progress - Update/Addition"
7735
- },
7736
7726
  "Denied": {
7737
7727
  "text": "Denied",
7738
7728
  "description": "Submission has been reviewed and denied. The submitter cannot edit.",
@@ -8290,9 +8280,9 @@
8290
8280
  "container_size": {
8291
8281
  "name": "container_size",
8292
8282
  "annotations": {
8293
- "units_alignment_excuse": {
8294
- "tag": "units_alignment_excuse",
8295
- "value": "pending_analysis"
8283
+ "storage_units": {
8284
+ "tag": "storage_units",
8285
+ "value": "mL"
8296
8286
  }
8297
8287
  },
8298
8288
  "description": "The volume of the container an analyte is stored in or an activity takes place in",
@@ -8315,9 +8305,9 @@
8315
8305
  "filter_pore_size": {
8316
8306
  "name": "filter_pore_size",
8317
8307
  "annotations": {
8318
- "units_alignment_excuse": {
8319
- "tag": "units_alignment_excuse",
8320
- "value": "pending_analysis"
8308
+ "storage_units": {
8309
+ "tag": "storage_units",
8310
+ "value": "um"
8321
8311
  }
8322
8312
  },
8323
8313
  "description": "A quantitative or qualitative measurement of the physical dimensions of the pores in a material.",
@@ -8393,9 +8383,9 @@
8393
8383
  "input_volume": {
8394
8384
  "name": "input_volume",
8395
8385
  "annotations": {
8396
- "units_alignment_excuse": {
8397
- "tag": "units_alignment_excuse",
8398
- "value": "pending_analysis"
8386
+ "storage_units": {
8387
+ "tag": "storage_units",
8388
+ "value": "mL"
8399
8389
  }
8400
8390
  },
8401
8391
  "description": "The volume of the input sample.",
@@ -8439,9 +8429,9 @@
8439
8429
  "substances_volume": {
8440
8430
  "name": "substances_volume",
8441
8431
  "annotations": {
8442
- "units_alignment_excuse": {
8443
- "tag": "units_alignment_excuse",
8444
- "value": "pending_analysis"
8432
+ "storage_units": {
8433
+ "tag": "storage_units",
8434
+ "value": "mL"
8445
8435
  }
8446
8436
  },
8447
8437
  "description": "The volume of the combined substances that was included in a ChemicalConversionProcess.",
@@ -8470,9 +8460,9 @@
8470
8460
  "bulk_elect_conductivity": {
8471
8461
  "name": "bulk_elect_conductivity",
8472
8462
  "annotations": {
8473
- "units_alignment_excuse": {
8474
- "tag": "units_alignment_excuse",
8475
- "value": "pending_analysis"
8463
+ "storage_units": {
8464
+ "tag": "storage_units",
8465
+ "value": "mS/cm"
8476
8466
  }
8477
8467
  },
8478
8468
  "description": "Electrical conductivity is a measure of the ability to carry electric current, which is mostly dictated by the chemistry of and amount of water.",
@@ -21849,9 +21839,9 @@
21849
21839
  "tag": "occurrence",
21850
21840
  "value": "1"
21851
21841
  },
21852
- "units_alignment_excuse": {
21853
- "tag": "units_alignment_excuse",
21854
- "value": "mixs_inconsistent"
21842
+ "storage_units": {
21843
+ "tag": "storage_units",
21844
+ "value": "g/kg"
21855
21845
  }
21856
21846
  },
21857
21847
  "description": "The mass of water vapour in a unit mass of moist air, usually expressed as grams of vapour per kilogram of air, or, in air conditioning, as grains per pound.",
@@ -23260,9 +23250,9 @@
23260
23250
  "tag": "occurrence",
23261
23251
  "value": "1"
23262
23252
  },
23263
- "units_alignment_excuse": {
23264
- "tag": "units_alignment_excuse",
23265
- "value": "complex_unit"
23253
+ "storage_units": {
23254
+ "tag": "storage_units",
23255
+ "value": "m"
23266
23256
  }
23267
23257
  },
23268
23258
  "description": "True vertical depth subsea (TVDSS) of the hydrocarbon resource where the original temperature was measured (e.g. 1345 m).",
@@ -15013,11 +15013,9 @@
15013
15013
  "enum": [
15014
15014
  "InProgress",
15015
15015
  "SubmittedPendingReview",
15016
- "ResubmittedPendingReview",
15017
15016
  "ApprovedHeld",
15018
- "PendingUserFacility",
15017
+ "ApprovedPendingUserFacility",
15019
15018
  "UpdatesRequired",
15020
- "InProgressUpdate",
15021
15019
  "Denied",
15022
15020
  "Released"
15023
15021
  ],
@@ -15811,5 +15809,5 @@
15811
15809
  },
15812
15810
  "title": "NMDC",
15813
15811
  "type": "object",
15814
- "version": "11.13.0"
15812
+ "version": "11.14.0rc1"
15815
15813
  }
@@ -13,7 +13,7 @@ notes:
13
13
  - not importing any MIxS terms where the relationship between the name (SCN) and the
14
14
  id isn't 1:1
15
15
  id: https://w3id.org/nmdc/nmdc
16
- version: 11.13.0
16
+ version: 11.14.0rc1
17
17
  license: https://creativecommons.org/publicdomain/zero/1.0/
18
18
  prefixes:
19
19
  BFO:
@@ -5693,32 +5693,22 @@ enums:
5693
5693
  text: SubmittedPendingReview
5694
5694
  description: Submission is ready for NMDC review, the submitter cannot edit.
5695
5695
  title: Submitted - Pending Review
5696
- ResubmittedPendingReview:
5697
- text: ResubmittedPendingReview
5698
- description: Submission has been resubmitted after updates. It is now ready
5699
- for NMDC review. The submitter cannot edit.
5700
- title: Resubmitted - Pending review
5701
5696
  ApprovedHeld:
5702
5697
  text: ApprovedHeld
5703
5698
  description: Submission has been reviewed and approved. Information is complete,
5704
5699
  but not yet shared on the data portal. The submitter cannot edit.
5705
5700
  title: Approved - Held
5706
- PendingUserFacility:
5707
- text: PendingUserFacility
5708
- description: Submission has been reviewed and approved. Information is complete,
5709
- but not yet shared on the data portal. Sample information shared with designated
5710
- user facility and pending approvals. The submitter cannot edit.
5711
- title: Pending - Sent to User Facility
5701
+ ApprovedPendingUserFacility:
5702
+ text: ApprovedPendingUserFacility
5703
+ description: Submission has been reviewed and approved by NMDC. Sample information
5704
+ has been shared with designated user facility and is ready for their review.
5705
+ The submitter cannot edit.
5706
+ title: Approved - Sent to User Facility
5712
5707
  UpdatesRequired:
5713
5708
  text: UpdatesRequired
5714
5709
  description: Submission has been reviewed and submitter edits are required
5715
- for approval. The submitter can reopen and edit the submission.
5710
+ for approval. The submitter can edit the submission.
5716
5711
  title: Updates Required
5717
- InProgressUpdate:
5718
- text: InProgressUpdate
5719
- description: NMDC reviewer has reopened submission on behalf of submitter.
5720
- The submitter is currently editing the submission.
5721
- title: In Progress - Update/Addition
5722
5712
  Denied:
5723
5713
  text: Denied
5724
5714
  description: Submission has been reviewed and denied. The submitter cannot
@@ -6178,9 +6168,9 @@ slots:
6178
6168
  container_size:
6179
6169
  name: container_size
6180
6170
  annotations:
6181
- units_alignment_excuse:
6182
- tag: units_alignment_excuse
6183
- value: pending_analysis
6171
+ storage_units:
6172
+ tag: storage_units
6173
+ value: mL
6184
6174
  description: The volume of the container an analyte is stored in or an activity
6185
6175
  takes place in
6186
6176
  from_schema: https://w3id.org/nmdc/nmdc
@@ -6205,9 +6195,9 @@ slots:
6205
6195
  filter_pore_size:
6206
6196
  name: filter_pore_size
6207
6197
  annotations:
6208
- units_alignment_excuse:
6209
- tag: units_alignment_excuse
6210
- value: pending_analysis
6198
+ storage_units:
6199
+ tag: storage_units
6200
+ value: um
6211
6201
  description: A quantitative or qualitative measurement of the physical dimensions
6212
6202
  of the pores in a material.
6213
6203
  from_schema: https://w3id.org/nmdc/nmdc
@@ -6269,9 +6259,9 @@ slots:
6269
6259
  input_volume:
6270
6260
  name: input_volume
6271
6261
  annotations:
6272
- units_alignment_excuse:
6273
- tag: units_alignment_excuse
6274
- value: pending_analysis
6262
+ storage_units:
6263
+ tag: storage_units
6264
+ value: mL
6275
6265
  description: The volume of the input sample.
6276
6266
  from_schema: https://w3id.org/nmdc/nmdc
6277
6267
  range: QuantityValue
@@ -6307,9 +6297,9 @@ slots:
6307
6297
  substances_volume:
6308
6298
  name: substances_volume
6309
6299
  annotations:
6310
- units_alignment_excuse:
6311
- tag: units_alignment_excuse
6312
- value: pending_analysis
6300
+ storage_units:
6301
+ tag: storage_units
6302
+ value: mL
6313
6303
  description: The volume of the combined substances that was included in a ChemicalConversionProcess.
6314
6304
  from_schema: https://w3id.org/nmdc/nmdc
6315
6305
  range: QuantityValue
@@ -6331,9 +6321,9 @@ slots:
6331
6321
  bulk_elect_conductivity:
6332
6322
  name: bulk_elect_conductivity
6333
6323
  annotations:
6334
- units_alignment_excuse:
6335
- tag: units_alignment_excuse
6336
- value: pending_analysis
6324
+ storage_units:
6325
+ tag: storage_units
6326
+ value: mS/cm
6337
6327
  description: Electrical conductivity is a measure of the ability to carry electric
6338
6328
  current, which is mostly dictated by the chemistry of and amount of water.
6339
6329
  title: bulk electrical conductivity
@@ -16676,9 +16666,9 @@ slots:
16676
16666
  occurrence:
16677
16667
  tag: occurrence
16678
16668
  value: '1'
16679
- units_alignment_excuse:
16680
- tag: units_alignment_excuse
16681
- value: mixs_inconsistent
16669
+ storage_units:
16670
+ tag: storage_units
16671
+ value: g/kg
16682
16672
  description: The mass of water vapour in a unit mass of moist air, usually expressed
16683
16673
  as grams of vapour per kilogram of air, or, in air conditioning, as grains per
16684
16674
  pound.
@@ -17729,9 +17719,9 @@ slots:
17729
17719
  occurrence:
17730
17720
  tag: occurrence
17731
17721
  value: '1'
17732
- units_alignment_excuse:
17733
- tag: units_alignment_excuse
17734
- value: complex_unit
17722
+ storage_units:
17723
+ tag: storage_units
17724
+ value: m
17735
17725
  description: True vertical depth subsea (TVDSS) of the hydrocarbon resource where
17736
17726
  the original temperature was measured (e.g. 1345 m).
17737
17727
  title: depth (TVDSS) of hydrocarbon resource temperature
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nmdc_schema
3
- Version: 11.13.0
3
+ Version: 11.14.0rc1
4
4
  Summary: Schema resources for the National Microbiome Data Collaborative (NMDC)
5
5
  License: MIT
6
6
  License-File: LICENSE
@@ -42,6 +42,7 @@ nmdc_schema/migrators/migrator_from_10_6_0_to_10_7_0.py,sha256=-FduiWWIioYFQ2eST
42
42
  nmdc_schema/migrators/migrator_from_11_0_3_to_11_1_0.py,sha256=3hHXGts_sfre4KuIpGCUNyRMgI92_lXm_U2UStU-fdw,1184
43
43
  nmdc_schema/migrators/migrator_from_11_10_0_to_11_11_0.py,sha256=R4nUrhxRznukwKgkMQy8uuPzn-fE9AaQYNLLNsVOfTk,1354
44
44
  nmdc_schema/migrators/migrator_from_11_11_0_to_11_13_0.py,sha256=p0giuWeWOvxLe22T0QXNWxjzWWqgzJ1ZetpdVCz86IY,1354
45
+ nmdc_schema/migrators/migrator_from_11_13_0_to_11_14_0.py,sha256=vUYKEMbfzBiNFlR7mEckwRcuM0cyUCfifom7Xn_kWMY,5002
45
46
  nmdc_schema/migrators/migrator_from_11_1_0_to_11_2_0.py,sha256=xGaG0oilg0Xvq-P6YOZea3EPQU8fyfcKo-KZl4BhgoM,1183
46
47
  nmdc_schema/migrators/migrator_from_11_3_0_to_11_4_0.py,sha256=XDRsT9KrKlZTOGHQekESZ2XSYD2UDydF1PWTRIeqOVE,1985
47
48
  nmdc_schema/migrators/migrator_from_11_4_0_to_11_5_0.py,sha256=uiFi5USF23lpuAbkDhVufnXxLsM-Aixrj4nw7GY-XO4,357
@@ -107,18 +108,18 @@ nmdc_schema/migrators/partials/migrator_from_11_9_1_to_11_10_0/__init__.py,sha25
107
108
  nmdc_schema/migrators/partials/migrator_from_11_9_1_to_11_10_0/migrator_from_11_9_1_to_11_10_0_part_1.py,sha256=6MYmrB9yfJ3XFb2QabTcJeycK2tyVO3MtSItns2s9Zg,35421
108
109
  nmdc_schema/migrators/partials/migrator_from_11_9_1_to_11_10_0/migrator_from_11_9_1_to_11_10_0_part_2.py,sha256=wzard2sUTeRS7voVTfPt3_OtafTffnv0o0OyE1OBzA0,2987
109
110
  nmdc_schema/migrators/partials/migrator_from_11_9_1_to_11_10_0/migrator_from_11_9_1_to_11_10_0_part_3.py,sha256=crm2NEmn0xepEMKWHvCSkfX3G6hRn377f38rq24XlO8,3710
110
- nmdc_schema/nmdc-pydantic.py,sha256=dQoo1bJBuS5Ty3XzQtY3R2ncdAXw5oG2R5hNsUlD65k,1450830
111
- nmdc_schema/nmdc.py,sha256=2TJmzEsPmqlCmu5nDeuNp3V2CeylaoPlCPSyU1MssEc,737930
112
- nmdc_schema/nmdc.schema.json,sha256=16LurO8g4cN9XlbNmj4gGxN3b0xoAgIA1_ZZ2ISiUhQ,630117
111
+ nmdc_schema/nmdc-pydantic.py,sha256=KsCmfMksl-cw4Z117-q3cHhEc8Oo4xzGJXnKaUVoDfI,1449828
112
+ nmdc_schema/nmdc.py,sha256=ZqLvE_GJFJXJHvRlEW_XX716RCW5Yy6BRps-RQErro4,737461
113
+ nmdc_schema/nmdc.schema.json,sha256=JsUcoZvBYBU94OqjRp9tIgNsfFblEEy5-VAoUki65Ho,630048
113
114
  nmdc_schema/nmdc_data.py,sha256=_wNKi5NDxuvvRsJEim2ialX7VJkDBJLRpiTOPpFHBm8,9608
114
- nmdc_schema/nmdc_materialized_patterns.json,sha256=isiIXZdo0gq6mPmUY12DNL-TqkwPxPuzfHwgimPKbr4,913170
115
- nmdc_schema/nmdc_materialized_patterns.schema.json,sha256=1eVg49IoSY3ejgEehY0KXPSA2zr_diGz2b-SdvrPPbI,639442
116
- nmdc_schema/nmdc_materialized_patterns.yaml,sha256=c5C03aM1Vqbt5BdXe105YONT5ghe679AhVo3NDow2B8,709694
115
+ nmdc_schema/nmdc_materialized_patterns.json,sha256=zmYoq8BL4PdUCVn4dQdN7pM11gdFFNIvBw2Ih5RKkpY,912372
116
+ nmdc_schema/nmdc_materialized_patterns.schema.json,sha256=1SxFfOBnB9fuyfcihHikDbs2pd3X7Oa3bROai1ZmHUg,639373
117
+ nmdc_schema/nmdc_materialized_patterns.yaml,sha256=tIyM9hg9PLfTe2O3XFWL3V8f6su0wLT_8eKN8H0QNJ4,708950
117
118
  nmdc_schema/nmdc_schema_validation_plugin.py,sha256=rjtn1tYhngGyc1AV8vcT8BJ9a_MmHbcK3hRUf9dzPtA,4799
118
119
  nmdc_schema/nmdc_version.py,sha256=DsfEKnmN3LHR831WWELxyfZY6rnP9U8tfygamkrsaHY,2305
119
120
  nmdc_schema/validate_nmdc_json.py,sha256=PVJV2O1qQXMi206HaUKqRNLiLc164OpNYKPURSKN8_E,3148
120
- nmdc_schema-11.13.0.dist-info/METADATA,sha256=zR2pMlG9SDIDlHH3i4ptpC6QYbC2JyK3hApj3rEOaRc,5850
121
- nmdc_schema-11.13.0.dist-info/WHEEL,sha256=zp0Cn7JsFoX2ATtOhtaFYIiE2rmFAD4OcMhtUki8W3U,88
122
- nmdc_schema-11.13.0.dist-info/entry_points.txt,sha256=-UOl7vTEjS6eaJreIu_UenULpuKAYz8JiLeuKbEqPB8,2079
123
- nmdc_schema-11.13.0.dist-info/licenses/LICENSE,sha256=ogEPNDSH0_dhiv_lT3ifVIdgIzHAqNA_SemnxUfPBJk,7048
124
- nmdc_schema-11.13.0.dist-info/RECORD,,
121
+ nmdc_schema-11.14.0rc1.dist-info/METADATA,sha256=t4DH8Zj0l7cEMHXQikzWicxyNiyhEL3wSPI2JlSdeW0,5853
122
+ nmdc_schema-11.14.0rc1.dist-info/WHEEL,sha256=zp0Cn7JsFoX2ATtOhtaFYIiE2rmFAD4OcMhtUki8W3U,88
123
+ nmdc_schema-11.14.0rc1.dist-info/entry_points.txt,sha256=-UOl7vTEjS6eaJreIu_UenULpuKAYz8JiLeuKbEqPB8,2079
124
+ nmdc_schema-11.14.0rc1.dist-info/licenses/LICENSE,sha256=ogEPNDSH0_dhiv_lT3ifVIdgIzHAqNA_SemnxUfPBJk,7048
125
+ nmdc_schema-11.14.0rc1.dist-info/RECORD,,