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.

https://github.com/australianbiocommons/gen3_validator

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
Last synced: 10 months ago · JSON representation

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
Created over 1 year ago · Last pushed 10 months ago
Metadata Files
Readme License

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

  1. Make sure you have poetry installed.
  2. Clone the repository.
  3. Run the following command to activate the virtual environment. bash eval $(poetry env activate)
  4. Run the following command to install the dependencies. bash poetry install
  5. 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

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

  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 8.7%
Average: 29.0%
Dependent repos count: 49.2%
Maintainers (1)
Last synced: 10 months ago

Dependencies

.github/workflows/build_test.yml actions
  • actions/checkout v3 composite
  • actions/download-artifact v4 composite
  • actions/setup-python v4 composite
  • actions/upload-artifact v4 composite
.github/workflows/publish_pypi.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
.github/workflows/publish_testpypi.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
poetry.lock pypi
  • 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
pyproject.toml pypi
  • 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
requirements.txt pypi
  • jsonschema *
  • numpy *
  • pandas *
  • pydantic *
  • pytest *
  • typing *
  • uuid *
.github/workflows/sphinx_docs.yml actions
  • actions/checkout v4 composite
  • actions/setup-python v5 composite
  • peaceiris/actions-gh-pages v3 composite