biodata-models
Installation
biodata-models provides controlled vocabulary and registry models for biodata-schema.
Generally, you shouldn't install this package on its own.
Contributing
Install the dev dependencies:
pip install -e .[dev]
How to add a new model class
tl;dr
Add new classes to the _generators/models/*.csv files or create new files containing Enum-derived classes directly in the src folder.
Run ./run_all.sh in the top-level folder to rebuild models from their CSV files.
Details
The model class files, brain_atlas.py etc, are auto-generated. You should never need to modify the class files directly.
Instead, take a look at the jinja2 templates in the folder _generators/templates. The filename of the template is used to pull the corresponding .csv file and populate the data DataFrame. In the template you can pull data from the various columns and use them to populate each of the fields in your class.
To re-build all the models, run the run_all.sh bash script in the root folder, which loops through the template files and runs them through the generate_code function.
There are a few special cases, e.g. if data are missing in columns they will show up as float: nan. See the organizations.txt template for examples of how to handle this.
Documentation
Internal registries need to be enumerated in the aind-data-schema file src/aind_data_schema/utils/docs/registries_generator.py in the variable registries. This list controls what classes will have documentation automatically generated and cross-referenced correctly.
If you add a new external registry, you need to write the documentation manually in the aind-data-schema file docs/source/biodata_models/external.md.
Release files for biodata-models 0.0.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| biodata_models-0.0.7.tar.gz | 386.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| biodata_models-0.0.7-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 745.7 kB
Release files / biodata_models-0.0.7.tar.gz
| Download URL | biodata_models-0.0.7.tar.gz |
|---|---|
| Size | 386.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b2ef2ebfeddfcf8af4e35206f8e7b337cf376f522e03f30881e7ba018673ff06
|
|
BLAKE2b-256 checksum How to use checksums |
2986ebe19f09ae77bea0fece9581474632956f60c1c1cba41f86925016f5f06b
|
| 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 11, 2026.
Transparency logRelease files / biodata_models-0.0.7-py3-none-any.whl
| Download URL | biodata_models-0.0.7-py3-none-any.whl |
|---|---|
| Size | 359.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8df5220f96f2c5550068551899452ef978dbad2a6114146e258dfdf5a1dff7b4
|
|
BLAKE2b-256 checksum How to use checksums |
485742a855e6bf862df0a67e70016ed2d62db7d02f3aa3fd801f9ff7fa2a810d
|
| 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 11, 2026.
Transparency log