LookupKey

class lsst.daf.butler.LookupKey(name: str | None = None, dimensions: Iterable[str | Dimension] | None = None, dataId: dict[str, Any] | None = None, *, universe: DimensionUniverse | None = None)

Bases: object

Representation of key that can be used to lookup information.

Look up is based on dataset type name, storage class name, dimensions.

Parameters:
namestr, optional

Primary index string for lookup. If this string looks like it represents dimensions (via dim1+dim2+dim3 syntax) the name is converted to a DimensionGraph and stored in dimensions property.

dimensionsDimensionGraph, optional

Dimensions that are relevant for lookup. Should not be specified if name is also specified.

dataIddict, optional

Keys and values from a dataId that should control lookups.

universeDimensionUniverse, optional

Set of all known dimensions, used to expand and validate name or dimensions. Required if the key represents dimensions and a full DimensionGraph is not provided.

Attributes Summary

dataId

Return dict of keys/values that are important for dataId lookup.

dimensions

Dimensions associated with lookup (DimensionGraph).

name

Primary name string to use as lookup (str).

Methods Summary

clone([name, dimensions, dataId])

Clone the object, overriding some options.

Attributes Documentation

dataId

Return dict of keys/values that are important for dataId lookup.

(dict or None)

dimensions

Dimensions associated with lookup (DimensionGraph).

name

Primary name string to use as lookup (str).

Methods Documentation

clone(name: str | None = None, dimensions: DimensionGraph | None = None, dataId: dict[str, Any] | None = None) LookupKey

Clone the object, overriding some options.

Used to create a new instance of the object whilst updating some of it.

Parameters:
namestr, optional

Primary index string for lookup. Will override dimensions if dimensions are set.

dimensionsDimensionGraph, optional

Dimensions that are relevant for lookup. Will override name if name is already set.

dataIddict, optional

Keys and values from a dataId that should control lookups.

Returns:
cloneLookupKey

Copy with updates.