Skip to main content

Build status codecov PyPI version GitHub release (latest by date including pre-releases)

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 by datalad-specific git-references under refs/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)

Source distribution for datalad-metadata-model 0.3.11
File Size Uploaded Provenance
datalad-metadata-model-0.3.11.tar.gz 69.0 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for datalad-metadata-model 0.3.11
File Interpreter ABI Platform
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.

Release history Release notifications | RSS feed

This release

0.3.11 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page