By K. R. "Mack" Mackenzie, with review and editorial by Tom Faulhaber and the NodeWarrior crew at Certive, Inc.
Dimensions are the building blocks on which spaces are defined and upon which constraints operate. At their most fundamental level, they provide a simple and reliable mechanism for organizing and locating points within a space that abstracts many discontinuities and inconsistencies in the space.
We define a dimension as an index set for a space. A space is defined on one or more dimensions. The cartesian product of the members of these index sets can uniquely identify every point in the defined space.
A dimension can be continuous:
or discrete:
Continuous dimensions are uncountable and have the property that for a continuous dimension for any two elements there exists a third element such that. The set of all real numbers is an example of a continuous dimension.
Discrete dimensions have countable members. Common examples of discrete dimensions are the set of integers, the alphabet, or a set of records in a table.
There is a third kind of dimension, a composite dimension. This type of dimension contains discontinuous regions of discrete and/or continuous members. Composite dimensions are not clearly defined at present and a more detailed discussion of their properties will be left for another time.
A dimension can be bounded or unbounded. It can have upper bounds or lower bounds. A dimension with both upper and lower bounds is bounded or fully bounded. A dimension with only upper or lower bounds but not both is partially bounded.
Unbounded:
Partially bounded:
Fully bounded:
A partially bounded continuous dimension with a lower bound:
A partially bounded continuous dimension with an upper bound:
A bounded continuous dimension:
Discrete dimensions can be broken into three subclasses of decreasing specificity:
á Cardinal – In a cardinal dimension, the members map directly on to a subset of the integers and the definitions of distance and order are meaningful.
á Ordinal – In an ordinal dimension, the members map directly on to a subset of the integers whose members are not guaranteed to be contiguous. This is useful for determining order but does not allow any determinations of distance. Distance is meaningless in ordinal dimensions.
á Nominal – In a nominal dimension, neither order nor distance are meaningful concepts. There is no defined relationship between the elements. This is useful for dimensions that enumerate categories (for example, sales regions).
By default, all simple discrete dimensions are bounded because they are defined by enumerating the members of the set. Such dimensions are called enumerated dimensions. They are implicitly bounded. The previous example of a discrete dimension is an enumerated dimension: .
Discrete dimensions can be partially bounded or unbounded if they have a forward extrapolation or backward extrapolation function defined for them and they also have corresponding upper or lower bounds.
A forward extrapolation function is one that provides:
Correspondingly, a backward extrapolation function defines:
A continuous dimension and a discrete dimension can be considered equivalent if:
is a continuous dimension:
is a discrete dimension:
iff
and they have corresponding bounds:
A continuous dimension can be treated as an equivalent discrete dimension if it has a pair of enumerator functions defined for it:
such that:
A discrete dimension can be treated as an equivalent continuous dimension if it has an interpolation function defined for it such that: