DatasetType

class lsst.daf.butler.DatasetType(name, dimensions, storageClass)

Bases: object

A named category of Datasets that defines how they are organized, related, and stored.

A concrete, final class whose instances represent DatasetTypes. DatasetType instances may be constructed without a Registry, but they must be registered via Registry.registerDatasetType() before corresponding Datasets may be added. DatasetType instances are immutable.

Parameters:
name : str

A string name for the Dataset; must correspond to the same DatasetType across all Registries.

dimensions : DimensionGraph or iterable of str

Dimensions used to label and relate instances of this DatasetType, or string names thereof.

storageClass : StorageClass or str

Instance of a StorageClass or name of StorageClass that defines how this DatasetType is persisted.

Attributes Summary

dimensions The Dimensions that label and relate instances of this DatasetType (DimensionGraph or DimensionNameSet).
name A string name for the Dataset; must correspond to the same DatasetType across all Registries.
storageClass StorageClass instance that defines how this DatasetType is persisted.

Methods Summary

component() Component name (if defined)
componentTypeName(component) Given a component name, derive the datasetTypeName of that component
isComposite() Boolean indicating whether this DatasetType is a composite type.
nameWithComponent(datasetTypeName, componentName) Form a valid DatasetTypeName from a parent and component.

Attributes Documentation

dimensions

The Dimensions that label and relate instances of this DatasetType (DimensionGraph or DimensionNameSet).

If this DatasetType was not obtained from or registered with a Registry, this will typically be a DimensionNameSet, with much less functionality (just an unsorted .names and comparison operators) than a full DimensionGraph.

name

A string name for the Dataset; must correspond to the same DatasetType across all Registries.

storageClass

StorageClass instance that defines how this DatasetType is persisted. Note that if DatasetType was constructed with a name of a StorageClass then Butler has to be initialized before using this property.

Methods Documentation

component()

Component name (if defined)

Returns:
comp : str

Name of component part of DatasetType name. None if this DatasetType is not associated with a component.

componentTypeName(component)

Given a component name, derive the datasetTypeName of that component

Parameters:
component : str

Name of component

Returns:
derived : str

Compound name of this DatasetType and the component.

Raises:
KeyError

Requested component is not supported by this DatasetType.

isComposite()

Boolean indicating whether this DatasetType is a composite type.

Returns:
isComposite : bool

True if this DatasetType is a composite type, False otherwise.

static nameWithComponent(datasetTypeName, componentName)

Form a valid DatasetTypeName from a parent and component.

No validation is performed.

Parameters:
datasetTypeName : str

Base type name.

componentName : str

Name of component.

Returns:
compTypeName : str

Name to use for component DatasetType.