DimensionRecord

class lsst.daf.butler.DimensionRecord(**kwargs)

Bases: object

Base class for the Python representation of database records for a DimensionElement.

Parameters:
**kwargs

Field values for this record. Unrecognized keys are ignored. If this is the record for a Dimension, its primary key value may be provided with the actual name of the field (e.g. “id” or “name”), the name of the Dimension, or both. If this record class has a “timespan” attribute, “datetime_begin” and “datetime_end” keyword arguments may be provided instead of a single “timespan” keyword argument (but are ignored if a “timespan” argument is provided).

Notes

DimensionRecord subclasses are created dynamically for each DimensionElement in a DimensionUniverse, and are accessible via the DimensionElement.RecordClass attribute. The DimensionRecord base class itself is pure abstract, but does not use the abc module to indicate this because it does not have overridable methods.

Record classes have attributes that correspond exactly to the standard fields in the related database table, plus “region” and “timespan” attributes for spatial and/or temporal elements (respectively).

Instances are usually obtained from a Registry, but can be constructed directly from Python as well.

DimensionRecord instances are immutable.

Attributes Summary

dataId A dict-like identifier for this record’s primary keys (DataCoordinate).

Methods Summary

toDict(splitTimespan) Return a vanilla dict representation of this record.

Attributes Documentation

dataId

A dict-like identifier for this record’s primary keys (DataCoordinate).

Methods Documentation

toDict(splitTimespan: bool = False) → Dict[str, Any]

Return a vanilla dict representation of this record.

Parameters:
splitTimespan : bool, optional

If True (False is default) transform any “timespan” key value from a Timespan instance into a pair of regular (“datetime_begin”, “datetime_end”) fields.