nmdc-schema 11.15.0__py3-none-any.whl → 11.16.0__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.
- nmdc_schema/migrators/migrator_from_11_14_0_to_11_15_1.py +12 -0
- nmdc_schema/migrators/migrator_from_11_15_1_to_11_16_0.py +28 -0
- nmdc_schema/nmdc.py +12 -9
- nmdc_schema/nmdc.schema.json +12 -5
- nmdc_schema/nmdc_materialized_patterns.json +68 -53
- nmdc_schema/nmdc_materialized_patterns.schema.json +34 -28
- nmdc_schema/nmdc_materialized_patterns.yaml +60 -52
- nmdc_schema/nmdc_pydantic.py +56 -75
- {nmdc_schema-11.15.0.dist-info → nmdc_schema-11.16.0.dist-info}/METADATA +3 -1
- {nmdc_schema-11.15.0.dist-info → nmdc_schema-11.16.0.dist-info}/RECORD +13 -11
- {nmdc_schema-11.15.0.dist-info → nmdc_schema-11.16.0.dist-info}/WHEEL +1 -1
- {nmdc_schema-11.15.0.dist-info → nmdc_schema-11.16.0.dist-info}/entry_points.txt +0 -0
- {nmdc_schema-11.15.0.dist-info → nmdc_schema-11.16.0.dist-info}/licenses/LICENSE +0 -0
nmdc_schema/nmdc_pydantic.py
CHANGED
|
@@ -30,7 +30,7 @@ from pydantic import (
|
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
metamodel_version = "None"
|
|
33
|
-
version = "11.
|
|
33
|
+
version = "11.16.0"
|
|
34
34
|
|
|
35
35
|
|
|
36
36
|
class ConfiguredBaseModel(BaseModel):
|
|
@@ -307,12 +307,12 @@ linkml_meta = LinkMLMeta({'default_prefix': 'nmdc',
|
|
|
307
307
|
'xsd': {'prefix_prefix': 'xsd',
|
|
308
308
|
'prefix_reference': 'http://www.w3.org/2001/XMLSchema#'}},
|
|
309
309
|
'settings': {'DOI': {'setting_key': 'DOI',
|
|
310
|
-
'setting_value': '
|
|
310
|
+
'setting_value': 'doi:10.\\d{2,9}/.*'},
|
|
311
311
|
'NCBItaxon_id': {'setting_key': 'NCBItaxon_id',
|
|
312
312
|
'setting_value': 'NCBITaxon:\\d+'},
|
|
313
|
-
'PMID': {'setting_key': 'PMID', 'setting_value': '
|
|
313
|
+
'PMID': {'setting_key': 'PMID', 'setting_value': 'PMID:\\d+'},
|
|
314
314
|
'URL': {'setting_key': 'URL',
|
|
315
|
-
'setting_value': '
|
|
315
|
+
'setting_value': 'https?:\\/\\/(?:www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b(?:[-a-zA-Z0-9()@:%_\\+.~#?&\\/=]*)'},
|
|
316
316
|
'add_recov_methods': {'setting_key': 'add_recov_methods',
|
|
317
317
|
'setting_value': 'Water Injection|Dump '
|
|
318
318
|
'Flood|Gas Injection|Wag '
|
|
@@ -330,7 +330,7 @@ linkml_meta = LinkMLMeta({'default_prefix': 'nmdc',
|
|
|
330
330
|
'country': {'setting_key': 'country',
|
|
331
331
|
'setting_value': '([^\\s-]{1,2}|[^\\s-]+.+[^\\s-]+)'},
|
|
332
332
|
'date_time_stamp': {'setting_key': 'date_time_stamp',
|
|
333
|
-
'setting_value': '(\\d{4})(-(0[1-9]|1[0-2])(-(0[1-9]|[12]\\d|3[01])(T([01]\\d|2[0-3]):([0-5]\\d):([0-5]\\d)(\\.\\d+)?(Z|([+-][01]\\d:[0-5]\\d))?)?)?)
|
|
333
|
+
'setting_value': '(\\d{4})(-(0[1-9]|1[0-2])(-(0[1-9]|[12]\\d|3[01])(T([01]\\d|2[0-3]):([0-5]\\d)(:([0-5]\\d))?(\\.\\d+)?(Z|([+-][01]\\d:[0-5]\\d))?)?)?)?'},
|
|
334
334
|
'dna_bases': {'setting_key': 'dna_bases',
|
|
335
335
|
'setting_value': '[ACGT]'},
|
|
336
336
|
'duration': {'setting_key': 'duration',
|
|
@@ -379,6 +379,8 @@ linkml_meta = LinkMLMeta({'default_prefix': 'nmdc',
|
|
|
379
379
|
'termLabel': {'setting_key': 'termLabel',
|
|
380
380
|
'setting_value': '([^\\s-]{1,2}|[^\\s-]+.+[^\\s-]+)'},
|
|
381
381
|
'text': {'setting_key': 'text', 'setting_value': '.*'},
|
|
382
|
+
'timestamp': {'setting_key': 'timestamp',
|
|
383
|
+
'setting_value': '(\\d{4})(-(0[1-9]|1[0-2])(-(0[1-9]|[12]\\d|3[01])(T([01]\\d|2[0-3]):([0-5]\\d)(:([0-5]\\d))?(\\.\\d+)?(Z|([+-][01]\\d:[0-5]\\d))?)?)?)?'},
|
|
382
384
|
'unit': {'setting_key': 'unit',
|
|
383
385
|
'setting_value': '([^\\s-]{1,2}|[^\\s-]+.+[^\\s-]+)'},
|
|
384
386
|
'version': {'setting_key': 'version',
|
|
@@ -648,6 +650,7 @@ class CalibrationTargetEnum(str, Enum):
|
|
|
648
650
|
class CalibrationStandardEnum(str, Enum):
|
|
649
651
|
fames = "fames"
|
|
650
652
|
alkanes = "alkanes"
|
|
653
|
+
srfa = "srfa"
|
|
651
654
|
|
|
652
655
|
|
|
653
656
|
class StrandedOrientationEnum(str, Enum):
|
|
@@ -8937,17 +8940,10 @@ class Biosample(Sample):
|
|
|
8937
8940
|
"property. It's just a "
|
|
8938
8941
|
'biogeochemical measurement.']},
|
|
8939
8942
|
'heavy_metals_meth': {'comments': ['Required when heavy metals '
|
|
8940
|
-
'are provided',
|
|
8941
|
-
'If different methods are '
|
|
8942
|
-
'used for multiple metals, '
|
|
8943
|
-
'indicate the metal and '
|
|
8944
|
-
'method. Separate metals by '
|
|
8945
|
-
';'],
|
|
8943
|
+
'are provided'],
|
|
8946
8944
|
'examples': [{'value': 'https://doi.org/10.3390/ijms9040434'},
|
|
8947
|
-
{'value': '
|
|
8948
|
-
|
|
8949
|
-
'chromium '
|
|
8950
|
-
'https://doi.org/10.1007/s00216-006-0322-8'}],
|
|
8945
|
+
{'value': 'doi:10.1007/BF01056090'},
|
|
8946
|
+
{'value': 'https://doi.org/10.1007/s00216-006-0322-8'}],
|
|
8951
8947
|
'multivalued': True,
|
|
8952
8948
|
'name': 'heavy_metals_meth',
|
|
8953
8949
|
'title': 'heavy metals method/ extreme '
|
|
@@ -9305,7 +9301,7 @@ class Biosample(Sample):
|
|
|
9305
9301
|
'slot_uri': 'MIXS:0000324',
|
|
9306
9302
|
'structured_pattern': {'interpolated': True,
|
|
9307
9303
|
'partial_match': True,
|
|
9308
|
-
'syntax': '^{PMID}|{DOI}|{URL}$'},
|
|
9304
|
+
'syntax': '^({PMID}|{DOI}|{URL})$'},
|
|
9309
9305
|
'todos': ["I think it's weird the way GSC writes the title. I recommend this "
|
|
9310
9306
|
'change. Thoughts?']} })
|
|
9311
9307
|
alkalinity: Optional[QuantityValue] = Field(default=None, title="alkalinity", description="""Alkalinity, the ability of a solution to neutralize acids to the equivalence point of carbonate or bicarbonate""", json_schema_extra = { "linkml_meta": {'annotations': {'Preferred_unit': {'tag': 'Preferred_unit',
|
|
@@ -9864,7 +9860,7 @@ class Biosample(Sample):
|
|
|
9864
9860
|
'keywords': ['culture'],
|
|
9865
9861
|
'slot_uri': 'MIXS:0001041',
|
|
9866
9862
|
'structured_pattern': {'interpolated': True,
|
|
9867
|
-
'syntax': '^{text}|{PMID}|{DOI}|{URL}$'}} })
|
|
9863
|
+
'syntax': '^({text}|{PMID}|{DOI}|{URL})$'}} })
|
|
9868
9864
|
cur_land_use: Optional[str] = Field(default=None, title="current land use", description="""Present state of sample site""", json_schema_extra = { "linkml_meta": {'annotations': {'Expected_value': {'tag': 'Expected_value',
|
|
9869
9865
|
'value': 'enumeration'}},
|
|
9870
9866
|
'domain_of': ['Biosample'],
|
|
@@ -9914,7 +9910,7 @@ class Biosample(Sample):
|
|
|
9914
9910
|
'slot_uri': 'MIXS:0000314',
|
|
9915
9911
|
'structured_pattern': {'interpolated': True,
|
|
9916
9912
|
'partial_match': True,
|
|
9917
|
-
'syntax': '^{PMID}|{DOI}|{URL}$'},
|
|
9913
|
+
'syntax': '^({PMID}|{DOI}|{URL})$'},
|
|
9918
9914
|
'todos': ["I'm not sure this is a DOI, PMID, or URI. Should pool the "
|
|
9919
9915
|
'community and find out how they accomplish this if provided.']} })
|
|
9920
9916
|
date_last_rain: Optional[TimestampValue] = Field(default=None, title="date last rain", description="""The date of the last time it rained""", json_schema_extra = { "linkml_meta": {'domain_of': ['Biosample'],
|
|
@@ -10444,9 +10440,9 @@ class Biosample(Sample):
|
|
|
10444
10440
|
'partial_match': True,
|
|
10445
10441
|
'syntax': '^{scientific_float}( *- '
|
|
10446
10442
|
'*{scientific_float})? *{text}$'}} })
|
|
10447
|
-
freq_clean: Optional[QuantityValue] = Field(default=None, title="frequency of cleaning", description="""The number of times the sample location is cleaned
|
|
10443
|
+
freq_clean: Optional[QuantityValue] = Field(default=None, title="frequency of cleaning", description="""The number of times the sample location is cleaned per day.""", json_schema_extra = { "linkml_meta": {'annotations': {'storage_units': {'tag': 'storage_units', 'value': '1/d'}},
|
|
10448
10444
|
'domain_of': ['Biosample'],
|
|
10449
|
-
'examples': [{'value': '
|
|
10445
|
+
'examples': [{'value': '2 1/d'}],
|
|
10450
10446
|
'keywords': ['frequency'],
|
|
10451
10447
|
'slot_uri': 'MIXS:0000226'} })
|
|
10452
10448
|
freq_cook: Optional[QuantityValue] = Field(default=None, title="frequency of cooking", description="""The number of times a meal is cooked per week""", json_schema_extra = { "linkml_meta": {'annotations': {'storage_units': {'tag': 'storage_units', 'value': '1/d'}},
|
|
@@ -10494,7 +10490,8 @@ class Biosample(Sample):
|
|
|
10494
10490
|
genetic_mod: Optional[str] = Field(default=None, title="genetic modification", description="""Genetic modifications of the genome of an organism, which may occur naturally by spontaneous mutation, or be introduced by some experimental means, e.g. specification of a transgene or the gene knocked-out or details of transient transfection""", json_schema_extra = { "linkml_meta": {'domain_of': ['Biosample'],
|
|
10495
10491
|
'examples': [{'value': 'PMID:19497774'}],
|
|
10496
10492
|
'slot_uri': 'MIXS:0000859',
|
|
10497
|
-
'structured_pattern': {'interpolated': True,
|
|
10493
|
+
'structured_pattern': {'interpolated': True,
|
|
10494
|
+
'syntax': '^({PMID}|{DOI}|{URL})$'}} })
|
|
10498
10495
|
geo_loc_name: Optional[TextValue] = Field(default=None, title="geographic location (country and/or sea,region)", description="""The geographical origin of the sample as defined by the country or sea name followed by specific region name. Country or sea names should be chosen from the INSDC country list (http://insdc.org/country.html), or the GAZ ontology (http://purl.bioontology.org/ontology/GAZ)""", json_schema_extra = { "linkml_meta": {'domain_of': ['FieldResearchSite', 'Biosample'],
|
|
10499
10496
|
'examples': [{'value': 'USA: Maryland, Bethesda'}],
|
|
10500
10497
|
'keywords': ['geographic', 'location'],
|
|
@@ -10629,18 +10626,16 @@ class Biosample(Sample):
|
|
|
10629
10626
|
"I think it's weird the way GSC writes the title. I recommend this "
|
|
10630
10627
|
"change. Thoughts? I would argue this isn't an extreme unusual "
|
|
10631
10628
|
"property. It's just a biogeochemical measurement."]} })
|
|
10632
|
-
heavy_metals_meth: Optional[list[str]] = Field(default=[], title="heavy metals method/ extreme unusual properties", description="""Reference or method used in determining heavy metals""", json_schema_extra = { "linkml_meta": {'comments': ['Required when heavy metals are provided',
|
|
10633
|
-
'If different methods are used for multiple metals, indicate the '
|
|
10634
|
-
'metal and method. Separate metals by ;'],
|
|
10629
|
+
heavy_metals_meth: Optional[list[str]] = Field(default=[], title="heavy metals method/ extreme unusual properties", description="""Reference or method used in determining heavy metals""", json_schema_extra = { "linkml_meta": {'comments': ['Required when heavy metals are provided'],
|
|
10635
10630
|
'domain_of': ['Biosample'],
|
|
10636
10631
|
'examples': [{'value': 'https://doi.org/10.3390/ijms9040434'},
|
|
10637
|
-
{'value': '
|
|
10638
|
-
|
|
10632
|
+
{'value': 'doi:10.1007/BF01056090'},
|
|
10633
|
+
{'value': 'https://doi.org/10.1007/s00216-006-0322-8'}],
|
|
10639
10634
|
'keywords': ['extreme', 'method', 'properties', 'unusual'],
|
|
10640
10635
|
'slot_uri': 'MIXS:0000343',
|
|
10641
10636
|
'structured_pattern': {'interpolated': True,
|
|
10642
10637
|
'partial_match': True,
|
|
10643
|
-
'syntax': '^{PMID}|{DOI}|{URL}$'}} })
|
|
10638
|
+
'syntax': '^({PMID}|{DOI}|{URL})$'}} })
|
|
10644
10639
|
height_carper_fiber: Optional[QuantityValue] = Field(default=None, title="height carpet fiber mat", description="""The average carpet fiber height in the indoor environment""", json_schema_extra = { "linkml_meta": {'annotations': {'Preferred_unit': {'tag': 'Preferred_unit',
|
|
10645
10640
|
'value': 'centimeter'},
|
|
10646
10641
|
'storage_units': {'tag': 'storage_units', 'value': 'cm'}},
|
|
@@ -10664,7 +10659,7 @@ class Biosample(Sample):
|
|
|
10664
10659
|
'slot_uri': 'MIXS:0000321',
|
|
10665
10660
|
'structured_pattern': {'interpolated': True,
|
|
10666
10661
|
'partial_match': True,
|
|
10667
|
-
'syntax': '^{PMID}|{DOI}|{URL}$'}} })
|
|
10662
|
+
'syntax': '^({PMID}|{DOI}|{URL})$'}} })
|
|
10668
10663
|
host_age: Optional[QuantityValue] = Field(default=None, title="host age", description="""Age of host at the time of sampling; relevant scale depends on species and study, e.g. Could be seconds for amoebae or centuries for trees""", json_schema_extra = { "linkml_meta": {'annotations': {'Preferred_unit': {'tag': 'Preferred_unit',
|
|
10669
10664
|
'value': 'year, day, hour'},
|
|
10670
10665
|
'storage_units': {'tag': 'storage_units', 'value': 'a|d|h'}},
|
|
@@ -10741,7 +10736,7 @@ class Biosample(Sample):
|
|
|
10741
10736
|
'slot_uri': 'MIXS:0000871',
|
|
10742
10737
|
'structured_pattern': {'interpolated': True,
|
|
10743
10738
|
'partial_match': True,
|
|
10744
|
-
'syntax': '^{PMID}|{DOI}|{URL}|{text}$'}} })
|
|
10739
|
+
'syntax': '^({PMID}|{DOI}|{URL}|{text})$'}} })
|
|
10745
10740
|
host_height: Optional[QuantityValue] = Field(default=None, title="host height", description="""The height of subject""", json_schema_extra = { "linkml_meta": {'annotations': {'Preferred_unit': {'tag': 'Preferred_unit',
|
|
10746
10741
|
'value': 'centimeter, millimeter, meter'},
|
|
10747
10742
|
'storage_units': {'tag': 'storage_units', 'value': 'cm|m|mm'}},
|
|
@@ -10969,7 +10964,7 @@ class Biosample(Sample):
|
|
|
10969
10964
|
'slot_uri': 'MIXS:0000340',
|
|
10970
10965
|
'structured_pattern': {'interpolated': True,
|
|
10971
10966
|
'partial_match': True,
|
|
10972
|
-
'syntax': '^{PMID}|{DOI}|{URL}$'}} })
|
|
10967
|
+
'syntax': '^({PMID}|{DOI}|{URL})$'}} })
|
|
10973
10968
|
link_class_info: Optional[str] = Field(default=None, title="link to classification information", description="""Link to digitized soil maps or other soil classification information""", json_schema_extra = { "linkml_meta": {'annotations': {'Expected_value': {'tag': 'Expected_value',
|
|
10974
10969
|
'value': 'PMID,DOI or url'}},
|
|
10975
10970
|
'domain_of': ['Biosample'],
|
|
@@ -10981,7 +10976,7 @@ class Biosample(Sample):
|
|
|
10981
10976
|
'slot_uri': 'MIXS:0000328',
|
|
10982
10977
|
'structured_pattern': {'interpolated': True,
|
|
10983
10978
|
'partial_match': True,
|
|
10984
|
-
'syntax': '^{PMID}|{DOI}|{URL}$'}} })
|
|
10979
|
+
'syntax': '^({PMID}|{DOI}|{URL})$'}} })
|
|
10985
10980
|
lithology: Optional[LithologyEnum] = Field(default=None, title="lithology", description="""Hydrocarbon resource main lithology (Additional information: http://petrowiki.org/Lithology_and_rock_type_determination). If \"other\" is specified, please propose entry in \"additional info\" field""", json_schema_extra = { "linkml_meta": {'domain_of': ['Biosample'],
|
|
10986
10981
|
'examples': [{'value': 'Volcanic'}],
|
|
10987
10982
|
'keywords': ['lithology'],
|
|
@@ -10997,7 +10992,7 @@ class Biosample(Sample):
|
|
|
10997
10992
|
'slot_uri': 'MIXS:0000331',
|
|
10998
10993
|
'structured_pattern': {'interpolated': True,
|
|
10999
10994
|
'partial_match': True,
|
|
11000
|
-
'syntax': '^{PMID}|{DOI}|{URL}$'}} })
|
|
10995
|
+
'syntax': '^({PMID}|{DOI}|{URL})$'}} })
|
|
11001
10996
|
magnesium: Optional[QuantityValue] = Field(default=None, title="magnesium", description="""Concentration of magnesium in the sample""", json_schema_extra = { "linkml_meta": {'annotations': {'Preferred_unit': {'tag': 'Preferred_unit',
|
|
11002
10997
|
'value': 'mole per liter, milligram per '
|
|
11003
10998
|
'liter, parts per million, '
|
|
@@ -11492,11 +11487,11 @@ class Biosample(Sample):
|
|
|
11492
11487
|
'slot_uri': 'MIXS:0000316',
|
|
11493
11488
|
'structured_pattern': {'interpolated': True,
|
|
11494
11489
|
'partial_match': True,
|
|
11495
|
-
'syntax': '^{PMID}|{DOI}|{URL}$'}} })
|
|
11490
|
+
'syntax': '^({PMID}|{DOI}|{URL})$'}} })
|
|
11496
11491
|
previous_land_use: Optional[str] = Field(default=None, title="history/previous land use", description="""Previous land use and dates""", json_schema_extra = { "linkml_meta": {'annotations': {'Expected_value': {'tag': 'Expected_value',
|
|
11497
11492
|
'value': 'land use name;date'}},
|
|
11498
11493
|
'domain_of': ['Biosample'],
|
|
11499
|
-
'examples': [{'value': 'fallow;
|
|
11494
|
+
'examples': [{'value': 'fallow;2018-05-11T14:30Z'}],
|
|
11500
11495
|
'keywords': ['history', 'land', 'use'],
|
|
11501
11496
|
'slot_uri': 'MIXS:0000315',
|
|
11502
11497
|
'string_serialization': '{text};{timestamp}'} })
|
|
@@ -11728,7 +11723,7 @@ class Biosample(Sample):
|
|
|
11728
11723
|
'slot_uri': 'MIXS:0001061',
|
|
11729
11724
|
'structured_pattern': {'interpolated': True,
|
|
11730
11725
|
'partial_match': True,
|
|
11731
|
-
'syntax': '^{PMID}|{DOI}|{URL}|{text}$'}} })
|
|
11726
|
+
'syntax': '^({PMID}|{DOI}|{URL}|{text})$'}} })
|
|
11732
11727
|
root_med_carbon: Optional[TextValue] = Field(default=None, title="rooting medium carbon", description="""Source of organic carbon in the culture rooting medium; e.g. sucrose""", json_schema_extra = { "linkml_meta": {'annotations': {'Expected_value': {'tag': 'Expected_value',
|
|
11733
11728
|
'value': 'carbon source name;measurement '
|
|
11734
11729
|
'value'},
|
|
@@ -12290,8 +12285,7 @@ class Biosample(Sample):
|
|
|
12290
12285
|
store_cond: Optional[TextValue] = Field(default=None, title="storage conditions", description="""Explain how and for how long the soil sample was stored before DNA extraction (fresh/frozen/other)""", json_schema_extra = { "linkml_meta": {'domain_of': ['Biosample'],
|
|
12291
12286
|
'examples': [{'value': '-20 degree Celsius freezer;P2Y10D'}],
|
|
12292
12287
|
'keywords': ['condition', 'storage'],
|
|
12293
|
-
'slot_uri': 'MIXS:0000327'
|
|
12294
|
-
'structured_pattern': {'syntax': '^{storage_condition_type};{duration}$'}} })
|
|
12288
|
+
'slot_uri': 'MIXS:0000327'} })
|
|
12295
12289
|
substructure_type: Optional[list[SubstructureTypeEnum]] = Field(default=[], title="substructure type", description="""The substructure or under building is that largely hidden section of the building which is built off the foundations to the ground floor level""", json_schema_extra = { "linkml_meta": {'domain_of': ['Biosample'],
|
|
12296
12290
|
'examples': [{'value': 'basement'}],
|
|
12297
12291
|
'keywords': ['type'],
|
|
@@ -12458,7 +12452,7 @@ class Biosample(Sample):
|
|
|
12458
12452
|
'slot_uri': 'MIXS:0001070',
|
|
12459
12453
|
'structured_pattern': {'interpolated': True,
|
|
12460
12454
|
'partial_match': True,
|
|
12461
|
-
'syntax': '^{PMID}|{DOI}|{URL}|{text}$'}} })
|
|
12455
|
+
'syntax': '^({PMID}|{DOI}|{URL}|{text})$'}} })
|
|
12462
12456
|
toluene: Optional[QuantityValue] = Field(default=None, title="toluene", description="""Concentration of toluene in the sample""", json_schema_extra = { "linkml_meta": {'annotations': {'Preferred_unit': {'tag': 'Preferred_unit',
|
|
12463
12457
|
'value': 'milligram per liter, parts per '
|
|
12464
12458
|
'million'},
|
|
@@ -12550,7 +12544,7 @@ class Biosample(Sample):
|
|
|
12550
12544
|
'slot_uri': 'MIXS:0000338',
|
|
12551
12545
|
'structured_pattern': {'interpolated': True,
|
|
12552
12546
|
'partial_match': True,
|
|
12553
|
-
'syntax': '^{PMID}|{DOI}|{URL}$'}} })
|
|
12547
|
+
'syntax': '^({PMID}|{DOI}|{URL})$'}} })
|
|
12554
12548
|
tot_nitro_content: Optional[QuantityValue] = Field(default=None, title="total nitrogen content", description="""Total nitrogen content of the sample""", json_schema_extra = { "linkml_meta": {'annotations': {'storage_units': {'tag': 'storage_units',
|
|
12555
12549
|
'value': 'mg/L|ug/L|umol/L|%'}},
|
|
12556
12550
|
'domain_of': ['Biosample'],
|
|
@@ -12567,7 +12561,7 @@ class Biosample(Sample):
|
|
|
12567
12561
|
'slot_uri': 'MIXS:0000337',
|
|
12568
12562
|
'structured_pattern': {'interpolated': True,
|
|
12569
12563
|
'partial_match': True,
|
|
12570
|
-
'syntax': '^{PMID}|{DOI}|{URL}$'}} })
|
|
12564
|
+
'syntax': '^({PMID}|{DOI}|{URL})$'}} })
|
|
12571
12565
|
tot_org_carb: Optional[QuantityValue] = Field(default=None, title="total organic carbon", description="""Total organic carbon content""", json_schema_extra = { "linkml_meta": {'annotations': {'Preferred_unit': {'tag': 'Preferred_unit',
|
|
12572
12566
|
'value': 'gram Carbon per kilogram sample '
|
|
12573
12567
|
'material'},
|
|
@@ -13529,7 +13523,7 @@ class Biosample(Sample):
|
|
|
13529
13523
|
|
|
13530
13524
|
@field_validator('add_recov_method')
|
|
13531
13525
|
def pattern_add_recov_method(cls, v):
|
|
13532
|
-
pattern=re.compile(r"^(Water Injection|Dump Flood|Gas Injection|Wag Immiscible Injection|Polymer Addition|Surfactant Addition|Not Applicable|other);(\d{4})(-(0[1-9]|1[0-2])(-(0[1-9]|[12]\d|3[01])(T([01]\d|2[0-3]):([0-5]\d):([0-5]\d)(\.\d+)?(Z|([+-][01]\d:[0-5]\d))?)?)?)
|
|
13526
|
+
pattern=re.compile(r"^(Water Injection|Dump Flood|Gas Injection|Wag Immiscible Injection|Polymer Addition|Surfactant Addition|Not Applicable|other);(\d{4})(-(0[1-9]|1[0-2])(-(0[1-9]|[12]\d|3[01])(T([01]\d|2[0-3]):([0-5]\d)(:([0-5]\d))?(\.\d+)?(Z|([+-][01]\d:[0-5]\d))?)?)?)?$")
|
|
13533
13527
|
if isinstance(v, list):
|
|
13534
13528
|
for element in v:
|
|
13535
13529
|
if isinstance(element, str) and not pattern.match(element):
|
|
@@ -13568,7 +13562,7 @@ class Biosample(Sample):
|
|
|
13568
13562
|
|
|
13569
13563
|
@field_validator('agrochem_addition')
|
|
13570
13564
|
def pattern_agrochem_addition(cls, v):
|
|
13571
|
-
pattern=re.compile(r"^.*;[-+]?[0-9]*\.?[0-9]+ ([^\s-]{1,2}|[^\s-]+.+[^\s-]+);(\d{4})(-(0[1-9]|1[0-2])(-(0[1-9]|[12]\d|3[01])(T([01]\d|2[0-3]):([0-5]\d):([0-5]\d)(\.\d+)?(Z|([+-][01]\d:[0-5]\d))?)?)?)
|
|
13565
|
+
pattern=re.compile(r"^.*;[-+]?[0-9]*\.?[0-9]+ ([^\s-]{1,2}|[^\s-]+.+[^\s-]+);(\d{4})(-(0[1-9]|1[0-2])(-(0[1-9]|[12]\d|3[01])(T([01]\d|2[0-3]):([0-5]\d)(:([0-5]\d))?(\.\d+)?(Z|([+-][01]\d:[0-5]\d))?)?)?)?$")
|
|
13572
13566
|
if isinstance(v, list):
|
|
13573
13567
|
for element in v:
|
|
13574
13568
|
if isinstance(element, str) and not pattern.match(element):
|
|
@@ -13620,7 +13614,7 @@ class Biosample(Sample):
|
|
|
13620
13614
|
|
|
13621
13615
|
@field_validator('al_sat_meth')
|
|
13622
13616
|
def pattern_al_sat_meth(cls, v):
|
|
13623
|
-
pattern=re.compile(r"
|
|
13617
|
+
pattern=re.compile(r"^(PMID:\d+|doi:10.\d{2,9}/.*|https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*))$")
|
|
13624
13618
|
if isinstance(v, list):
|
|
13625
13619
|
for element in v:
|
|
13626
13620
|
if isinstance(element, str) and not pattern.match(element):
|
|
@@ -14062,7 +14056,7 @@ class Biosample(Sample):
|
|
|
14062
14056
|
|
|
14063
14057
|
@field_validator('cult_root_med')
|
|
14064
14058
|
def pattern_cult_root_med(cls, v):
|
|
14065
|
-
pattern=re.compile(r"
|
|
14059
|
+
pattern=re.compile(r"^(.*|PMID:\d+|doi:10.\d{2,9}/.*|https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*))$")
|
|
14066
14060
|
if isinstance(v, list):
|
|
14067
14061
|
for element in v:
|
|
14068
14062
|
if isinstance(element, str) and not pattern.match(element):
|
|
@@ -14075,7 +14069,7 @@ class Biosample(Sample):
|
|
|
14075
14069
|
|
|
14076
14070
|
@field_validator('cur_vegetation_meth')
|
|
14077
14071
|
def pattern_cur_vegetation_meth(cls, v):
|
|
14078
|
-
pattern=re.compile(r"
|
|
14072
|
+
pattern=re.compile(r"^(PMID:\d+|doi:10.\d{2,9}/.*|https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*))$")
|
|
14079
14073
|
if isinstance(v, list):
|
|
14080
14074
|
for element in v:
|
|
14081
14075
|
if isinstance(element, str) and not pattern.match(element):
|
|
@@ -14478,7 +14472,7 @@ class Biosample(Sample):
|
|
|
14478
14472
|
|
|
14479
14473
|
@field_validator('genetic_mod')
|
|
14480
14474
|
def pattern_genetic_mod(cls, v):
|
|
14481
|
-
pattern=re.compile(r"
|
|
14475
|
+
pattern=re.compile(r"^(PMID:\d+|doi:10.\d{2,9}/.*|https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*))$")
|
|
14482
14476
|
if isinstance(v, list):
|
|
14483
14477
|
for element in v:
|
|
14484
14478
|
if isinstance(element, str) and not pattern.match(element):
|
|
@@ -14556,7 +14550,7 @@ class Biosample(Sample):
|
|
|
14556
14550
|
|
|
14557
14551
|
@field_validator('heavy_metals_meth')
|
|
14558
14552
|
def pattern_heavy_metals_meth(cls, v):
|
|
14559
|
-
pattern=re.compile(r"
|
|
14553
|
+
pattern=re.compile(r"^(PMID:\d+|doi:10.\d{2,9}/.*|https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*))$")
|
|
14560
14554
|
if isinstance(v, list):
|
|
14561
14555
|
for element in v:
|
|
14562
14556
|
if isinstance(element, str) and not pattern.match(element):
|
|
@@ -14582,7 +14576,7 @@ class Biosample(Sample):
|
|
|
14582
14576
|
|
|
14583
14577
|
@field_validator('horizon_meth')
|
|
14584
14578
|
def pattern_horizon_meth(cls, v):
|
|
14585
|
-
pattern=re.compile(r"
|
|
14579
|
+
pattern=re.compile(r"^(PMID:\d+|doi:10.\d{2,9}/.*|https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*))$")
|
|
14586
14580
|
if isinstance(v, list):
|
|
14587
14581
|
for element in v:
|
|
14588
14582
|
if isinstance(element, str) and not pattern.match(element):
|
|
@@ -14634,7 +14628,7 @@ class Biosample(Sample):
|
|
|
14634
14628
|
|
|
14635
14629
|
@field_validator('host_growth_cond')
|
|
14636
14630
|
def pattern_host_growth_cond(cls, v):
|
|
14637
|
-
pattern=re.compile(r"
|
|
14631
|
+
pattern=re.compile(r"^(PMID:\d+|doi:10.\d{2,9}/.*|https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*)|.*)$")
|
|
14638
14632
|
if isinstance(v, list):
|
|
14639
14633
|
for element in v:
|
|
14640
14634
|
if isinstance(element, str) and not pattern.match(element):
|
|
@@ -14777,7 +14771,7 @@ class Biosample(Sample):
|
|
|
14777
14771
|
|
|
14778
14772
|
@field_validator('link_addit_analys')
|
|
14779
14773
|
def pattern_link_addit_analys(cls, v):
|
|
14780
|
-
pattern=re.compile(r"
|
|
14774
|
+
pattern=re.compile(r"^(PMID:\d+|doi:10.\d{2,9}/.*|https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*))$")
|
|
14781
14775
|
if isinstance(v, list):
|
|
14782
14776
|
for element in v:
|
|
14783
14777
|
if isinstance(element, str) and not pattern.match(element):
|
|
@@ -14790,7 +14784,7 @@ class Biosample(Sample):
|
|
|
14790
14784
|
|
|
14791
14785
|
@field_validator('link_climate_info')
|
|
14792
14786
|
def pattern_link_climate_info(cls, v):
|
|
14793
|
-
pattern=re.compile(r"
|
|
14787
|
+
pattern=re.compile(r"^(PMID:\d+|doi:10.\d{2,9}/.*|https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*))$")
|
|
14794
14788
|
if isinstance(v, list):
|
|
14795
14789
|
for element in v:
|
|
14796
14790
|
if isinstance(element, str) and not pattern.match(element):
|
|
@@ -14803,7 +14797,7 @@ class Biosample(Sample):
|
|
|
14803
14797
|
|
|
14804
14798
|
@field_validator('local_class_meth')
|
|
14805
14799
|
def pattern_local_class_meth(cls, v):
|
|
14806
|
-
pattern=re.compile(r"
|
|
14800
|
+
pattern=re.compile(r"^(PMID:\d+|doi:10.\d{2,9}/.*|https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*))$")
|
|
14807
14801
|
if isinstance(v, list):
|
|
14808
14802
|
for element in v:
|
|
14809
14803
|
if isinstance(element, str) and not pattern.match(element):
|
|
@@ -15167,7 +15161,7 @@ class Biosample(Sample):
|
|
|
15167
15161
|
|
|
15168
15162
|
@field_validator('prev_land_use_meth')
|
|
15169
15163
|
def pattern_prev_land_use_meth(cls, v):
|
|
15170
|
-
pattern=re.compile(r"
|
|
15164
|
+
pattern=re.compile(r"^(PMID:\d+|doi:10.\d{2,9}/.*|https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*))$")
|
|
15171
15165
|
if isinstance(v, list):
|
|
15172
15166
|
for element in v:
|
|
15173
15167
|
if isinstance(element, str) and not pattern.match(element):
|
|
@@ -15362,7 +15356,7 @@ class Biosample(Sample):
|
|
|
15362
15356
|
|
|
15363
15357
|
@field_validator('root_cond')
|
|
15364
15358
|
def pattern_root_cond(cls, v):
|
|
15365
|
-
pattern=re.compile(r"
|
|
15359
|
+
pattern=re.compile(r"^(PMID:\d+|doi:10.\d{2,9}/.*|https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*)|.*)$")
|
|
15366
15360
|
if isinstance(v, list):
|
|
15367
15361
|
for element in v:
|
|
15368
15362
|
if isinstance(element, str) and not pattern.match(element):
|
|
@@ -15388,7 +15382,7 @@ class Biosample(Sample):
|
|
|
15388
15382
|
|
|
15389
15383
|
@field_validator('salinity_meth')
|
|
15390
15384
|
def pattern_salinity_meth(cls, v):
|
|
15391
|
-
pattern=re.compile(r"
|
|
15385
|
+
pattern=re.compile(r"^PMID:\d+|doi:10.\d{2,9}/.*|https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*)$")
|
|
15392
15386
|
if isinstance(v, list):
|
|
15393
15387
|
for element in v:
|
|
15394
15388
|
if isinstance(element, str) and not pattern.match(element):
|
|
@@ -15672,19 +15666,6 @@ class Biosample(Sample):
|
|
|
15672
15666
|
raise ValueError(err_msg)
|
|
15673
15667
|
return v
|
|
15674
15668
|
|
|
15675
|
-
@field_validator('store_cond')
|
|
15676
|
-
def pattern_store_cond(cls, v):
|
|
15677
|
-
pattern=re.compile(r"^([^\s-]{1,2}|[^\s-]+.+[^\s-]+);P(?:(?:\d+D|\d+M(?:\d+D)?|\d+Y(?:\d+M(?:\d+D)?)?)(?:T(?:\d+H(?:\d+M(?:\d+S)?)?|\d+M(?:\d+S)?|\d+S))?|T(?:\d+H(?:\d+M(?:\d+S)?)?|\d+M(?:\d+S)?|\d+S)|\d+W)$")
|
|
15678
|
-
if isinstance(v, list):
|
|
15679
|
-
for element in v:
|
|
15680
|
-
if isinstance(element, str) and not pattern.match(element):
|
|
15681
|
-
err_msg = f"Invalid store_cond format: {element}"
|
|
15682
|
-
raise ValueError(err_msg)
|
|
15683
|
-
elif isinstance(v, str) and not pattern.match(v):
|
|
15684
|
-
err_msg = f"Invalid store_cond format: {v}"
|
|
15685
|
-
raise ValueError(err_msg)
|
|
15686
|
-
return v
|
|
15687
|
-
|
|
15688
15669
|
@field_validator('sulfate')
|
|
15689
15670
|
def pattern_sulfate(cls, v):
|
|
15690
15671
|
pattern=re.compile(r"^[-+]?[0-9]*\.?[0-9]+(?:[eE][-+]?[0-9]+)?( *- *[-+]?[0-9]*\.?[0-9]+(?:[eE][-+]?[0-9]+)?)? *.*$")
|
|
@@ -15817,7 +15798,7 @@ class Biosample(Sample):
|
|
|
15817
15798
|
|
|
15818
15799
|
@field_validator('tiss_cult_growth_med')
|
|
15819
15800
|
def pattern_tiss_cult_growth_med(cls, v):
|
|
15820
|
-
pattern=re.compile(r"
|
|
15801
|
+
pattern=re.compile(r"^(PMID:\d+|doi:10.\d{2,9}/.*|https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*)|.*)$")
|
|
15821
15802
|
if isinstance(v, list):
|
|
15822
15803
|
for element in v:
|
|
15823
15804
|
if isinstance(element, str) and not pattern.match(element):
|
|
@@ -15921,7 +15902,7 @@ class Biosample(Sample):
|
|
|
15921
15902
|
|
|
15922
15903
|
@field_validator('tot_nitro_cont_meth')
|
|
15923
15904
|
def pattern_tot_nitro_cont_meth(cls, v):
|
|
15924
|
-
pattern=re.compile(r"
|
|
15905
|
+
pattern=re.compile(r"^(PMID:\d+|doi:10.\d{2,9}/.*|https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*))$")
|
|
15925
15906
|
if isinstance(v, list):
|
|
15926
15907
|
for element in v:
|
|
15927
15908
|
if isinstance(element, str) and not pattern.match(element):
|
|
@@ -15947,7 +15928,7 @@ class Biosample(Sample):
|
|
|
15947
15928
|
|
|
15948
15929
|
@field_validator('tot_org_c_meth')
|
|
15949
15930
|
def pattern_tot_org_c_meth(cls, v):
|
|
15950
|
-
pattern=re.compile(r"
|
|
15931
|
+
pattern=re.compile(r"^(PMID:\d+|doi:10.\d{2,9}/.*|https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*))$")
|
|
15951
15932
|
if isinstance(v, list):
|
|
15952
15933
|
for element in v:
|
|
15953
15934
|
if isinstance(element, str) and not pattern.match(element):
|
|
@@ -16902,7 +16883,7 @@ class LibraryPreparation(MaterialProcessing):
|
|
|
16902
16883
|
'slot_uri': 'MIXS:0000038',
|
|
16903
16884
|
'structured_pattern': {'interpolated': True,
|
|
16904
16885
|
'partial_match': True,
|
|
16905
|
-
'syntax': '^{PMID}|{DOI}|{URL}$'}} })
|
|
16886
|
+
'syntax': '^({PMID}|{DOI}|{URL})$'}} })
|
|
16906
16887
|
pcr_cond: Optional[str] = Field(default=None, title="pcr conditions", description="""Description of reaction conditions and components of polymerase chain reaction performed during library preparation""", json_schema_extra = { "linkml_meta": {'annotations': {'Expected_value': {'tag': 'Expected_value',
|
|
16907
16888
|
'value': 'initial '
|
|
16908
16889
|
'denaturation:degrees_minutes;annealing:degrees_minutes;elongation:degrees_minutes;final '
|
|
@@ -17013,7 +16994,7 @@ class LibraryPreparation(MaterialProcessing):
|
|
|
17013
16994
|
|
|
17014
16995
|
@field_validator('nucl_acid_amp')
|
|
17015
16996
|
def pattern_nucl_acid_amp(cls, v):
|
|
17016
|
-
pattern=re.compile(r"
|
|
16997
|
+
pattern=re.compile(r"^(PMID:\d+|doi:10.\d{2,9}/.*|https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*))$")
|
|
17017
16998
|
if isinstance(v, list):
|
|
17018
16999
|
for element in v:
|
|
17019
17000
|
if isinstance(element, str) and not pattern.match(element):
|
|
@@ -20929,7 +20910,7 @@ class MetabolomicsAnalysis(WorkflowExecution):
|
|
|
20929
20910
|
'syntax': '{id_nmdc_prefix}:(omprc|dgms)-{id_shoulder}-{id_blade}$'}}}})
|
|
20930
20911
|
|
|
20931
20912
|
has_metabolite_identifications: Optional[list[MetaboliteIdentification]] = Field(default=[], json_schema_extra = { "linkml_meta": {'domain_of': ['MetabolomicsAnalysis']} })
|
|
20932
|
-
uses_calibration: Optional[str] = Field(default=
|
|
20913
|
+
uses_calibration: Optional[list[str]] = Field(default=[], description="""calibration information is used by a process""", json_schema_extra = { "linkml_meta": {'comments': ['Retenion index calibration data generated by a gas '
|
|
20933
20914
|
'chromatography mass spectromery run is used when analyzing '
|
|
20934
20915
|
'metabolomics data'],
|
|
20935
20916
|
'domain_of': ['MetabolomicsAnalysis', 'NomAnalysis'],
|
|
@@ -21416,7 +21397,7 @@ class NomAnalysis(WorkflowExecution):
|
|
|
21416
21397
|
'structured_pattern': {'interpolated': True,
|
|
21417
21398
|
'syntax': '{id_nmdc_prefix}:(omprc|dgms)-{id_shoulder}-{id_blade}$'}}}})
|
|
21418
21399
|
|
|
21419
|
-
uses_calibration: Optional[str] = Field(default=
|
|
21400
|
+
uses_calibration: Optional[list[str]] = Field(default=[], description="""calibration information is used by a process""", json_schema_extra = { "linkml_meta": {'comments': ['Retenion index calibration data generated by a gas '
|
|
21420
21401
|
'chromatography mass spectromery run is used when analyzing '
|
|
21421
21402
|
'metabolomics data'],
|
|
21422
21403
|
'domain_of': ['MetabolomicsAnalysis', 'NomAnalysis'],
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: nmdc_schema
|
|
3
|
-
Version: 11.
|
|
3
|
+
Version: 11.16.0
|
|
4
4
|
Summary: Schema resources for the National Microbiome Data Collaborative (NMDC)
|
|
5
5
|
License: MIT
|
|
6
6
|
License-File: LICENSE
|
|
@@ -27,6 +27,8 @@ Requires-Dist: jsonasobj2 (>=1,<2)
|
|
|
27
27
|
Requires-Dist: jsonschema (>=4,<5)
|
|
28
28
|
Requires-Dist: linkml (>=1.9.6,<2.0.0)
|
|
29
29
|
Requires-Dist: linkml-runtime (>=1.9.5,<2.0.0)
|
|
30
|
+
Requires-Dist: pyasn1 (>=0.6.2)
|
|
31
|
+
Requires-Dist: pymdown-extensions (>=10.16.1)
|
|
30
32
|
Requires-Dist: pymongo (>=4.7.2,<5.0.0)
|
|
31
33
|
Requires-Dist: python-dotenv
|
|
32
34
|
Requires-Dist: pyyaml (>=6,<7)
|
|
@@ -43,6 +43,8 @@ nmdc_schema/migrators/migrator_from_11_0_3_to_11_1_0.py,sha256=3hHXGts_sfre4KuIp
|
|
|
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
45
|
nmdc_schema/migrators/migrator_from_11_13_0_to_11_14_0.py,sha256=Y6WY3QGn9fVPh_hzyyC0UXX1U0nQNB624v48sJV_Gzo,1354
|
|
46
|
+
nmdc_schema/migrators/migrator_from_11_14_0_to_11_15_1.py,sha256=Tc9py9FB6cM1WHQeIMwcRZhxWfn2iZp0QG0XqVPpyLk,313
|
|
47
|
+
nmdc_schema/migrators/migrator_from_11_15_1_to_11_16_0.py,sha256=eOaECbZENaXAr2lUjHaiNkjQtK5lL2IXCx7hS3CVGrU,1291
|
|
46
48
|
nmdc_schema/migrators/migrator_from_11_1_0_to_11_2_0.py,sha256=xGaG0oilg0Xvq-P6YOZea3EPQU8fyfcKo-KZl4BhgoM,1183
|
|
47
49
|
nmdc_schema/migrators/migrator_from_11_3_0_to_11_4_0.py,sha256=XDRsT9KrKlZTOGHQekESZ2XSYD2UDydF1PWTRIeqOVE,1985
|
|
48
50
|
nmdc_schema/migrators/migrator_from_11_4_0_to_11_5_0.py,sha256=uiFi5USF23lpuAbkDhVufnXxLsM-Aixrj4nw7GY-XO4,357
|
|
@@ -111,18 +113,18 @@ nmdc_schema/migrators/partials/migrator_from_11_9_1_to_11_10_0/__init__.py,sha25
|
|
|
111
113
|
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
|
|
112
114
|
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
|
|
113
115
|
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
|
|
114
|
-
nmdc_schema/nmdc.py,sha256=
|
|
115
|
-
nmdc_schema/nmdc.schema.json,sha256=
|
|
116
|
+
nmdc_schema/nmdc.py,sha256=Rt5ClvAgY2HiyvJgaieLqlkYWw6v7-WEksgCfdJklBI,734983
|
|
117
|
+
nmdc_schema/nmdc.schema.json,sha256=_2iXMMYYlKg4A9Ue174npcXVV-3s0PA8bsMkhFIQDPw,622908
|
|
116
118
|
nmdc_schema/nmdc_data.py,sha256=_wNKi5NDxuvvRsJEim2ialX7VJkDBJLRpiTOPpFHBm8,9608
|
|
117
|
-
nmdc_schema/nmdc_materialized_patterns.json,sha256=
|
|
118
|
-
nmdc_schema/nmdc_materialized_patterns.schema.json,sha256=
|
|
119
|
-
nmdc_schema/nmdc_materialized_patterns.yaml,sha256=
|
|
120
|
-
nmdc_schema/nmdc_pydantic.py,sha256=
|
|
119
|
+
nmdc_schema/nmdc_materialized_patterns.json,sha256=i2rP_padwBKZb7X4nhESwVLudVCGe9XJwtYIXeq5ixo,867195
|
|
120
|
+
nmdc_schema/nmdc_materialized_patterns.schema.json,sha256=jSalGgIoeh3H9dPZG8dofBQ0zXfxiHfD7pXjY0dctTo,659285
|
|
121
|
+
nmdc_schema/nmdc_materialized_patterns.yaml,sha256=VrgDYngSUKRssKRU97YKHh0beRNHp6mDzZpVh0BOwvM,687168
|
|
122
|
+
nmdc_schema/nmdc_pydantic.py,sha256=SHEn5jxag71AgL_fWvoI4TBgCqgkDqZLOFs8Q74H9q4,1493359
|
|
121
123
|
nmdc_schema/nmdc_schema_validation_plugin.py,sha256=rjtn1tYhngGyc1AV8vcT8BJ9a_MmHbcK3hRUf9dzPtA,4799
|
|
122
124
|
nmdc_schema/nmdc_version.py,sha256=DsfEKnmN3LHR831WWELxyfZY6rnP9U8tfygamkrsaHY,2305
|
|
123
125
|
nmdc_schema/validate_nmdc_json.py,sha256=PVJV2O1qQXMi206HaUKqRNLiLc164OpNYKPURSKN8_E,3148
|
|
124
|
-
nmdc_schema-11.
|
|
125
|
-
nmdc_schema-11.
|
|
126
|
-
nmdc_schema-11.
|
|
127
|
-
nmdc_schema-11.
|
|
128
|
-
nmdc_schema-11.
|
|
126
|
+
nmdc_schema-11.16.0.dist-info/METADATA,sha256=LnuT1xVWESU0z6iierg73QvFcAYBM2IT9NkyKGgdAfI,5961
|
|
127
|
+
nmdc_schema-11.16.0.dist-info/WHEEL,sha256=kJCRJT_g0adfAJzTx2GUMmS80rTJIVHRCfG0DQgLq3o,88
|
|
128
|
+
nmdc_schema-11.16.0.dist-info/entry_points.txt,sha256=ioyD5P6op5Zy68bqg5MafLAryb73rfzyx8YXKItroC8,1531
|
|
129
|
+
nmdc_schema-11.16.0.dist-info/licenses/LICENSE,sha256=ogEPNDSH0_dhiv_lT3ifVIdgIzHAqNA_SemnxUfPBJk,7048
|
|
130
|
+
nmdc_schema-11.16.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|