Metadata-Version: 2.1
Name: dandischema
Version: 0.5.1
Summary: Schemata for DANDI archive project
Home-page: http://dandiarchive.org
Author: DANDI developers
Author-email: team@dandiarchive.org
Maintainer: Yaroslav O. Halchenko
Maintainer-email: debian@onerussian.com
License: Apache 2.0
Project-URL: Source Code, https://github.com/dandi/dandischema
Platform: OS Independent
Classifier: Development Status :: 1 - Planning
Classifier: Environment :: Console
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Topic :: Scientific/Engineering
Requires-Python: >=3.7
Description-Content-Type: text/markdown; charset=UTF-8
Provides-Extra: style
Provides-Extra: test
Provides-Extra: all
License-File: LICENSE

A Python library for maintaining and managing DANDI metadata schemata. The
library helps create and validate DANDI schema-compliant metadata for Dandisets
and assets.

To use: `pip install dandischema`

Every Dandiset and associated asset has a metadata object that can be retrieved using
the DANDI API.

This library uses [Pydantic](https://github.com/samuelcolvin/pydantic) to implement 
all the metadata classes. Schemas are generated on schema modifications and placed into 
[this repository](https://github.com/dandi/schema/tree/master/releases). 

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

- models.py - contains the models and any changes should be made there
- 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](https://koumoul-dev.github.io/vuetify-jsonschema-form/latest/) to create a UI 
for metadata modification. The DANDI Web app uses this for Dandiset metadata modification.


