Skip to main content

Schemata for DANDI archive project

Project description

DANDI Schema

dandi-schema is a Python library for maintaining and managing DANDI metadata schemata.

Installation

pip install dandischema

Description

Every Dandiset and associated asset has a metadata object that can be retrieved using the DANDI API. This library helps create and validate DANDI schema-compliant metadata for Dandisets and assets. It uses Pydantic to implement all the metadata classes. Schemas are generated on schema modifications and placed into this repository.

dandi-schema also generates JSON schema definitions and an associated context.json file for JSON-LD compliance of the metadata models.

Important files in this repository include:

  • models.py - contains the models
  • metadata.py - contains functions for validating, migrating, and aggregating metadata
  • datacite.py - converts the Dandiset metadata to a Datacite metadata structure

The generated JSON schemas can be used together with VJSF to create a UI for Dandiset metadata modification as used for Dandiset metadata modification on https://dandiarchive.org.

Also Pydantic models are used by DANDI Client/Library to validate metadata while submitting data to the archive, and later by the DANDI Archive itself to ensure that all metadata conforms the model before Dandiset is allowed to be published and gain a DOI. Such DOI generation is done via Datacite service, and dandi-schema library produces Datacite metadata records out of the Pydantic models.

Resources

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dandischema-0.10.0.tar.gz (57.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dandischema-0.10.0-py3-none-any.whl (62.1 kB view details)

Uploaded Python 3

File details

Details for the file dandischema-0.10.0.tar.gz.

File metadata

  • Download URL: dandischema-0.10.0.tar.gz
  • Upload date:
  • Size: 57.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.8.18

File hashes

Hashes for dandischema-0.10.0.tar.gz
Algorithm Hash digest
SHA256 78d895eb490ffd1c51555c01a23857682c613703d50cbfff265d5b9bb6dd7d2d
MD5 da33dba86fa0cb2cfff3aa029a229214
BLAKE2b-256 7268d8f8dccdd33ee5c801ab3b561fee94ee7139b140b3e8ade4b0f29639b087

See more details on using hashes here.

File details

Details for the file dandischema-0.10.0-py3-none-any.whl.

File metadata

  • Download URL: dandischema-0.10.0-py3-none-any.whl
  • Upload date:
  • Size: 62.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.8.18

File hashes

Hashes for dandischema-0.10.0-py3-none-any.whl
Algorithm Hash digest
SHA256 46f25e6dd58f22c991fbbc918d6720471c92018bf6f4cae38377b1271f324204
MD5 ec7e46832b72bdf4bcd92b51b298c539
BLAKE2b-256 a1e9c7826a42e30af041a7db6c6fca5378cfd3b261680e68fef65d88389cd444

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page