The SEDRIS Data Representation Model
APPENDIX B - Constraints General Axis Constraints |
---|
The following restrictions apply.
In an <Enumeration Axis> instance X,
The axis_type of X shall correspond to an EA T bound to the abstract value type EDCS_AVT_ENUMERATION.
The entries of the axis_value_array of X shall be distinct and valid EEs for T.
In an <Interval Axis> instance X,
The axis_type of X shall correspond to an EA bound to a numeric value type.
Each individual entry in the axis_interval_value_array of X shall have a value_type consistent with the numeric data type to which T is bound, and this value_type shall be the same for all entries in the axis_interval_value_array.
If the axis_type of X is bound to an EQ, the value_unit shall be a member of the specified EQ.
If the axis_type of X is not bound to an EQ, the value_unit and value_scale shall be set to EUC_UNITLESS and ESC_UNI, respectively.
All entries in the axis_interval_value_array of X shall be mutually disjoint.
The entries in the axis_interval_value_array of X shall be arranged in either monotonically ascending or monotonically descending order.
In an <Irregular Axis> instance X,
The axis_type of X shall correspond to an EA bound to a numeric value type.
If the axis_type of X is bound to an EQ, the value_unit shall be a member of the specified EQ.
If the axis_type is not bound to an EQ, the value_unit and value_scale shall be set to EUC_UNITLESS and ESC_UNI, respectively.
Each individual entry in the axis_value_array of X shall have an attribute_value_type consistent with the axis_type, and this attribute_value_type shall be the same for all entries in the axis_value_array.
All entries in the axis_value_array of X shall be distinct.
The entries in the axis_value_array field of X shall be arranged in either monotonically ascending or monotonically descending order.
In a <Regular Axis> instance,
The axis_type shall correspond to an EA bound to a numeric value type.
The attribute_value_type of the first_value and spacing field values of X shall be the same, and shall be consistent with the numeric data type to which the value of the axis_type is bound.
If the axis_type is bound to an EQ, the value_unit shall be a member of the specified EQ.
If the axis_type is not bound to an EQ, the value_unit and value_scale shall be set to EUC_UNITLESS and ESC_UNI, respectively.
The <Regular Axis> class, the <Irregular Axis> class, and the <Interval Axis> class exist to specify some set of numeric values of an independent variable used to organize dependent values in some <Data Table> instance.
Further, arithmetic operations are required to compute the tick mark values of a <Regular Axis> instance from its first_value and spacing field values.
All <Axis> instances are required to specify distinct tick marks to avoid ambiguity.
For ease of processing, it is desirable to organize the tick mark values of <Interval Axis> instances and <Irregular Axis> instances monotonically.
axis_type = EAC_PRIMARY_SURFACE_THERMAL_CONDITION may be used only for an <Enumeration Axis> instance, and for no instance of any other <Axis> subclass.
Yes, but the value_unit and value_scale fields are ignored. The interpolation_type field value is not applicable, and shall therefore be set to SE_INTERPTYP_DISALLOWED.
In some problem domains, descending monotonicity is preferred, while in others, ascending is preferred.
Consider a <Data Table> instance describing atmospheric data, in which an <Irregular Axis> component W specifies a vertical coordinate in pressure units, which decreases with increasing height. In such a table, if the tick marks of W were required to be monotonically increasing, W could not be used to define a volume without "flipping the atmosphere over" to put the highest level at the first point on W and the lowest level at the last point on W, which could lead to confusion when the <Data Table> instance is processed by a consumer.
On the other hand, a <Data Table> instance describing oceanographic data with depth as an <Irregular Axis> component might be naturally organized in terms of increasing depth.
|