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.4.tar.gz (60.9 kB view details)

Uploaded Source

Built Distribution

dandischema-0.10.4-py3-none-any.whl (65.4 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for dandischema-0.10.4.tar.gz
Algorithm Hash digest
SHA256 bef83ee03b9ee4c406a667771ca129541f1a27e9e1f0bed581eb1104ebc326aa
MD5 96832cfdc96ed3396827ee595911cf0a
BLAKE2b-256 4092b35d0a07d2c1ed269c904418e29bf3791e701f8b7c3784ad9a9610670ba7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dandischema-0.10.4-py3-none-any.whl
Algorithm Hash digest
SHA256 34c24c1c85146ac62dd0a4858b112ea147948d90fea19b74a8725870561bc459
MD5 e16f1675e17a02699707c30b134f678b
BLAKE2b-256 f8cdf1b1d5ba323ff59c718a3430035db1598c477f4b9bb3f61cf96aca370900

See more details on using hashes here.

Supported by

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