The SEDRIS Data Representation Model
APPENDIX A - Classes Vertex With Component Indices |
---|
A specialization of the <Base Vertex> class, used to indicate that one or more of the <Base Vertex>'s components are contained within a <Hierarchical Table> instance found higher in the aggregation tree of the transmittal, and are thus referred to by "component index" rather than by direct attachment to the <Vertex With Component Indices>.
The purpose of this specialization is to make reuse and sharing of these components explicit, by placing them in appropriate <Hierarchical Table> instances for reference by indexing rather than direct aggregation.
Each index field value of a <Vertex With Component Indices> instance is either a sentinel value, SE_COMPONENT_IS_AGGREGATED, or an index into some table.
In lieu of a valid index value, an index field may be set to the sentinel value SE_COMPONENT_IS_AGGREGATED, which indicates that the corresponding component is not a reference to a table.
This sentinel is used both for cases where the <Vertex With Component Indices> instance has no components of the specified class, and where it directly references such components rather than referring to some <Hierarchical Table>.
An index field may be an actual index into the collection of <Hierarchical Table> instances which lie above the <Vertex With Component Indices> in the aggregation tree. An index is resolved to an actual component by traversing up the aggregation tree until the correct subclass of <Hierarchical Table> (with respect to the particular index being evaluated) is encountered, such that the span of the <Hierarchical Table> instance includes the index being evaluated. If the <Hierarchical Table> does span the index being evaluated, then its start_index is used to determine which of its ordered components corresponds to the requested index.
Note that for component relationships defined with a cardinality of 0..N, the corresponding subclasses of <Hierarchical Table> accomodate this cardinality, the corresponding <Hierarchical Table> subclasses may aggregate a "set" of target components as well as individual instances.
A producer of a transmittal wants to reuse the <Location> instances for the <Vertex> components of a group of <Polygon> instances. One possible construction is shown below.
In addition to the documentation for <Hierarchical Table> and its subclasses, see Part 4, Volume 7 Hierarchical Table Technical Guide of the SEDRIS Documentation Set.
Because if location_index == SE_COMPONENT_IS_AGGREGATED for a given <Vertex With Component Indices>, then the <Location> shall be aggregated directly, rather than obtained from a table.
Yes; they are defined as unsigned integers only so that sentinel values may be used to indicate when they are not applicable.
|