minas
Repository of proposed and combined MIxS + MInAS standardised metadata checklists using LinkML
Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 3 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (11.3%) to scientific vocabulary
Repository
Repository of proposed and combined MIxS + MInAS standardised metadata checklists using LinkML
Basic Info
- Host: GitHub
- Owner: MIxS-MInAS
- Language: Python
- Default Branch: master
- Homepage: https://mixs-minas.org
- Size: 5.27 MB
Statistics
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 4
- Releases: 0
Metadata Files
README.md
MInAS
This repository holds the combined base MIxS schema, plus the various extensions and combinations generated in the scope of the MInAS project.
The source YAML file is generated using the yq tool, merging each of the individual YAML files into a single one.
This merging happens once per extension release, and the resulting file is then used to generate the JSON schema and TSV using LinkML tools and scripts.
The resulting output files are stored in the src/ directory in file format specific subdirectories.
Schema Generation Instructions
Required tools and dependencies
The following tools are required to generate the schema files:
- linkml-toolkit
- Not yet on pip/conda etc! Will need to manually install
linkml(Version 1.8.1)- Available on pip:
pip install linkml==1.8.1
- Available on pip:
Deprecated
yq(version 4.44.2)- Note: version not on
condaorpiprequires binary or OS distribution installation
- Note: version not on
Merging the YAML files
To generate the combined YAML file, we can use a combination of yq and curl to download specific tagged releases from the MIxS and various MInAS repositories.
Release
For a release, (making sure updating the versions in the variables):
Specify release variables
```bash
Set versions
MIXSVERSION=6.2.0 EXTANCIENTVERSION=0.7.0 EXTRADIOCARBONDATINGVERSION=0.2.1 COMBINATIONSVERSION=0.2.1 ```
Download schemas
```bash
Core MIxS Schema
curl -o src/mixs/schema/mixs-v$MIXSVERSION.yaml "https://raw.githubusercontent.com/GenomicsStandardsConsortium/mixs/v$MIXSVERSION/src/mixs/schema/mixs.yaml" ## Base MIxS schema
MInAS Extensions
curl -o src/mixs/schema/ancient-v$EXTANCIENTVERSION.yaml "https://raw.githubusercontent.com/MIxS-MInAS/extension-ancient/v$EXTANCIENTVERSION/src/mixs/schema/ancient.yml" ## Ancient DNA extension curl -o src/mixs/schema/radiocarbon-dating-v$EXTRADIOCARBONDATINGVERSION.yaml "https://raw.githubusercontent.com/MIxS-MInAS/extension-radiocarbon-dating/v$EXTRADIOCARBONDATINGVERSION/src/mixs/schema/radiocarbon-dating.yml" ## Radiocarbon extension curl -o src/mixs/schema/minas-combinations-v$COMBINATIONSVERSION.yaml "https://raw.githubusercontent.com/MIxS-MInAS/minas-combinations/refs/tags/v$COMBINATIONSVERSION/src/mixs/schema/minas-combinations.yml" ## Combinations ```
Merge together with
linkml-toolkit```bash
Merge together
lmtk combine --mode merge --schema src/mixs/schema/mixs-v$MIXSVERSION.yaml \ -a src/mixs/schema/ancient-v$EXTANCIENTVERSION.yaml \ -a src/mixs/schema/radiocarbon-dating-v$EXTRADIOCARBONDATINGVERSION.yaml \ -a src/mixs/schema/minas-combinations-v$COMBINATIONSVERSION.yaml \ --output src/mixs/schema/mixs-minas.yaml
Fix some metadata to ensure passes linting
sed -i 's#source: https://github.com/MIxS-MInAS/extension-radiocarbon-dating/raw/main/proposals/0.1.0/extension-radiocarbon-dating-v010.csv#source: https://github.com/MIxS-MInAS/MInAS/#g' src/mixs/schema/mixs-minas.yaml ```
Validate that all new YAML files (extensions, combinations) are represented in the combine schema
bash for i in permit_scope localised_reservoir_offset_sd mims_symbiontassociated_ancient_data; do if [[ $(grep "$i" src/mixs/schema/mixs-minas.yaml | wc -l) -ge 2 ]]; then echo "$i: true"; else echo "$i: false"; fi done[!WARNING] There should be one string per input YAML file, and be aware these strings may change per release.
Lint and validate the newly extended MIxS schema that it is valid LinkML
bash linkml lint --validate src/mixs/schema/mixs-minas.yamlGenerate the JSON schema version using the LinkML package's
gen-json-schema:bash gen-json-schema src/mixs/schema/mixs-minas.yaml > src/mixs/schema/mixs-minas.jsonGenerate the old-style MIxS TSV files using the python3 script in the
scripts/directory:bash python3 ./scripts/linkml2class_tsvs.py --schema-file src/mixs/schema/mixs-minas.yaml --output-dir project/class-model-tsvs/[!NOTE] This script has been copied and modified very slightly to include the python3 shebang, and is placed under scripts until properly packaged for the MIxS project.
To use this script, you only need python3 and no other dependencies (it seems).
Update the
CITATION.cfffile with the new version of the schema and any new major contributors.Commit and push to GitHub.
Make release on GitHub using previous releases as a template.
Owner
- Name: MIxS-MInAS
- Login: MIxS-MInAS
- Kind: organization
- Repositories: 1
- Profile: https://github.com/MIxS-MInAS
Citation (CITATION.cff)
cff-version: 1.2.0
title: "Minimum Information about any Ancient Sequence (MInAS): MInAS Checklists (draft)"
version: 0.6.0
license: "CC0-1.0"
type: dataset
abstract: "(Draft) MInAS checklists of MIxS checklist extended to include MInAS extensions and combinations."
message: "If you use this schema, please cite it as below."
authors:
- given-names: James A.
family-names: Fellows Yates
orcid: "https://orcid.org/0000-0001-5585-6277"
- given-names: Meriam
family-names: Guellil
orcid: "https://orcid.org/0000-0002-7235-4604"
- given-names: Antonio
family-names: Fernandez Guerra
orcid: "https://orcid.org/0000-0002-8679-490X"
- given-names: Deon
family-names: de Jager
orcid: "https://orcid.org/0000-0003-4388-2624"
- given-names: Victor Yan Kin
family-names: Lee
orcid: "https://orcid.org/0009-0001-5598-9632"
- given-names: Ophélie
family-names: Lebrasseur
orcid: "https://orcid.org/0000-0003-0687-8538"
- given-names: Mohamed S.
family-names: Sarhan
orcid: "https://orcid.org/0000-0003-0904-976X"
- given-names: Kelly
family-names: Blevins
orcid: "https://orcid.org/0000-0002-5740-639X"
- given-names: Nasreen
family-names: Broomand
- given-names: Thiseas C.
family-names: Lamnidis
orcid: "https://orcid.org/0000-0003-4485-8570"
- given-names: Martyna
family-names: Molak
orcid: "https://orcid.org/0000-0001-5068-8649"
- given-names: Eleni
family-names: Seferidou
orcid: "https://orcid.org/0009-0000-0066-477X"
- given-names: Jānis
family-names: Ķimsis
- given-names: Clemens
family-names: Schmid
orcid: "https://orcid.org/0000-0003-3448-5715"
- given-names: Joe
family-names: Roe
orcid: "https://orcid.org/0000-0002-1011-1244"
- name: MInAS community contributors
website: "https://mixs-minas.org/contributors"
keywords:
- metadata
- standard
- schema
- ancient DNA
- palaeogenomics
- archaeogenomics
- MIxS
GitHub Events
Total
- Create event: 5
- Issues event: 2
- Release event: 5
- Issue comment event: 3
- Push event: 8
Last Year
- Create event: 5
- Issues event: 2
- Release event: 5
- Issue comment event: 3
- Push event: 8
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 1
- Total pull requests: 0
- Average time to close issues: about 2 months
- Average time to close pull requests: N/A
- Total issue authors: 1
- Total pull request authors: 0
- Average comments per issue: 3.0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 1
- Pull requests: 0
- Average time to close issues: about 2 months
- Average time to close pull requests: N/A
- Issue authors: 1
- Pull request authors: 0
- Average comments per issue: 3.0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- jfy133 (3)
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- EndBug/latest-tag v1.6.2 composite
- actions/checkout v4.1.6 composite