solidipes.loaders.rocrate_metadata module

class solidipes.loaders.rocrate_metadata.ROCrateMetadata(*args, **kwargs)[source]

Bases: CachedMetadata

RO-Crate metadata.

_load_rocrate_metadata() None[source]

Load field from RO-Crate metadata file if not already loaded from cache.

_rocrate_entity: Dataset | File | None
_rocrate_type: Literal['dataset', 'directory', 'file']
property additional_metadata
classmethod close_cached_metadata() None[source]

Close cached metadata and RO-Crate.

get_crate_metadata(key)[source]
get_rocrate_entity() Dataset | File[source]
property ontology_class[source]

Decorator for loadables that are saved as RO-Crate metadata.

ontology_is_matched

Check if the ontology is matched

class rocrate_metadata(fget, *args, **kwargs)

Bases: cached_loadable

Decorator for loadables that are saved as RO-Crate metadata.

wrapped_fget(obj)
wrapped_fset(obj, value) None
set_crate_metadata(key, value)[source]
update_cached_metadata() None[source]

Update cached metadata with instance’s fields listed in cached_attributes.

class solidipes.loaders.rocrate_metadata.ROCrateMetadataProperty(fget=None, fset=None, fdel=None, doc=None)[source]

Bases: property

Marker class for RO-Crate metadata properties.

class solidipes.loaders.rocrate_metadata.ROCrateProxy[source]

Bases: object

_crate: ROCrate | None
as_dict() dict[source]

Get the RO-Crate crate as a dictionary. Reads from the ro-crate-metadata.json file without updating it!

checksum: str | None
close_crate() None[source]

Close the RO-Crate crate.

property crate: ROCrate
write_json() bool[source]

Write the RO-Crate metadata file to disk if it has changed.

Returns True if the file was written, False otherwise.

class solidipes.loaders.rocrate_metadata.rocrate_metadata(fget, *args, **kwargs)[source]

Bases: cached_loadable

Decorator for loadables that are saved as RO-Crate metadata.

wrapped_fget(obj)[source]
wrapped_fset(obj, value) None[source]
solidipes.loaders.rocrate_metadata.shutil_copy_skip_wildcard(src, dst, *, follow_symlinks=True)[source]
solidipes.loaders.rocrate_metadata.update_rocrate_json() None[source]

Update the RO-Crate metadata file on disk if necessary.