DatasetType¶
- 
class 
lsst.daf.butler.DatasetType(name, dimensions, storageClass, *, universe=None)¶ Bases:
objectA named category of Datasets that defines how they are organized, related, and stored.
A concrete, final class whose instances represent
DatasetTypes.DatasetTypeinstances may be constructed without aRegistry, but they must be registered viaRegistry.registerDatasetType()before corresponding Datasets may be added.DatasetTypeinstances are immutable.- Parameters
 - name
str A string name for the Dataset; must correspond to the same
DatasetTypeacross all Registries. Names must start with an upper or lowercase letter, and may contain only letters, numbers, and underscores. Component dataset types should contain a single period separating the base dataset type name from the component name (and may be recursive).- dimensions
DimensionGraphor iterable ofDimension Dimensions used to label and relate instances of this
DatasetType. If not aDimensionGraph,universemust be provided as well.- storageClass
StorageClassorstr Instance of a
StorageClassor name ofStorageClassthat defines how thisDatasetTypeis persisted.- universe
DimensionUniverse, optional Set of all known dimensions, used to normalize
dimensionsif it is not already aDimensionGraph.
- name
 
Attributes Summary
The
Dimensions that label and relate instances of thisDatasetType(DimensionGraph).A string name for the Dataset; must correspond to the same
DatasetTypeacross all Registries.StorageClassinstance that defines how thisDatasetTypeis persisted.Methods Summary
Component name (if defined)
componentTypeName(component)Given a component name, derive the datasetTypeName of that component
Boolean indicating whether this
DatasetTyperefers to a component of a composite.Boolean indicating whether this
DatasetTypeis a composite type.Return the root name of this dataset type and the component name (if defined).
nameWithComponent(datasetTypeName, componentName)Form a valid DatasetTypeName from a parent and component.
splitDatasetTypeName(datasetTypeName)Given a dataset type name, return the root name and the component name.
Attributes Documentation
- 
VALID_NAME_REGEX= re.compile('^[a-zA-Z][a-zA-Z0-9_]*(\\.[a-zA-Z][a-zA-Z0-9_]*)*$')¶ 
- 
dimensions¶ The
Dimensions that label and relate instances of thisDatasetType(DimensionGraph).
- 
name¶ A string name for the Dataset; must correspond to the same
DatasetTypeacross all Registries.
- 
storageClass¶ StorageClassinstance that defines how thisDatasetTypeis 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.
Noneif thisDatasetTypeis not associated with a component.
- comp
 
- 
componentTypeName(component)¶ Given a component name, derive the datasetTypeName of that component
- Parameters
 - component
str Name of component
- component
 - Returns
 - derived
str Compound name of this
DatasetTypeand the component.
- derived
 - Raises
 - KeyError
 Requested component is not supported by this
DatasetType.
- 
isComponent()¶ Boolean indicating whether this
DatasetTyperefers to a component of a composite.- Returns
 - isComponent
bool Trueif thisDatasetTypeis a component,Falseotherwise.
- isComponent
 
- 
isComposite()¶ Boolean indicating whether this
DatasetTypeis a composite type.- Returns
 - isComposite
bool Trueif thisDatasetTypeis a composite type,Falseotherwise.
- isComposite
 
- 
nameAndComponent()¶ Return the root name of this dataset type and the component name (if defined).
- Returns
 - rootName
str Root name for this
DatasetTypewithout any components.- componentName
str The component if it has been specified, else
None.
- rootName
 
- 
static 
nameWithComponent(datasetTypeName, componentName)¶ Form a valid DatasetTypeName from a parent and component.
No validation is performed.
- 
static 
splitDatasetTypeName(datasetTypeName)¶ Given a dataset type name, return the root name and the component name.
- Parameters
 - datasetTypeName
str The name of the dataset type, can include a component using a “.”-separator.
- datasetTypeName
 - Returns
 
Notes
If the dataset type name is
a.b.cthis method will return a root name ofaand a component name ofb.c.