submission-schema
The NMDC submission schema.
Note that the while this repo is named submission-schema, the generated artifacts are named nmdc_submission_schema for disambiguation purposes when publishing to PyPI.
Website
Repository Structure
- examples/ - example data
- project/ - project files (do not edit these)
- src/ - source files (edit these)
- nmdc_submission_schema
- schema -- LinkML schema (edit this)
- nmdc_submission_schema
- datamodel -- Generated python datamodel
- tests - python tests
Developer Documentation
Updating the submission schema
The version of nmdc-schema used as a basis when building the submission schema is controlled by a dependency in the dev group, specified in pyproject.toml. You can update the version used by running:
uv add --group dev "nmdc-schema==X.Y.Z" # replace X.Y.Z with the desired version
Building the submission schema
Here's how you can generate the submission schema release artifacts:
Container-based process
Prerequisites
- Docker is installed on your computer
- You are in the root directory of the repository
Procedure
- Build the container image you will later use to build the submission schema:
docker build -t submission-schema-builder -f builder.Dockerfile .
- If you haven't already done so (see the "Updating the submission schema" section above), use that container image to update the
nmdc-schemadependency of the submission schema:docker run --rm -it -v ${PWD}:/submission-schema submission-schema-builder \ uv add --group dev "nmdc-schema==X.Y.Z" # replace X.Y.Z
Then, rebuild the container image (so it has that new version ofnmdc-schemainstalled):docker build -t submission-schema-builder -f builder.Dockerfile .
- Use the container image to build the submission schema:
docker run --rm -it -v ${PWD}:/submission-schema submission-schema-builder
- Commit the changes, using the new
nmdc-schemaversion number as the commit message; like this:git add . git commit -m "X.Y.Z" # replace X.Y.Z with the nmdc-schema version
- (Optional) Delete the container image:
docker image rm submission-schema-builder
Direct process
Procedure
- Install Python dependencies:
uv sync - Generate the release artifacts:
make clean all
- Commit the changes, using the new
nmdc-schemaversion number as the commit message; like this:git add . git commit -m "X.Y.Z" # replace X.Y.Z with the nmdc-schema version
Credits
this project was made with linkml-project-cookiecutter
Release files for nmdc-submission-schema 11.24.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| nmdc_submission_schema-11.24.0.tar.gz | 740.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| nmdc_submission_schema-11.24.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.5 MB
Release files / nmdc_submission_schema-11.24.0.tar.gz
| Download URL | nmdc_submission_schema-11.24.0.tar.gz |
|---|---|
| Size | 740.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
74b4da504406bbb3b1de04059f08506a7edf27cf1013219253fdf4f55ba75432
|
|
BLAKE2b-256 checksum How to use checksums |
fd072ff43fc8174a1360d78d7515e0aa1cccc8a9f4d180ad7fd222c01cd68bae
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 17, 2026.
Transparency logRelease files / nmdc_submission_schema-11.24.0-py3-none-any.whl
| Download URL | nmdc_submission_schema-11.24.0-py3-none-any.whl |
|---|---|
| Size | 756.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
cd8ce65dfce1afd674dafd4b09884b4b326b671a42d2b4ddda04635ff84d289e
|
|
BLAKE2b-256 checksum How to use checksums |
e55c27280bc59c8cbd67aa498e0906b9fbf4558d483768116f916b05e863cbe5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 17, 2026.
Transparency log