The SEDRIS Data Representation Model
APPENDIX A - Classes
Property Table Reference

Class Name: Property Table Reference

Superclass - <Property Table Reference Entry>

Subclasses

This DRM class is concrete and has no subclasses.

Definition

An instance of this DRM class is a reference to an N-1 dimensional 'slice' of an N-dimensional <Property Table> component of a <Data Table Library>, where N is the number of <Axis> components of the <Property Table>.

<Property Table Reference> exists primarily to allow a data provider to select a set of parameters from a standard <Property Table> containing an indexed collection of alternatives.

Since only one <Axis> requires a specific 'tick mark' to be specified, <Property Table Reference> specifies the axis_type of the <Axis> to be matched, and the index_on_axis specifies the 'tick mark' on that <Axis>.

Primary Page in DRM Diagram:

Secondary Pages in DRM Diagram:

Example

  1. See <Property Table Reference Control Link>, example 1.

FAQs

Why not use a collection of <Property Value> instances instead of a <Property Table Reference>?

In some cases this might be possible, and is not prohibited. However, some tables are multi-dimensional. It would not be possible to define <Property Value> instances to designate each combination of axis values that occur in a multi-dimensional table.

Why an N-1 dimensional slice?

This is the only case for which there is a currently identified need, given the recursive composition capabilities of the <Property Table> class.

What restrictions are there on axis_type?

The referenced <Property Table> shall contain an <Axis> with a matching axis_type; otherwise, there are no restrictions. Any <Axis> within the target <Property Table> may be specified.

Why is index_on_axis used instead of something corresponding to the actual <Axis>' tick mark type?

The index_on_axis is the (0-based) index of the 'tick mark' being referenced on the specified <Axis>. This allows the 'tick mark' to be specified in a manner independent of the class of the <Axis>. The only restriction is that the value of index_on_axis shall be between zero and axis_value_count-1 for the specified <Axis>.

If index_on_axis specifies some value j, then the (j+1)th 'tick mark' on the <Axis> is being referenced, regardless of the data type of the tick marks specified by the specific subclass of <Axis> being used.

Why is index_on_axis a zero-based index?

Because the corresponding <Axis> data structures for 'tick marks' are C arrays, and C uses zero-based indices for arrays.

Constraints

Associated to (one-way)

Composed of (two-way)

Component of (two-way)(inherited)

Component of (two-way)

Inherited Field Elements

This class has no inherited field elements.

Field Elements

SE_Element_Type axis_type;
SE_Integer_Unsigned index_on_axis;

Prev: Property Table. Next: Property Table Reference Control Link. Up:Index.

Last updated: May 15, 2003 Copyright © 2003 SEDRIS™