DimensionJoin¶
- 
class 
lsst.daf.butler.DimensionJoin(universe, name, config)¶ Bases:
lsst.daf.butler.DimensionElementA join that relates two or more
Dimensions.DimensionJoins usually map to many-to-many join tables or views that relateDimensiontables.DimensionJoinobjects are not directly constructable; they can only be obtained from aDimensionGraph.Attributes Summary
asNeededWhether this join only be included in a query when required, as opposed to whenever its dependencies are included ( bool).docDocumentation for this dimension ( str).hasRegionWhether this dimension is associated with a region on the sky ( bool).lhsThe Dimensions on the left hand side of the join (DimensionSet).nameName of this dimension ( str, read-only).rhsThe Dimensions on the right hand side of the join (DimensionSet).summarizesA set of other DimensionJoins that provide more fine-grained relationships than this one (DimensionJoinSet).universeThe graph of all dimensions compatible with self ( DimensionGraph).Methods Summary
dependencies([required, implied])Return the set of dimensions this dimension depends on. graph([implied])Return the minimal DimensionGraphthat containsself.links([expand, implied])Return the names of fields that uniquely identify this dimension in a data ID dict. Attributes Documentation
- 
asNeeded¶ Whether this join only be included in a query when required, as opposed to whenever its dependencies are included (
bool).
- 
lhs¶ The
Dimensions on the left hand side of the join (DimensionSet).Left vs. right is completely arbitrary; the terminology simply provides an easy way to distinguish between the two sides.
- 
name¶ Name of this dimension (
str, read-only).Also assumed to be the name of any associated table or view.
- 
rhs¶ The
Dimensions on the right hand side of the join (DimensionSet).Left vs. right is completely arbitrary; the terminology simply provides an easy way to distinguish between the two sides.
- 
summarizes¶ A set of other
DimensionJoins that provide more fine-grained relationships than this one (DimensionJoinSet).When a join “summarizes” another, it means the table for that join could (at least conceptually) be defined as an aggregate view on the summarized join table. For example, “tract_skypix_join” summarizes “patch_skypix_join”, because the set of skypix rows associated with a tract row is just the set of skypix rows associated with all patches associated with that tract. Or, in SQL:
CREATE VIEW tract_skypix_join AS SELECT DISTINCT skymap, tract, skypix FROM patch_skypix_join;
- 
universe¶ The graph of all dimensions compatible with self (
DimensionGraph).
Methods Documentation
- 
dependencies(required=True, implied=False)¶ Return the set of dimensions this dimension depends on.
Parameters: Returns: - dependencies : 
DimensionSet 
- dependencies : 
 
- 
graph(implied=False)¶ Return the minimal
DimensionGraphthat containsself.Parameters: Returns: - graph : 
DimensionGraph 
- graph : 
 
- 
links(expand=True, implied=False)¶ Return the names of fields that uniquely identify this dimension in a data ID dict.
Parameters: Returns: 
-