Datalad Metadata Model
Project description
Datalad Metadata Model
This software implements the metadata model that datalad and datalad-metalad will use in the future (datalad-metalad>=0.3.0) to handle 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/*
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for datalad-metadata-model-0.3.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7f9672bb90b0527aca68822d0d4d559da33bfbfd7be690e95a1c3d99727dc8f4 |
|
MD5 | 5bbb34bcaaaf34d64f13e9810bc25700 |
|
BLAKE2b-256 | 650014f07d0fc2cd306fd2b47f8c07628c1ce1fde9819df379cfcfe8c203ac19 |
Hashes for datalad_metadata_model-0.3.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1ac83e2eb0d581a6b00523812eed4f2a1d0dfe73ab1d0c3f15f3475f68f22d9d |
|
MD5 | 5e573407f1c0a4a68026b9033cb1cc6c |
|
BLAKE2b-256 | 91d423d78a6097b3a0ea4bff8e1a8397b2a609a4969f213769989e64cff266a4 |