https://github.com/australianbiocommons/gen3_validator
Performs validation of json objects to a gen3 jsonschema. Also provides tools to validate metadata linkage between data nodes.
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.9%) to scientific vocabulary
Repository
Performs validation of json objects to a gen3 jsonschema. Also provides tools to validate metadata linkage between data nodes.
Basic Info
- Host: GitHub
- Owner: AustralianBioCommons
- License: apache-2.0
- Language: Python
- Default Branch: main
- Size: 11.3 MB
Statistics
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 3
- Releases: 4
Metadata Files
README.md
Gen3 Validator
Gen3 Validator is a Python toolkit designed to make working with Gen3 metadata schemas and data validation straightforward for developers.
With this tool, you can:
- Resolve and flatten Gen3 JSON schemas so you can work with them programmatically.
- Validate JSON metadata files against Gen3 schemas, catching schema violations early in your pipeline.
- Check linkage integrity between data nodes (e.g., ensuring all sample-to-subject references are valid).
- Parse Excel-based metadata templates and convert them to JSON for Gen3 ingestion.
- Get detailed validation results and summary stats as Python data structures or pandas DataFrames, making it easy to integrate with your own scripts or reporting tools.
Docs
Note: *I recommend you clone this repo, and walk through the examples in the usage page. The usage examples load data from the tests/data directory so you can see how the data is structured.
Installation
```bash pip install gen3validator pip show gen3validator
```
Dev Setup
- Make sure you have poetry installed.
- Clone the repository.
- Run the following command to activate the virtual environment.
bash eval $(poetry env activate) - Run the following command to install the dependencies.
bash poetry install - Run the following command to run the tests.
bash pytest -vv tests/---
License
See the license page for more information.
Owner
- Name: AustralianBioCommons
- Login: AustralianBioCommons
- Kind: organization
- Email: systems@biocommons.org.au
- Website: https://www.biocommons.org.au/
- Repositories: 17
- Profile: https://github.com/AustralianBioCommons
Documentation for the development, deployment and/or optimisation of key community-endorsed bioinformatics tools and workflows
GitHub Events
Total
- Create event: 4
- Issues event: 1
- Release event: 2
- Delete event: 2
- Push event: 26
- Pull request event: 6
Last Year
- Create event: 4
- Issues event: 1
- Release event: 2
- Delete event: 2
- Push event: 26
- Pull request event: 6
Packages
- Total packages: 1
- Total downloads: unknown
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 2
- Total maintainers: 1
pypi.org: gen3_validator
Comprehensive toolkit for resolving Gen3 JSON schemas, validating JSON metadata against schemas, and verifying linkage integrity between data nodes. Includes utilities for parsing Excel metadata templates, generating linkage configuration maps, orchestrating schema validation, and producing detailed validation reports and statistics
- Documentation: https://gen3_validator.readthedocs.io/
- License: Apache 2.0
-
Latest release: 1.1.0
published 10 months ago
Rankings
Maintainers (1)
Dependencies
- actions/checkout v3 composite
- actions/download-artifact v4 composite
- actions/setup-python v4 composite
- actions/upload-artifact v4 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- annotated-types 0.7.0
- attrs 25.3.0
- colorama 0.4.6
- exceptiongroup 1.3.0
- iniconfig 2.1.0
- jsonschema 4.25.0
- jsonschema-specifications 2025.4.1
- numpy 2.0.2
- numpy 2.3.2
- packaging 25.0
- pandas 2.3.1
- pluggy 1.6.0
- pydantic 2.11.7
- pydantic-core 2.33.2
- pyfakefs 5.9.2
- pygments 2.19.2
- pytest 8.4.1
- python-dateutil 2.9.0.post0
- pytz 2025.2
- referencing 0.36.2
- rpds-py 0.26.0
- six 1.17.0
- tomli 2.2.1
- typing 3.7.4.3
- typing-extensions 4.14.1
- typing-inspection 0.4.1
- tzdata 2025.2
- uuid 1.30
- jsonschema >=4.23.0
- numpy >=2.0.2
- pandas >=2.2.3
- pydantic >=2.10.6
- pyfakefs >=4.7.0
- pytest >=8.3.4
- typing >=3.7.4.3
- uuid >=1.30
- jsonschema *
- numpy *
- pandas *
- pydantic *
- pytest *
- typing *
- uuid *
- actions/checkout v4 composite
- actions/setup-python v5 composite
- peaceiris/actions-gh-pages v3 composite