https://github.com/cmungall/mixs-source
https://github.com/cmungall/mixs-source
genomicsstandards gsc linkml microbiome microniomedata mixs nmdc sample-metadata
Last synced: 7 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/cmungall/mixs-source
- Owner: cmungall
- Created: 2021-04-20T02:37:56.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2022-02-02T00:00:08.000Z (over 3 years ago)
- Last Synced: 2025-02-28T05:52:51.156Z (7 months ago)
- Topics: genomicsstandards, gsc, linkml, microbiome, microniomedata, mixs, nmdc, sample-metadata
- Language: Python
- Homepage: https://cmungall.github.io/mixs-source/
- Size: 34.5 MB
- Stars: 2
- Watchers: 4
- Forks: 3
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# mixs-source
This repo contains the draft MIxS schema for environmental packages and checklists.
Pages generated by this code will be served via https://github.com/GenomicsStandardsConsortium/gensc.github.io.
This repo may be merged with https://github.com/GenomicsStandardsConsortium/mixs
The source files are here:
* model/
* [schema/](model/schema/) -- schema files
* [mixs.yaml](model/schema/mixs.yaml) - container module
* [terms.yaml](model/schema/terms.yaml) - all terms (fields/slots)
* [checklists.yaml](model/schema/checklists.yaml) - checklists, e.g. MIMAG
* [soil.yaml](model/schema/soil.yaml) - soil package
* ...OTHER PACKAGES HEREThese are the files that should be edited
## Workflow for adding new CHECKLISTS
Edit [checklists.yaml](model/schema/checklists.yaml)
The easiest thing to do is to copy and paste an existing checklist, modifying the values
You will need to specify both `slots` and `slot_usage`
## Workflow for adding new TERMS
Edit [terms.yaml](model/schema/terms.yaml)
The easiest thing to do is to copy and paste an existing term, e.g.
```yaml
barometric_press:
is_a: environment field
aliases:
- barometric pressure
description: Force per unit area exerted against a surface by the weight of air
above that surface
range: quantity value
examples:
- value: 5 millibar
comments:
- 'Preferred unit: millibar'
slot_uri: MIXS:0000096
```The range field will be one of:
- string
- integer
- float
- quantity value
- an enum## Workflow for creating a new ENUM
TODO
## Workflow for adding new ENVIRONMENTAL PACKAGES
Create a NEW file in [model/schema](model/schema/)
The easiest thing to do is to copy a
## Deploying Documentation
This is currently in a different repo
There is a demo of a fork of the github pages repo with markdown generated in this repo copied over:
[https://cmungall.github.io/gensc.github.io/mixs6/](https://cmungall.github.io/gensc.github.io/mixs6/)
We can consider merging repos, but for now these are distinct, and docs are copied from one to another like this:
```bash
make gen-docs
cp docs/*.md ../gensc.github.io/mixs6/
```## Seeding the schema from google sheets
An early version of terms.yaml was by converting the legacy spreadhseet for MIxS6 using [mixs_converter.py](https://github.com/GenomicsStandardsConsortium/mixs-source/blob/main/gsctools/mixs_converter.py). After the release of MIxS6, the yaml will switch to being Source of Truth, and there will be no need to generate from sheets.
In the interim phase, see the Makefile for details on regenerating the yaml from google sheets/excel.