Datalad Metadata Model
This software implements the metadata model that datalad and datalad-metalad (from version 0.3.0) use to store metadata.
Model Elements (the model layer)
The metadata model is defined by the API of the top-level classes. Those are:
-
MetadataRootRecord-- holds top-level metadata information for a single version of a datalad dataset -
UUIDSet-- holds metadata root records for a set of datasets that are identified by their UUIDs and their version. -
TreeVersionList-- holds metadata root records and a sub-dataset tree for a dataset version and its sub-datasets -
Metadata-- represents metadata for a single item, i.e. dataset or file. Metadata is associated with extractor names and extraction parameters. -
DatasetTree-- a representation of the sub-dataset hierarchy of a dataset -
FileTree-- a representation of the file-tree of a dataset -
...
Because of the large size of some datalad-datasets, e.g. tens of thousands of sub-datasets and hundres of millions of files, the implementation allows focus-based operations on individual parts of the potentially very large metadata model. The implementation uses the proxy-pattern, that means, it loads, modifies, and saves only the minimal necessary model elements that are necessary to operate on the metadata-information that the user is interested in.
Storage layer
The model elements have to be persisted on a storage backend. How the model is mapped on storage backends is defined by the storage layer, that is to a large degree independent of the model layer. The intention is to support multiple storage backends in the past.
Currently, only one storage backend is supported:
git-mapping-- a storage backend that stores a metadata model in a git repository. The model objects are stored outside of existing branches. They are referenced bydatalad-specific git-references underrefs/datalad/*
Acknowledgements
This DataLad extension was developed with support from the German Federal Ministry of Education and Research (BMBF 01GQ1905), and the US National Science Foundation (NSF 1912266).
Metadata
Release files for datalad-metadata-model 0.3.11
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| datalad-metadata-model-0.3.11.tar.gz | 69.0 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| datalad_metadata_model-0.3.11-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 149.0 kB
Release files / datalad-metadata-model-0.3.11.tar.gz
| Download URL | datalad-metadata-model-0.3.11.tar.gz |
|---|---|
| Size | 69.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
95a113bb0eb5a27bf61b4a0ea6111f7cb01d707c0eba98359d9b8b87fcb078b4
|
|
BLAKE2b-256 checksum How to use checksums |
1a0074e4a9efa33645dfb896d2a762bb2d131c97015187a7d7568bb21576b77e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.9.18
|
Release files / datalad_metadata_model-0.3.11-py3-none-any.whl
| Download URL | datalad_metadata_model-0.3.11-py3-none-any.whl |
|---|---|
| Size | 80.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c9e9b4a1d0c57e4bc57cd6c73335fda4f4c57ece7e193031784ab64f7fff57b9
|
|
BLAKE2b-256 checksum How to use checksums |
ba6bd67f36f90effd0729cba9bec8d7f47f1c1484fa87614a6f8a274720cb946
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.9.18
|
Security for datalad-metadata-model 0.3.11
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.