From c961eff33822adb2a253d786329b8a5a80a5e667 Mon Sep 17 00:00:00 2001 From: "Mark A. Miller" Date: Fri, 17 Mar 2023 09:46:57 -0400 Subject: [PATCH 1/2] #38 deleted unused except full validation_converter --- ...c-submission-schema_modifications_long.tsv | 175 ------------------ ...ission-schema_modifications_long_empty.tsv | 1 - ...chema_validation_converter_no_patterns.tsv | 35 ---- 3 files changed, 211 deletions(-) delete mode 100644 sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_modifications_long.tsv delete mode 100644 sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_modifications_long_empty.tsv delete mode 100644 sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_validation_converter_no_patterns.tsv diff --git a/sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_modifications_long.tsv b/sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_modifications_long.tsv deleted file mode 100644 index d826da31..00000000 --- a/sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_modifications_long.tsv +++ /dev/null @@ -1,175 +0,0 @@ -class slot action target path LinkML implementation notes value -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface depth add_attribute comments All depths must be reported in meters. Provide the numerical portion only. -AirInterface|BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface samp_collec_device add_attribute comments Report dimensions and details when applicable -AirInterface|BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface samp_collec_method add_attribute comments This can be a citation or description -DhMultiviewCommonColumnsMixin samp_name add_attribute comments It can have any format, but we suggest that you make it concise, unique and consistent within your lab, and as informative as possible. -AirInterface|BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface samp_size add_attribute comments This refers to the TOTAL amount of sample collected from the experiment. NOT the amount sent to each institution or collected for a specific analysis. -DhMultiviewCommonColumnsMixin source_mat_id add_attribute comments Identifiers must be prefixed. Possible FAIR prefixes are IGSNs (http://www.geosamples.org/getigsn), NCBI biosample accession numbers, ARK identifiers (https://arks.org/). These IDs enable linking to derived analytes and subsamples. If you have not assigned FAIR identifiers to your samples, you can generate UUIDs (https://www.uuidgenerator.net/). -SoilInterface al_sat replace_attribute description The relative abundance of aluminum in the sample -SoilInterface al_sat_meth replace_attribute description Reference or method used in determining Aluminum saturation -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface collection_date replace_attribute description The date of sampling -SoilInterface cur_vegetation replace_attribute description Vegetation classification from one or more standard classification systems, or agricultural crop -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface env_broad_scale replace_attribute description In this field, report which major environmental system your sample or specimen came from. The systems identified should have a coarse spatial grain, to provide the general environmental context of where the sampling was done (e.g. were you in the desert or a rainforest?). We recommend using subclasses of ENVO's biome class: http://purl.obolibrary.org/obo/ENVO_00000428. Format (one term): termLabel [termID], Format (multiple terms): termLabel [termID]|termLabel [termID]|termLabel [termID]. Example: Annotating a water sample from the photic zone in middle of the Atlantic Ocean, consider: oceanic epipelagic zone biome [ENVO:01000033]. Example: Annotating a sample from the Amazon rainforest consider: tropical moist broadleaf forest biome [ENVO:01000228]. If needed, request new terms on the ENVO tracker, identified here: http://www.obofoundry.org/ontology/envo.html -PlantAssociatedInterface|SoilInterface growth_facil replace_attribute description Type of facility/location where the sample was harvested; controlled vocabulary: growth chamber, open top chamber, glasshouse, experimental garden, field. -SoilInterface heavy_metals replace_attribute description Heavy metals present in the sample and their concentrations. -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface lat_lon replace_attribute description This is currently a required field but it's not clear if this should be required for human hosts -BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|MiscEnvsInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface ph replace_attribute description pH measurement of the sample, or liquid portion of sample, or aqueous phase of the fluid -DhMultiviewCommonColumnsMixin samp_name replace_attribute description A local identifier or name that for the material sample collected. Refers to the original material collected or to any derived sub-samples. -AirInterface|BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface samp_store_temp replace_attribute description Temperature at which the sample was stored (degrees are assumed) -SoilInterface slope_aspect replace_attribute description The direction a slope faces. While looking down a slope use a compass to record the direction you are facing (direction or degrees). - This measure provides an indication of sun and wind exposure that will influence soil temperature and evapotranspiration. -DhMultiviewCommonColumnsMixin source_mat_id replace_attribute description A globally unique identifier assigned to the biological sample. -SoilInterface store_cond replace_attribute description Explain how the soil sample is stored (fresh/frozen/other). -SoilInterface al_sat overwrite_examples examples 0.27 -SoilInterface al_sat_meth overwrite_examples examples https://doi.org/10.1371/journal.pone.0176357 -SoilInterface annual_precpt overwrite_examples examples 8.94 inch -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface collection_date overwrite_examples examples 2021-04-15|2021-04|2021 -SoilInterface cur_vegetation overwrite_examples examples deciduous forest|forest|Bauhinia variegata -SoilInterface cur_vegetation_meth overwrite_examples examples https://doi.org/10.1111/j.1654-109X.2011.01154.x -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface depth overwrite_examples examples 0-0.1|1 -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface elev overwrite_examples examples 225 | 0 | 1250 -SoilInterface extreme_event overwrite_examples examples 1980-05-18, volcanic eruption -SoilInterface fire overwrite_examples examples 1871-10-10|1871-10-01 to 1871-10-31 -SoilInterface flooding overwrite_examples examples 1927-04-15|1927-04 to 1927-05 -PlantAssociatedInterface|SoilInterface gaseous_environment overwrite_examples examples CO2; 500ppm above ambient; constant|nitric oxide;0.5 micromole per liter;R2/2018-05-11T14:30/2018-05-11T19:30/P1H30M -SoilInterface heavy_metals overwrite_examples examples mercury 0.09 micrograms per gram|mercury 0.09 ug/g; chromium 0.03 ug/g -SoilInterface heavy_metals_meth overwrite_examples examples https://doi.org/10.3390/ijms9040434|mercury https://doi.org/10.1007/BF01056090; chromium https://doi.org/10.1007/s00216-006-0322-8 -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface env_local_scale overwrite_examples examples canopy [ENVO:00000047]|herb and fern layer [ENVO:01000337]|litter layer [ENVO:01000338]|understory [01000335]|shrub layer [ENVO:01000336] -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface env_medium overwrite_examples examples soil [ENVO:00001998] -BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|MiscEnvsInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface ph_meth overwrite_examples examples https://www.southernlabware.com/pc9500-benchtop-ph-conductivity-meter-kit-ph-accuracy-2000mv-ph-range-2-000-to-20-000.html?gclid=Cj0KCQiAwJWdBhCYARIsAJc4idCO5vtvbVMf545fcvdROFqa6zjzNSoywNx6K4k9Coo9cCc2pybtvGsaAiR0EALw_wcB|https://doi.org/10.2136/sssabookser5.3.c16 -SoilInterface salinity_meth overwrite_examples examples https://doi.org/10.1007/978-1-61779-986-0_28 -AirInterface|BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface samp_mat_process overwrite_examples examples filtering of seawater|storing samples in ethanol -DhMultiviewCommonColumnsMixin samp_name overwrite_examples examples Rock core CB1178(5-6) from NSW -AirInterface|BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface samp_size overwrite_examples examples 5 grams|10 mL -AirInterface|BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface samp_store_temp overwrite_examples examples -80 Celsius -SoilInterface season_precpt overwrite_examples examples 0.4 inch|10.16 mm -SoilInterface sieving overwrite_examples examples combined 2 cores | 4mm sieved|4 mm sieved and homogenized|50 g | 5 cores | 2 mm sieved -SoilInterface slope_aspect overwrite_examples examples 35 -SoilInterface slope_gradient overwrite_examples examples 10%|10 %|0.1 -DhMultiviewCommonColumnsMixin source_mat_id overwrite_examples examples IGSN:AU1243|UUID:24f1467a-40f4-11ed-b878-0242ac120002 -BiofilmInterface|SedimentInterface|SoilInterface tot_carb overwrite_examples examples 1 ug/L -SoilInterface tot_nitro_cont_meth overwrite_examples examples https://doi.org/10.2134/agronmonogr9.2.c32|https://acsess.onlinelibrary.wiley.com/doi/full/10.2136/sssaj2009.0389?casa_token=bm0pYIUdNMgAAAAA%3AOWVRR0STHaOe-afTcTdxn5m1hM8n2ltM0wY-b1iYpYdD9dhwppk5j3LvC2IO5yhOIvyLVeQz4NZRCZo -BiofilmInterface|SedimentInterface|SoilInterface tot_nitro_content overwrite_examples examples 5 mg N/ L -SoilInterface tot_org_c_meth overwrite_examples examples https://doi.org/10.1080/07352680902776556 -BiofilmInterface|SedimentInterface|SoilInterface tot_org_carb overwrite_examples examples 5 mg N/ L -SoilInterface water_cont_soil_meth overwrite_examples examples J. Nat. Prod. Plant Resour., 2012, 2 (4):500-503|https://dec.alaska.gov/applications/spar/webcalc/definitions.htm -BiofilmInterface|SedimentInterface|SoilInterface water_content overwrite_examples examples 75%|75 %|0.75 g water/g dry soil|75% water holding capacity|1.1 g fresh weight/ dry weight|10% water filled pore space -PlantAssociatedInterface|SoilInterface watering_regm overwrite_examples examples 1 liter;R2/2018-05-11T14:30/2018-05-11T19:30/P1H30M|75% water holding capacity; constant -SoilInterface extreme_event replace_annotation expected_value date, string -SoilInterface fire replace_annotation expected_value date string -SoilInterface flooding replace_annotation expected_value date string -BiofilmInterface|SedimentInterface|SoilInterface water_content replace_annotation expected_value string -DhMultiviewCommonColumnsMixin source_mat_id replace_attribute identifier true -BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|MiscEnvsInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface ph replace_attribute maximum_value 14 -BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|MiscEnvsInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface ph replace_attribute minimum_value expects int?! 0 -SoilInterface heavy_metals replace_attribute multivalued true -SoilInterface heavy_metals_meth replace_attribute multivalued true -BiofilmInterface|SedimentInterface|SoilInterface water_content replace_attribute multivalued true -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface collection_date add_attribute notes MIxS collection_date accepts (truncated) ISO8601. DH taking arb prec date only -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface collection_date add_attribute notes Use modified term (amended definition) -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface depth add_attribute notes Use modified term -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface env_broad_scale add_attribute notes "range changed to enumeration late in makefile, so this is modified (but ""sample ID"" anyway)" -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface env_local_scale add_attribute notes "range changed to enumeration late in makefile, so this is modified (but ""sample ID"" anyway)" -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface env_medium add_attribute notes "range changed to enumeration late in makefile, so this is modified (but ""sample ID"" anyway)" -PlantAssociatedInterface|SoilInterface growth_facil add_attribute notes Removed from description: Alternatively use Crop Ontology (CO) terms -SoilInterface heavy_metals add_attribute notes Changed to multi-valued. In MIxS, you add another column to denote multiple heavy metals. We don't have that ability in the submission portal. -AirInterface|BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface oxy_stat_samp add_attribute notes this is now a hybrid of the oxy_stat_samp semantics and the rel_to_oxygen enumeration -BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|MiscEnvsInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface ph add_attribute notes Use modified term -SoilInterface season_precpt add_attribute notes mean and average are the same thing, but it seems like bad practice to not be consistent. Changed mean to average -DhMultiviewCommonColumnsMixin source_mat_id add_attribute notes The source material IS the Globally Unique ID -SoilInterface fire replace_attribute pattern ^[12]\d{3}(?:(?:-(?:0[1-9]|1[0-2]))(?:-(?:0[1-9]|[12]\d|3[01]))?)?(\s+to\s+[12]\d{3}(?:(?:-(?:0[1-9]|1[0-2]))(?:-(?:0[1-9]|[12]\d|3[01]))?)?)?$ -BiofilmInterface|SedimentInterface|SoilInterface water_content replace_annotation preferred_unit gram per gram or cubic centimeter per cubic centimeter -BiofilmInterface|SedimentInterface|SoilInterface|WaterInterface carb_nitro_ratio replace_attribute range float -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface collection_date replace_attribute range string -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface depth replace_attribute range string -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface ecosystem replace_attribute range EcosystemEnum -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface ecosystem replace_attribute range string -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface ecosystem_category replace_attribute range EcosystemCategoryEnum -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface ecosystem_category replace_attribute range string -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface ecosystem_subtype replace_attribute range EcosystemSubtypeEnum -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface ecosystem_subtype replace_attribute range string -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface ecosystem_type replace_attribute range EcosystemTypeEnum -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface ecosystem_type replace_attribute range string -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface elev replace_attribute range float -SoilInterface env_broad_scale replace_attribute range EnvBroadScaleSoilEnum -SoilInterface env_local_scale replace_attribute range EnvLocalScaleSoilEnum -SoilInterface env_medium replace_attribute range EnvMediumSoilEnum -SoilInterface extreme_event replace_attribute range string -SoilInterface fire replace_attribute range string -SoilInterface flooding replace_attribute range string -PlantAssociatedInterface|SoilInterface growth_facil replace_attribute range GrowthFacilEnum -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface lat_lon replace_attribute range string -AirInterface|BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface oxy_stat_samp replace_attribute range RelToOxygenEnum -BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|MiscEnvsInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface ph replace_attribute range string -AirInterface|BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface samp_size replace_attribute range string -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface specific_ecosystem replace_attribute range SpecificEcosystemEnum -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface specific_ecosystem replace_attribute range string -SoilInterface store_cond replace_attribute range StoreCondEnum -BiofilmInterface|SedimentInterface|SoilInterface water_content replace_attribute range quantity value -BiofilmInterface|SedimentInterface|SoilInterface water_content replace_attribute range string -PlantAssociatedInterface|SoilInterface air_temp_regm replace_attribute recommended true -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface alt replace_attribute recommended true -PlantAssociatedInterface|SoilInterface biotic_regm replace_attribute recommended true -AirInterface|BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface chem_administration replace_attribute recommended true -PlantAssociatedInterface|SoilInterface climate_environment replace_attribute recommended true -PlantAssociatedInterface|SoilInterface gaseous_environment replace_attribute recommended true -PlantAssociatedInterface|SoilInterface humidity_regm replace_attribute recommended true -PlantAssociatedInterface|SoilInterface light_regm replace_attribute recommended true -BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|MiscEnvsInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface ph replace_attribute recommended true -AirInterface|BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface samp_collec_device replace_attribute recommended true -SoilInterface sieving replace_attribute recommended true -SoilInterface|WaterInterface size_frac_low replace_attribute recommended false -SoilInterface|WaterInterface size_frac_up replace_attribute recommended false -PlantAssociatedInterface|SoilInterface watering_regm replace_attribute recommended true -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface collection_date replace_attribute required true -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface depth replace_attribute required true -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface ecosystem replace_attribute required true -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface ecosystem_category replace_attribute required true -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface ecosystem_subtype replace_attribute required true -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface ecosystem_type replace_attribute required true -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface elev replace_attribute required true -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface env_broad_scale replace_attribute required true -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface env_local_scale replace_attribute required true -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface env_medium replace_attribute required true -PlantAssociatedInterface|SoilInterface growth_facil replace_attribute required true -DhMultiviewCommonColumnsMixin samp_name replace_attribute required true -AirInterface|BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface samp_store_temp replace_attribute required true -DhMultiviewCommonColumnsMixin source_mat_id replace_attribute required true -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface specific_ecosystem replace_attribute required true -SoilInterface store_cond replace_attribute required true -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface collection_date replace_attribute string_serialization {date, arbitrary precision} -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface depth replace_attribute string_serialization {float}|{float}-{float} -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface geo_loc_name replace_attribute string_serialization {text}: {text}, {text} -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface lat_lon replace_attribute string_serialization {lat lon} -BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|MiscEnvsInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface ph replace_attribute string_serialization {float} -AirInterface|BiofilmInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface samp_size replace_attribute string_serialization {float} {unit} -DhMultiviewCommonColumnsMixin source_mat_id replace_attribute string_serialization {text}:{text} -SoilInterface al_sat replace_attribute title aluminum saturation/ extreme unusual properties -SoilInterface al_sat_meth replace_attribute title aluminum saturation method/ extreme unusual properties -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface depth replace_attribute title depth, meters -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|SoilInterface|WastewaterSludgeInterface|WaterInterface elev replace_attribute title elevation, meters -SoilInterface heavy_metals replace_attribute title heavy metals/ extreme unusual properties -SoilInterface heavy_metals_meth replace_attribute title heavy metals method/ extreme unusual properties -AirInterface|BiofilmInterface|BuiltEnvInterface|HcrCoresInterface|HcrFluidsSwabsInterface|HostAssociatedInterface|MiscEnvsInterface|PlantAssociatedInterface|SedimentInterface|WastewaterSludgeInterface|WaterInterface horizon_meth replace_attribute title horizon method -SoilInterface season_precpt replace_attribute title average seasonal precipitation -DhMultiviewCommonColumnsMixin source_mat_id replace_attribute title globally unique ID -SoilInterface al_sat add_attribute todos This is no longer matching the listed IRI from GSC. When NMDC has its own slots, map this to the MIxS slot|Example & validation. Can we make rules that 27% & 27 % & 0.27 will validate?|I think it's weird the way GSC writes the title. I recommend this change. Thoughts? I would argue this isn't an extreme unusual property. It's just a biogeochemical measurement. -SoilInterface al_sat_meth add_attribute todos This is no longer matching the listed IRI from GSC. When NMDC has its own slots, map this to the MIxS slot|I think it's weird the way GSC writes the title. I recommend this change. Thoughts? -SoilInterface annual_precpt add_attribute todos This is no longer matching the listed IRI from GSC, added example. When NMDC has its own slots, map this to the MIxS slot -PlantAssociatedInterface|SoilInterface climate_environment add_attribute todos "description says ""can include multiple climates"" but multivalued is set to false|add examples, i need to see some examples to add correctly formatted example." -SoilInterface cur_vegetation add_attribute todos This is no longer matching the listed IRI from GSC. When NMDC has its own slots, map this to the MIxS slot|Recommend changing this from text value to some kind of ontology? -SoilInterface cur_vegetation_meth add_attribute todos This is no longer matching the listed IRI from GSC. When NMDC has its own slots, map this to the MIxS slot|I'm not sure this is a DOI, PMID, or URI. Should pool the community and find out how they accomplish this if provided. -SoilInterface extreme_event add_attribute todos This is no longer matching the listed IRI from GSC. When NMDC has its own slots, map this to the MIxS slot -SoilInterface fire add_attribute todos "is ""to"" acceptable? Is there a better way to request that be written?|This is no longer matching the listed IRI from GSC. When NMDC has its own slots, map this to the MIxS slot" -SoilInterface flooding add_attribute todos "is ""to"" acceptable? Is there a better way to request that be written?|What about if the ""day"" isn't known? Is this ok?|This is no longer matching the listed IRI from GSC. When NMDC has its own slots, map this to the MIxS slot" -PlantAssociatedInterface|SoilInterface gaseous_environment add_attribute todos would like to see usage examples for this slot. Requiring micromole/L seems too limiting and doesn't match expected_value value|did I do this right? keep the example that's provided and add another? so as to not override -SoilInterface heavy_metals add_attribute todos This is no longer matching the listed IRI from GSC. When NMDC has its own slots, map this to the MIxS slot|Example & validation. Can we make rules that 27% & 27 % & 0.27 will validate?|I think it's weird the way GSC writes the title. I recommend this change. Thoughts? I would argue this isn't an extreme unusual property. It's just a biogeochemical measurement. -SoilInterface heavy_metals_meth add_attribute todos This is no longer matching the listed IRI from GSC. When NMDC has its own slots, map this to the MIxS slot -SoilInterface season_precpt add_attribute todos This is no longer matching the listed IRI from GSC. When NMDC has its own slots, map this to the MIxS slot|check validation & examples. always mm? so value only? Or value + unit -SoilInterface sieving add_attribute todos check validation and examples -SoilInterface slope_aspect add_attribute todos This is no longer matching the listed IRI from GSC. When NMDC has its own slots, map this to the MIxS slot -SoilInterface slope_gradient add_attribute todos Slope is a percent. How does the validation work? Check to correct examples -DhMultiviewCommonColumnsMixin source_mat_id add_attribute todos Currently, the comments say to use UUIDs. However, if we implement assigning NMDC identifiers with the minter we dont need to require a GUID. It can be an optional field to fill out only if they already have a resolvable ID. -BiofilmInterface|SedimentInterface|SoilInterface tot_carb add_attribute todos is this inorganic and organic? both? could use some clarification.|ug/L doesn't seem like the right units. Should check this slots usage in databases and re-evaluate. I couldn't find any references that provided this data in this format -BiofilmInterface|SedimentInterface|SoilInterface tot_org_carb add_attribute todos check description. How are they different? -SoilInterface water_cont_soil_meth add_attribute todos Why is it soil water content method in the name but not the title? Is this slot used in other samples?|Soil water content can be measure MANY ways and often, multiple ways are used in one experiment (gravimetric water content and water holding capacity and water filled pore space, to name a few).|Should this be multi valued? How to we manage and validate this? -BiofilmInterface|SedimentInterface|SoilInterface water_content add_attribute todos value in preferred unit is too limiting. need to change this|check and correct validation so examples are accepted|This is no longer matching the listed IRI from GSC. When NMDC has its own slots, map this to the MIxS slot|how to manage multiple water content methods? diff --git a/sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_modifications_long_empty.tsv b/sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_modifications_long_empty.tsv deleted file mode 100644 index 37a23d7c..00000000 --- a/sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_modifications_long_empty.tsv +++ /dev/null @@ -1 +0,0 @@ -class slot action target path LinkML implementation notes value diff --git a/sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_validation_converter_no_patterns.tsv b/sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_validation_converter_no_patterns.tsv deleted file mode 100644 index 67878ff5..00000000 --- a/sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_validation_converter_no_patterns.tsv +++ /dev/null @@ -1,35 +0,0 @@ -from_val from_type to_type to_val notes tested ; | PMID DOI URL [ time HH date YYYY temporal float {{ - -date linkml range DH datatype xs:date FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE TRUE FALSE FALSE FALSE -timestamp value linkml range DH datatype xs:date "^([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24\:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$" FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE TRUE FALSE FALSE FALSE -{timestamp} MIxS string serialization DH datatype xs:date "^([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24\:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$" FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE TRUE FALSE FALSE FALSE -YYYY-MM-DD MIxS string serialization DH datatype xs:date ^\d{4}\-(0[1-9]|1[012])\-(0[1-9]|[12][0-9]|3[01])$ FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUE FALSE FALSE TRUE -double linkml range DH datatype xs:decimal FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -{float} MIxS string serialization DH datatype xs:decimal [-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)? FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE -{integer} MIxS string serialization DH datatype xs:nonNegativeInteger why non-negative? FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -string linkml range DH datatype xs:token FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -{text} MIxS string serialization DH datatype xs:token FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -{{text}|{float} {unit}};{float} {unit} MIxS string serialization TRUE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUE FALSE -{boolean};{Rn/start_time/end_time/duration} MIxS string serialization TRUE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE TRUE FALSE FALSE FALSE -{float} {unit};{Rn/start_time/end_time/duration} MIxS string serialization TRUE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE TRUE TRUE FALSE FALSE -{PMID}|{DOI}|{URL} MIxS string serialization FALSE TRUE TRUE TRUE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -{PMID}|{DOI}|{URL}|{text} MIxS string serialization FALSE TRUE TRUE TRUE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -"{term}: {term}, {text}" MIxS string serialization FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -{termLabel} {[termID]}|{text} MIxS string serialization FALSE TRUE FALSE FALSE FALSE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -{text};{float} {unit};{Rn/start_time/end_time/duration} MIxS string serialization TRUE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE TRUE TRUE FALSE FALSE -{text};{Rn/start_time/end_time/duration} MIxS string serialization TRUE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE TRUE FALSE FALSE FALSE -"{time, seconds optional}" NMDC string serialization DH pattern regex ^([01]?\d|2[0-3]|24(?=:00?:00?$)):([0-5]\d)(:([0-5]\d))?$ -HH:MM:SS MIxS string serialization DH pattern regex ^(2[0-3]|[01]?[0-9]):([0-5]?[0-9])$ FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE TRUE FALSE FALSE FALSE -{lat lon} NMDC string serialization DH pattern regex ^[-+]?([1-8]?\d(\.\d+)?|90(\.0+)?)\s[-+]?(180(\.0+)?|((1[0-7]\d)|([1-9]?\d))(\.\d+)?)$ -{float}|{float}-{float} MIxS string serialization DH pattern regex ^[-+]?[0-9]*(\.[0-9]+)?([eE][-+]?[0-9]+)?( to [-+]?[0-9]*(\.[0-9]+)?([eE][-+]?[0-9]+)?)?$ FALSE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE TRUE -quantity value linkml range DH pattern regex ^[-+]?[0-9]*\.?[0-9]+ +\S.*$ FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -{float} {float} MIxS string serialization DH pattern regex ^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)? [-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$ not a good validation for lat lon / lat_lon 1.3 4.5 FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE -{float} {unit} MIxS string serialization DH pattern regex ^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)? \S+$ FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE -"{text}: {text}, {text}" NMDC string serialization DH pattern regex "^[^:, \n\r\t][^:\n\r\t]*: [^:, \n\r\t][^,\n\r\t]*, [^:,\n\r\t].*$" -{text}:{text} MIxS string serialization DH pattern regex ^[^\:\n\r\t]+\:[^\:\n\r\t]+$ FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -{text < 20 characters} NMDC string serialization DH pattern regex "^[^\n\r\t]{1,20}$" -"{date, arbitrary precision}" NMDC string serialization DH pattern regex ^[12]\d{3}(?:(?:-(?:0[1-9]|1[0-2]))(?:-(?:0[1-9]|[12]\d|3[01]))?)?$ -{termLabel} {[termID]}; {timestamp} MIxS string serialization DH pattern regex "^\S+.*\S+ \[[A-za-z]+:\d+\]; ([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24\:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$" some words [ENVO:123]; 2022-01-01T10:10:10 TRUE FALSE FALSE FALSE FALSE TRUE TRUE FALSE FALSE FALSE TRUE FALSE FALSE FALSE -{termLabel} {[termID]};{timestamp} MIxS string serialization DH pattern regex "^\S+.*\S+ \[[A-za-z]+:\d+\]; ([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24\:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$" some words [ENVO:123]; 2022-01-01T10:10:10 TRUE FALSE FALSE FALSE FALSE TRUE TRUE FALSE FALSE FALSE TRUE FALSE FALSE FALSE -{termLabel} {[termID]} MIxS string serialization DH pattern regex ^\S+.*\S+ \[[A-za-z]+:\d+\]$ shouldn't really just be for ENVO FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -{text};{timestamp} MIxS string serialization DH pattern regex "^\S+.*\S+;([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24\:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$" some words;2022-01-01T10:10:10 TRUE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE TRUE FALSE FALSE FALSE -{text};{float} {unit};{float} {unit} MIxS string serialization DH pattern regex ^\S+.*\S+;[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)? \S+;[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)? \S+$ some words;1.3 mg;1.3 mg TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE \ No newline at end of file From d57e7feecf5dd3571244a2382d00321cd1d48a24 Mon Sep 17 00:00:00 2001 From: "Mark A. Miller" Date: Fri, 17 Mar 2023 11:36:23 -0400 Subject: [PATCH 2/2] one sheets_and_friends TSV of each type still need to work on pattern for {text};{float} {unit};{timestamp}. Also, still need to get more yq commands into the validation and modification sheets --- project.Makefile | 3 +- ...submission-schema_validation_converter.tsv | 55 ++++++------------- ...sion-schema_validation_converter_empty.tsv | 1 - ...SampleData-water-data-alkalinity-list.yaml | 3 + ...ampleData-water-data-broad-label-only.yaml | 2 + ...SampleData-water-data-broad-term-only.yaml | 2 + ...leData-water-data-depth-invalid-range.yaml | 2 + ...-water-data-incomplete-organsim_count.yaml | 2 + ...Data-water-data-invalid-analysis-type.yaml | 2 + ...Data-water-data-invalid-rel_to_oxygen.yaml | 2 + ...leData-water-data-invalid-tidal_stage.yaml | 2 + .../SampleData-water-data-missing-broad.yaml | 2 + .../SampleData-water-data-no-samp_name.yaml | 10 ++++ ...ampleData-water-data-no-source_mat_id.yaml | 9 +++ ...pleData-water-data-numeric-alkalinity.yaml | 2 + .../SampleData-water-data-numeric-depth.yaml | 2 + ...er-data-organsim_count-invalid-method.yaml | 2 + ...eData-water-data-scalar-analysis-type.yaml | 2 + ...mpleData-water-data-string-alkalinity.yaml | 2 + ...ampleData-water-data-string-c-n-ratio.yaml | 2 + .../SampleData-water-data-string-depth.yaml | 2 + 21 files changed, 72 insertions(+), 39 deletions(-) delete mode 100644 sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_validation_converter_empty.tsv create mode 100644 src/data/invalid/SampleData-water-data-no-samp_name.yaml create mode 100644 src/data/invalid/SampleData-water-data-no-source_mat_id.yaml diff --git a/project.Makefile b/project.Makefile index 5ddb8f89..7cf93b14 100644 --- a/project.Makefile +++ b/project.Makefile @@ -231,9 +231,10 @@ local/with_shuttles_yq.yaml: local/with_shuttles.yaml modifications_cleanup: rm -rf sheets_and_friends/yaml_out/with_modifications.yaml +# sheets-for-nmdc-submission-schema_validation_converter_empty.tsv local/with_modifications.yaml: local/with_shuttles_yq.yaml \ sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_modifications_long-dont-mod-water.tsv \ -sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_validation_converter_empty.tsv +sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_validation_converter.tsv $(RUN) modifications_and_validation \ --yaml_input $< \ --modifications_config_tsv $(word 2,$^) \ diff --git a/sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_validation_converter.tsv b/sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_validation_converter.tsv index 08408605..ca76d7d1 100644 --- a/sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_validation_converter.tsv +++ b/sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_validation_converter.tsv @@ -1,37 +1,18 @@ -from_val from_type to_type to_val notes tested ; | PMID DOI URL [ time HH date YYYY temporal float {{ - -date linkml range DH datatype xs:date FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE TRUE FALSE FALSE FALSE -timestamp value linkml range DH datatype xs:date "^([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24\:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$" FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE TRUE FALSE FALSE FALSE -{timestamp} MIxS string serialization DH datatype xs:date "^([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24\:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$" FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE TRUE FALSE FALSE FALSE -YYYY-MM-DD MIxS string serialization DH datatype xs:date ^\d{4}\-(0[1-9]|1[012])\-(0[1-9]|[12][0-9]|3[01])$ FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUE FALSE FALSE TRUE -double linkml range DH datatype xs:decimal FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -{float} MIxS string serialization DH datatype xs:decimal [-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)? FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE -{integer} MIxS string serialization DH datatype xs:nonNegativeInteger why non-negative? FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -string linkml range DH datatype xs:token FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -{text} MIxS string serialization DH datatype xs:token FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -{text}:{text} MIxS string serialization DH pattern regex [^\:\n\r]+\:[^\:\n\r]+ FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -{text < 20 characters} NMDC string serialization DH pattern regex "^.{1,20}$" -"{time, seconds optional}" NMDC string serialization DH pattern regex ^([01]?\d|2[0-3]|24(?=:00?:00?$)):([0-5]\d)(:([0-5]\d))?$ -HH:MM:SS MIxS string serialization DH pattern regex ^(2[0-3]|[01]?[0-9]):([0-5]?[0-9])$ FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE TRUE FALSE FALSE FALSE -{lat lon} NMDC string serialization DH pattern regex ^[-+]?([1-8]?\d(\.\d+)?|90(\.0+)?)\s[-+]?(180(\.0+)?|((1[0-7]\d)|([1-9]?\d))(\.\d+)?)$ -quantity value linkml range DH pattern regex ^[-+]?[0-9]*\.?[0-9]+ +\S.*$ FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -{float} {float} MIxS string serialization DH pattern regex ^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)? [-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$ not a good validation for lat lon / lat_lon 1.3 4.5 FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE -{float} {unit} MIxS string serialization DH pattern regex ^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)? \S+$ FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE -{float}|{float}-{float} MIxS string serialization DH pattern regex ^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$|^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?-[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$ FALSE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE TRUE -"{text}: {text}, {text}" NMDC string serialization DH pattern regex "^[^:, ][^:]*: [^:, ][^,]*, [^:, ].*$" -"{date, arbitrary precision}" NMDC string serialization DH pattern regex ^[12]\d{3}(?:(?:-(?:0[1-9]|1[0-2]))(?:-(?:0[1-9]|[12]\d|3[01]))?)?$ -{text};{float} {unit} MIxS string serialization DH pattern regex ^\S*;[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)? \S+$ TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE -{termLabel} {[termID]}; {timestamp} MIxS string serialization DH pattern regex "^\S+.*\S+ \[ENVO:\d+\]; ([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24\:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$" some words [ENVO:123]; 2022-01-01T10:10:10 TRUE FALSE FALSE FALSE FALSE TRUE TRUE FALSE FALSE FALSE TRUE FALSE FALSE FALSE -{termLabel} {[termID]};{timestamp} MIxS string serialization DH pattern regex "^\S+.*\S+ \[ENVO:\d+\]; ([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24\:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$" some words [ENVO:123]; 2022-01-01T10:10:10 TRUE FALSE FALSE FALSE FALSE TRUE TRUE FALSE FALSE FALSE TRUE FALSE FALSE FALSE -{termLabel} {[termID]} MIxS string serialization DH pattern regex ^\S+.*\S+ \[ENVO:\d+\]$ shouldn't really just be for ENVO FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -{text};{timestamp} MIxS string serialization DH pattern regex "^\S+.*\S+;([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24\:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$" some words;2022-01-01T10:10:10 TRUE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE TRUE FALSE FALSE FALSE -{text};{float} {unit};{timestamp} MIxS string serialization DH pattern regex "^\S+.*\S+;[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)? \S+;([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24\:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$" some words;1.3 mg;2022-01 TRUE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE TRUE TRUE FALSE FALSE -{text};{float} {unit};{float} {unit} MIxS string serialization DH pattern regex ^\S+.*\S+;[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)? \S+;[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)? \S+$ some words;1.3 mg;1.3 mg TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE -{{text}|{float} {unit}};{float} {unit} MIxS string serialization TRUE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUE FALSE -{boolean};{Rn/start_time/end_time/duration} MIxS string serialization TRUE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE TRUE FALSE FALSE FALSE -{float} {unit};{Rn/start_time/end_time/duration} MIxS string serialization TRUE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE TRUE TRUE FALSE FALSE -{PMID}|{DOI}|{URL} MIxS string serialization FALSE TRUE TRUE TRUE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -{PMID}|{DOI}|{URL}|{text} MIxS string serialization FALSE TRUE TRUE TRUE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -"{term}: {term}, {text}" MIxS string serialization FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -{termLabel} {[termID]}|{text} MIxS string serialization FALSE TRUE FALSE FALSE FALSE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE -{text};{float} {unit};{Rn/start_time/end_time/duration} MIxS string serialization TRUE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE TRUE TRUE FALSE FALSE -{text};{Rn/start_time/end_time/duration} MIxS string serialization TRUE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE TRUE FALSE FALSE FALSE \ No newline at end of file +from_val from_type to_type to_val len +{float} MIxS string serialization DH datatype float 5 +{text} MIxS string serialization DH datatype string 6 +{integer} MIxS string serialization DH datatype integer 7 +{text < 20 characters} NMDC string serialization DH pattern regex "^.{1,20}$" 9 +{text}:{text} MIxS string serialization DH pattern regex [^\:\n\r]+\:[^\:\n\r]+ 22 +"{text}: {text}, {text}" NMDC string serialization DH pattern regex "^[^:, ][^:]*: [^:, ][^,]*, [^:, ].*$" 36 +{float} {unit} MIxS string serialization DH pattern regex ^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)? \S+$ 44 +"{time, seconds optional}" NMDC string serialization DH pattern regex ^([01]?\d|2[0-3]|24(?=:00?:00?$)):([0-5]\d)(:([0-5]\d))?$ 57 +"{date, arbitrary precision}" NMDC string serialization DH pattern regex ^[12]\d{3}(?:(?:-(?:0[1-9]|1[0-2]))(?:-(?:0[1-9]|[12]\d|3[01]))?)?$ 67 +{float} {float} MIxS string serialization DH pattern regex ^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)? [-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$ 79 +{lat lon} NMDC string serialization DH pattern regex ^[-+]?([1-8]?\d(\.\d+)?|90(\.0+)?)\s[-+]?(180(\.0+)?|((1[0-7]\d)|([1-9]?\d))(\.\d+)?)$ 86 +{text};{float} {unit};{float} {unit} MIxS string serialization DH pattern regex ^\S+.*\S+;[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)? \S+;[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)? \S+$ 96 +{float}|{float}-{float} MIxS string serialization DH pattern regex ^([-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)? to )?[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$ #REF! +{text};{timestamp} MIxS string serialization DH pattern regex "^\S+.*\S+;([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24\:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$" 292 +{termLabel} {[termID]}; {timestamp} MIxS string serialization DH pattern regex "^\S+.*\S+ \[[a-zA-Z]{2,}:\d+\]; ([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24\:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$" 314 +{termLabel} {[termID]};{timestamp} MIxS string serialization DH pattern regex "^\S+.*\S+ \[[a-zA-Z]{2,}:\d+\];([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24\:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$" 313 +{text};{float} {unit};{timestamp} MIxS string serialization DH pattern regex .* 2 \ No newline at end of file diff --git a/sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_validation_converter_empty.tsv b/sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_validation_converter_empty.tsv deleted file mode 100644 index 367644a6..00000000 --- a/sheets_and_friends/tsv_in/sheets-for-nmdc-submission-schema_validation_converter_empty.tsv +++ /dev/null @@ -1 +0,0 @@ -from_val from_type to_type to_val notes tested ; | PMID DOI URL [ time HH date YYYY temporal float {{ - diff --git a/src/data/invalid/SampleData-water-data-alkalinity-list.yaml b/src/data/invalid/SampleData-water-data-alkalinity-list.yaml index 8ab102b2..202f206a 100644 --- a/src/data/invalid/SampleData-water-data-alkalinity-list.yaml +++ b/src/data/invalid/SampleData-water-data-alkalinity-list.yaml @@ -6,6 +6,9 @@ water_data: env_local_scale: sand [ONTO:1234] env_medium: sand [ONTO:1234] env_package: xyz + samp_name: xyz + source_mat_id: x:1 alkalinity: - 50 milligram per liter - 100 spoons per bucket + diff --git a/src/data/invalid/SampleData-water-data-broad-label-only.yaml b/src/data/invalid/SampleData-water-data-broad-label-only.yaml index 77f24947..2fea8bdd 100644 --- a/src/data/invalid/SampleData-water-data-broad-label-only.yaml +++ b/src/data/invalid/SampleData-water-data-broad-label-only.yaml @@ -6,3 +6,5 @@ water_data: env_local_scale: sand [ONTO:1234] env_medium: sand [ONTO:1234] env_package: xyz + samp_name: xyz + source_mat_id: x:1 \ No newline at end of file diff --git a/src/data/invalid/SampleData-water-data-broad-term-only.yaml b/src/data/invalid/SampleData-water-data-broad-term-only.yaml index b9a08e20..2d663866 100644 --- a/src/data/invalid/SampleData-water-data-broad-term-only.yaml +++ b/src/data/invalid/SampleData-water-data-broad-term-only.yaml @@ -5,3 +5,5 @@ water_data: env_local_scale: [ONTO:1234] env_medium: sand [ONTO:1234] env_package: xyz + samp_name: xyz + source_mat_id: x:1 \ No newline at end of file diff --git a/src/data/invalid/SampleData-water-data-depth-invalid-range.yaml b/src/data/invalid/SampleData-water-data-depth-invalid-range.yaml index 820b41a1..a1b2e3b3 100644 --- a/src/data/invalid/SampleData-water-data-depth-invalid-range.yaml +++ b/src/data/invalid/SampleData-water-data-depth-invalid-range.yaml @@ -7,3 +7,5 @@ water_data: env_medium: sand [ONTO:1234] env_package: xyz depth: 1.5-2.5 + samp_name: xyz + source_mat_id: x:1 \ No newline at end of file diff --git a/src/data/invalid/SampleData-water-data-incomplete-organsim_count.yaml b/src/data/invalid/SampleData-water-data-incomplete-organsim_count.yaml index e25d6520..895ca0f8 100644 --- a/src/data/invalid/SampleData-water-data-incomplete-organsim_count.yaml +++ b/src/data/invalid/SampleData-water-data-incomplete-organsim_count.yaml @@ -7,3 +7,5 @@ water_data: env_medium: sand [ONTO:1234] env_package: xyz organism_count: xyz;100 units + samp_name: xyz + source_mat_id: x:1 \ No newline at end of file diff --git a/src/data/invalid/SampleData-water-data-invalid-analysis-type.yaml b/src/data/invalid/SampleData-water-data-invalid-analysis-type.yaml index ece6fcbe..c91acb8a 100644 --- a/src/data/invalid/SampleData-water-data-invalid-analysis-type.yaml +++ b/src/data/invalid/SampleData-water-data-invalid-analysis-type.yaml @@ -6,3 +6,5 @@ water_data: env_local_scale: sand [ONTO:1234] env_medium: sand [ONTO:1234] env_package: xyz + samp_name: xyz + source_mat_id: x:1 \ No newline at end of file diff --git a/src/data/invalid/SampleData-water-data-invalid-rel_to_oxygen.yaml b/src/data/invalid/SampleData-water-data-invalid-rel_to_oxygen.yaml index 2d0dee9a..3c7cb3bc 100644 --- a/src/data/invalid/SampleData-water-data-invalid-rel_to_oxygen.yaml +++ b/src/data/invalid/SampleData-water-data-invalid-rel_to_oxygen.yaml @@ -7,3 +7,5 @@ water_data: env_medium: sand [ONTO:1234] env_package: xyz rel_to_oxygen: xyz + samp_name: xyz + source_mat_id: x:1 \ No newline at end of file diff --git a/src/data/invalid/SampleData-water-data-invalid-tidal_stage.yaml b/src/data/invalid/SampleData-water-data-invalid-tidal_stage.yaml index 9a018623..4c7f18cb 100644 --- a/src/data/invalid/SampleData-water-data-invalid-tidal_stage.yaml +++ b/src/data/invalid/SampleData-water-data-invalid-tidal_stage.yaml @@ -7,3 +7,5 @@ water_data: env_medium: sand [ONTO:1234] env_package: xyz tidal_stage: xyz + samp_name: xyz + source_mat_id: x:1 \ No newline at end of file diff --git a/src/data/invalid/SampleData-water-data-missing-broad.yaml b/src/data/invalid/SampleData-water-data-missing-broad.yaml index 209c08ec..dc91d34b 100644 --- a/src/data/invalid/SampleData-water-data-missing-broad.yaml +++ b/src/data/invalid/SampleData-water-data-missing-broad.yaml @@ -5,3 +5,5 @@ water_data: env_local_scale: sand [ONTO:1234] env_medium: sand [ONTO:1234] env_package: xyz + samp_name: xyz + source_mat_id: x:1 \ No newline at end of file diff --git a/src/data/invalid/SampleData-water-data-no-samp_name.yaml b/src/data/invalid/SampleData-water-data-no-samp_name.yaml new file mode 100644 index 00000000..a9c71721 --- /dev/null +++ b/src/data/invalid/SampleData-water-data-no-samp_name.yaml @@ -0,0 +1,10 @@ +water_data: + - analysis_type: + - metagenomics + - metatranscriptomics + env_broad_scale: oceanic epipelagic zone biome [ENVO:01000033] + env_local_scale: sand [ONTO:1234] + env_medium: sand [ONTO:1234] + env_package: xyz + source_mat_id: x:1 + diff --git a/src/data/invalid/SampleData-water-data-no-source_mat_id.yaml b/src/data/invalid/SampleData-water-data-no-source_mat_id.yaml new file mode 100644 index 00000000..ca0bd6fa --- /dev/null +++ b/src/data/invalid/SampleData-water-data-no-source_mat_id.yaml @@ -0,0 +1,9 @@ +water_data: + - analysis_type: + - metagenomics + - metatranscriptomics + env_broad_scale: oceanic epipelagic zone biome [ENVO:01000033] + env_local_scale: sand [ONTO:1234] + env_medium: sand [ONTO:1234] + env_package: xyz + samp_name: xyz \ No newline at end of file diff --git a/src/data/invalid/SampleData-water-data-numeric-alkalinity.yaml b/src/data/invalid/SampleData-water-data-numeric-alkalinity.yaml index 122102e7..2937577b 100644 --- a/src/data/invalid/SampleData-water-data-numeric-alkalinity.yaml +++ b/src/data/invalid/SampleData-water-data-numeric-alkalinity.yaml @@ -7,3 +7,5 @@ water_data: env_medium: sand [ONTO:1234] env_package: xyz alkalinity: 999 + samp_name: xyz + source_mat_id: x:1 \ No newline at end of file diff --git a/src/data/invalid/SampleData-water-data-numeric-depth.yaml b/src/data/invalid/SampleData-water-data-numeric-depth.yaml index 391208da..9fbbaff9 100644 --- a/src/data/invalid/SampleData-water-data-numeric-depth.yaml +++ b/src/data/invalid/SampleData-water-data-numeric-depth.yaml @@ -7,3 +7,5 @@ water_data: env_medium: sand [ONTO:1234] env_package: xyz depth: 1.5 + samp_name: xyz + source_mat_id: x:1 \ No newline at end of file diff --git a/src/data/invalid/SampleData-water-data-organsim_count-invalid-method.yaml b/src/data/invalid/SampleData-water-data-organsim_count-invalid-method.yaml index 6e933f52..de5c699f 100644 --- a/src/data/invalid/SampleData-water-data-organsim_count-invalid-method.yaml +++ b/src/data/invalid/SampleData-water-data-organsim_count-invalid-method.yaml @@ -7,3 +7,5 @@ water_data: env_medium: sand [ONTO:1234] env_package: xyz organism_count: xyz;100 units;xyz + samp_name: xyz + source_mat_id: x:1 \ No newline at end of file diff --git a/src/data/invalid/SampleData-water-data-scalar-analysis-type.yaml b/src/data/invalid/SampleData-water-data-scalar-analysis-type.yaml index afa2bed4..5d838df5 100644 --- a/src/data/invalid/SampleData-water-data-scalar-analysis-type.yaml +++ b/src/data/invalid/SampleData-water-data-scalar-analysis-type.yaml @@ -4,3 +4,5 @@ water_data: env_local_scale: sand [ONTO:1234] env_medium: sand [ONTO:1234] env_package: xyz + samp_name: xyz + source_mat_id: x:1 \ No newline at end of file diff --git a/src/data/invalid/SampleData-water-data-string-alkalinity.yaml b/src/data/invalid/SampleData-water-data-string-alkalinity.yaml index 7da13c98..ca073b5d 100644 --- a/src/data/invalid/SampleData-water-data-string-alkalinity.yaml +++ b/src/data/invalid/SampleData-water-data-string-alkalinity.yaml @@ -7,3 +7,5 @@ water_data: env_medium: sand [ONTO:1234] env_package: xyz alkalinity: really high + samp_name: xyz + source_mat_id: x:1 \ No newline at end of file diff --git a/src/data/invalid/SampleData-water-data-string-c-n-ratio.yaml b/src/data/invalid/SampleData-water-data-string-c-n-ratio.yaml index 2a699b1f..b26a2f64 100644 --- a/src/data/invalid/SampleData-water-data-string-c-n-ratio.yaml +++ b/src/data/invalid/SampleData-water-data-string-c-n-ratio.yaml @@ -7,3 +7,5 @@ water_data: env_medium: sand [ONTO:1234] env_package: xyz carb_nitro_ratio: really high + samp_name: xyz + source_mat_id: x:1 \ No newline at end of file diff --git a/src/data/invalid/SampleData-water-data-string-depth.yaml b/src/data/invalid/SampleData-water-data-string-depth.yaml index 880b95d4..c10a1de4 100644 --- a/src/data/invalid/SampleData-water-data-string-depth.yaml +++ b/src/data/invalid/SampleData-water-data-string-depth.yaml @@ -7,3 +7,5 @@ water_data: env_medium: sand [ONTO:1234] env_package: xyz depth: meters + samp_name: xyz + source_mat_id: x:1 \ No newline at end of file