Schemas of the most common ancient DNA + sample type MIxS combination.
This repository holds partial LinkML schemas of the relevant classes and slots for defining ancient DNA specific combinations.
The purpose of these partial schemas is they can be 'merged' into draft full schemas to extend it, using e.g. yq or linkml-toolkit.
As such they will not work 'standalone', as they reference other components of the full schemas.
See the minas repository for such extended draft 'full' MIxS schemas including the combinations and new MInAS proposed extensions.
This happens via community work on Google Drive. Typically this involves getting a MIxS v5 style table, adding new columns, then assigning new slot_groups/slot_usage etc.
Example document: https://docs.google.com/spreadsheets/d/14vXu2dN0tHJivnlgCNAlJfV0VIhw_ajhKI-N40UjkkU/edit?usp=sharing
- Create a
combinations.csvfor an overhauled set of combinations underassets/combination-tsvs/v<upcoming_version> - Within this directory, run
bash ../../../src/scripts/table-to-combinationclass.sh combinations-<DATE>.csv
-
Download in CSV format the community re-ordered slot files from Google Sheets to the
assets/combinations-tsv/v<upcoming_version>/slots/ -
Rename all files:
rename 's/ /_/g' *
-
Within the directory, run:
for file in *.csv; do bash ../../../../src/scripts/communityreordering-to-slotusage.sh $file done
-
To get the basic template of the final combinations file from the root of the repository
minas_comb_ver="0.3" ## UPDATE EACH TIME! cat assets/combination-tsvs/v"$minas_comb_ver"/minas-combination-slots.txt assets/combination-tsvs/v"$minas_comb_ver"/minas-combination-classes.txt assets/combination-tsvs/v"$minas_comb_ver"/minas-combination-compliantdataslots.txt > src/mixs/schema/minas-combinations_new.yaml
-
(CURRENTLY) Manually add the contents of each newly generated
assets/combination-tsvs/v<upcoming_version>/slots/*yamlfile to the end of each corresponding class (i.e. the newslotsandslots_usageshould go immediately after eachclass_uri) -
Verify the YAML file looks valid
-
Delete the old file and rename the new one:
mv src/mixs/schema/minas-combinations_new.yaml src/mixs/schema/minas-combinations.yml