ISO/IEC CD2 18023-1 — SEDRIS functional specification

6 DRM classes

6.1 Introduction

6.1.1 Table of contents

Table 6.1 is the table of contents for this clause.

Table 6.1 — Table of contents

6 DRM classes

6.1 Introduction

6.1.1 Table of contents

6.1.2 Description

6.2 Constraints

6.2.1 Overview

6.2.2 Axis type constraints

6.2.3 Colour mapping constraints

6.2.4 Colour table size

6.2.5 Connected edge constraints

6.2.6 Contained node constraints

6.2.7 Continuous LOD constraints

6.2.8 Corresponding same data type

6.2.9 Cylindrical structure

6.2.10 Distinct link objects

6.2.11 Edges bordering faces

6.2.12 Environment_Root spatial reference frame

6.2.13 Face_Direction levels 0 - 3

6.2.14 Feature_Edge constraints

6.2.15 Face ring edge consistency

6.2.16 Hierarchy summary constraints

6.2.17 Homogeneous light rendering properties

6.2.18 Image_Anchor spatial reference frame

6.2.19 Image mapping functions and texture coordinates

6.2.20 Index_Codes within tables

6.2.21 Inheritance rule for Location

6.2.22 Level of detail related organizing principle

6.2.23 LSR model and reference surfaces

6.2.24 LSR_Transformation components

6.2.25 Mandatory metadata

6.2.26 Model reference type constraints

6.2.27 Model spatial reference frame

6.2.28 Nested primitive geometry

6.2.29 Non-crossing aggregations

6.2.30 Non-crossing associations

6.2.31 Non-cyclic aggregations

6.2.32 Non-empty Environment_Root

6.2.33 Non-empty Model

6.2.34 Non-overlapping DRM class summary items

6.2.35 Non-selfoverlapping Perimeter_Data locations

6.2.36No property conflicts

6.2.37 Oct tree related organizing principle

6.2.38 Perimeter_Related_Feature_Topology partitioning

6.2.39 Perimeter related organizing principle

6.2.40 Precedence of DRM_Property_Set_Index

6.2.41 Primitive_Summary_Item constraints

6.2.42 Property_Characteristic constraints

6.2.43 Property meaning constraints

6.2.44 Property set components

6.2.45 Property set table size

6.2.46 Publishable objects

6.2.47 Quad tree related organizing principle

6.2.48 Reference to Data_Table_Library

6.2.49 Relative spatial axes values

6.2.50 Required reference vector location

6.2.51 Separating plane organizing principle

6.2.52 Spatial index related organizing principle

6.2.53 State related organizing principle

6.2.54 Time dependency

6.2.55 Time interval calculation

6.2.56 Unique ID field

6.2.57 Variable meaning constraints

6.3.DRM class specifications

6.3.1 Overview

6.3.2 DRM_2D_Location

6.3.3 DRM_3D_Location

6.3.4 DRM_Absolute_Time

6.3.5 DRM_Absolute_Time_Interval

6.3.6 DRM_Access

6.3.7 DRM_Aggregate_Feature

6.3.8 DRM_Aggregate_Geometry

6.3.9 DRM_Alternate_Hierarchy_Related_Features

6.3.10 DRM_Alternate_Hierarchy_Related_Geometry

6.3.11 DRM_Ambient_Colour

6.3.12 DRM_Animation_Behaviour

6.3.13 DRM_Animation_Related_Geometry

6.3.14 DRM_Arc

6.3.15 DRM_Areal_Feature

6.3.16 DRM_Attachment_Point

6.3.17 DRM_Axis

6.3.18 DRM_AZ_2D_Location

6.3.19 DRM_Base_Level_Of_Detail_Data

6.3.20 DRM_Base_Positional_Light

6.3.21 DRM_Base_Summary_Item

6.3.22 DRM_Base_Time_Data

6.3.23 DRM_Blend_Directional_Light

6.3.24 DRM_Bounding_Volume

6.3.25 DRM_Browse_Media

6.3.26 DRM_Camera_Point

6.3.27 DRM_CC_3D_Location

6.3.28 DRM_CD_3D_Location

6.3.29 DRM_CD_Surface_Location

6.3.30 DRM_Citation

6.3.31 DRM_Classification_Data

6.3.32 DRM_Classification_Related_Features

6.3.33 DRM_Classification_Related_Geometry

6.3.34 DRM_CM_3D_Location

6.3.35 DRM_CMY_Colour

6.3.36 DRM_CMY_Colour_Control_Link

6.3.37 DRM_Collision_Volume

6.3.38 DRM_Colour

6.3.39 DRM_Colour_Data

6.3.40 DRM_Colour_Index

6.3.41 DRM_Colour_Index_Control_Link

6.3.42 DRM_Colour_Shininess

6.3.43 DRM_Colour_Table

6.3.44 DRM_Colour_Table_Group

6.3.45 DRM_Colour_Table_Library

6.3.46 DRM_Cone_Directional_Light

6.3.47 DRM_Conformal_Behaviour

6.3.48 DRM_Contact_Point

6.3.49 DRM_Continuous_Level_Of_Detail_Related_Geometry

6.3.50 DRM_Control_Link

6.3.51 DRM_Cross_Reference

6.3.52 DRM_Cylindrical_Volume_Extent

6.3.53 DRM_Data_Quality

6.3.54 DRM_Data_Table

6.3.55 DRM_Data_Table_Library

6.3.56 DRM_Description

6.3.57 DRM_Diffuse_Colour

6.3.58 DRM_Directional_Light_Behaviour

6.3.59 DRM_Distance_Level_Of_Detail_Data

6.3.60 DRM_DRM_Class_Summary_Item

6.3.61 DRM_EC_Augmented_3D_Location

6.3.62 DRM_EC_Surface_Location

6.3.63 DRM_EDCS_Use_Summary_Item

6.3.64 DRM_Edge_Direction

6.3.65 DRM_EI_3D_Location

6.3.66 DRM_Ellipse

6.3.67 DRM_Elliptic_Cylinder

6.3.68 DRM_Emissive_Colour

6.3.69 DRM_Enumeration_Axis

6.3.70 DRM_Environmental_Domain_Summary

6.3.71 DRM_Environment_Root

6.3.72 DRM_Expression

6.3.73 DRM_Face_Direction

6.3.74 DRM_Fade_Range

6.3.75 DRM_Feature

6.3.76 DRM_Feature_Edge

6.3.77 DRM_Feature_Face

6.3.78 DRM_Feature_Face_Ring

6.3.79 DRM_Feature_Hierarchy

6.3.80 DRM_Feature_Model

6.3.81 DRM_Feature_Model_Instance

6.3.82 DRM_Feature_Node

6.3.83 DRM_Feature_Topology

6.3.84 DRM_Feature_Topology_Hierarchy

6.3.85 DRM_Feature_Volume

6.3.86 DRM_Feature_Volume_Shell

6.3.87 DRM_Finite_Element_Mesh

6.3.88 DRM_Flashing_Light_Behaviour

6.3.89 DRM_Function

6.3.90 DRM_Geometric_Centre

6.3.91 DRM_Geometry

6.3.92 DRM_Geometry_Edge

6.3.93 DRM_Geometry_Face

6.3.94 DRM_Geometry_Hierarchy

6.3.95 DRM_Geometry_Model

6.3.96 DRM_Geometry_Model_Instance

6.3.97 DRM_Geometry_Node

6.3.98 DRM_Geometry_Topology

6.3.99 DRM_Geometry_Topology_Hierarchy

6.3.100 DRM_Geometry_Volume

6.3.101 DRM_Grid_Overlap

6.3.102 DRM_HAEC_3D_Location

6.3.103 DRM_HEEC_3D_Location

6.3.104 DRM_HEEQ_3D_Location

6.3.105 DRM_Hierarchy_Data

6.3.106 DRM_Hierarchy_Summary_Item

6.3.107 DRM_HSV_Colour

6.3.108 DRM_HSV_Colour_Control_Link

6.3.109 DRM_Icon

6.3.110 DRM_Image

6.3.111 DRM_Image_Anchor

6.3.112 DRM_Image_Library

6.3.113 DRM_Image_Lookup

6.3.114 DRM_Image_Mapping_Function

6.3.115 DRM_Index

6.3.116 DRM_Index_Level_Of_Detail_Data

6.3.117 DRM_Infinite_Light

6.3.118 DRM_Inline_Colour

6.3.119 DRM_In_Out

6.3.120 DRM_Interface_Template

6.3.121 DRM_Interval_Axis

6.3.122 DRM_Irregular_Axis

6.3.123 DRM_Keywords

6.3.124 DRM_Label

6.3.125 DRM_LCC_Augmented_3D_Location

6.3.126 DRM_LCC_Surface_Location

6.3.127 DRM_Level_Of_Detail_Related_Features

6.3.128 DRM_Level_Of_Detail_Related_Geometry

6.3.129 DRM_Library

6.3.130 DRM_Light_Rendering_Behaviour

6.3.131 DRM_Light_Rendering_Properties

6.3.132 DRM_Light_Rendering_Properties_Control_Link

6.3.133 DRM_Light_Source

6.3.134 DRM_Light_Source_Control_Link

6.3.135 DRM_Line

6.3.136 DRM_Lineage

6.3.137 DRM_Linear_Feature

6.3.138 DRM_Linear_Geometry

6.3.139 DRM_Literal

6.3.140 DRM_Lobe_Data

6.3.141 DRM_Local_4x4

6.3.142 DRM_Location

6.3.143 DRM_LSR_2D_Location

6.3.144 DRM_LSR_3D_Location

6.3.145 DRM_LSR_3D_Location_Control_Link

6.3.146 DRM_LSR_Transformation

6.3.147 DRM_LSR_Transformation_Step

6.3.148 DRM_LTAS_3D_Location

6.3.149 DRM_LTAS_Surface_Location

6.3.150 DRM_LTC_3D_Location

6.3.151 DRM_LTC_Surface_Location

6.3.152 DRM_LTE_3D_Location

6.3.153 DRM_LTE_Surface_Location

6.3.154 DRM_M_Augmented_3D_Location

6.3.155 DRM_M_Surface_Location

6.3.156 DRM_Map_Scale_Level_Of_Detail_Data

6.3.157 DRM_Mesh_Face_Table

6.3.158 DRM_Model

6.3.159 DRM_Model_Instance_Template_Index

6.3.160 DRM_Model_Library

6.3.161 DRM_Moving_Light_Behaviour

6.3.162 DRM_Octant_Data

6.3.163 DRM_Octant_Related_Features

6.3.164 DRM_Octant_Related_Geometry

6.3.165 DRM_OM_Augmented_3D_Location

6.3.166 DRM_OM_Surface_Location

6.3.167 DRM_Overload_Priority_Index

6.3.168 DRM_Parallelepiped_Volume_Extent

6.3.169 DRM_Perimeter_Data

6.3.170 DRM_Perimeter_Related_Feature_Topology

6.3.171 DRM_Perimeter_Related_Features

6.3.172 DRM_Perimeter_Related_Geometry

6.3.173 DRM_Perimeter_Related_Geometry_Topology

6.3.174 DRM_Point

6.3.175 DRM_Point_Feature

6.3.176 DRM_Polar_2D_Location

6.3.177 DRM_Polygon

6.3.178 DRM_Polygon_Control_Link

6.3.179 DRM_Polyhedron

6.3.180 DRM_Positional_Light

6.3.181 DRM_Predefined_Function

6.3.182 DRM_Presentation_Domain

6.3.183 DRM_Primitive_Colour

6.3.184 DRM_Primitive_Feature

6.3.185 DRM_Primitive_Geometry

6.3.186 DRM_Primitive_Summary_Item

6.3.187 DRM_Process_Step

6.3.188 DRM_Property

6.3.189 DRM_Property_Characteristic

6.3.190 DRM_Property_Description

6.3.191 DRM_Property_Grid

6.3.192 DRM_Property_Grid_Hook_Point

6.3.193 DRM_Property_Set

6.3.194 DRM_Property_Set_Index

6.3.195 DRM_Property_Set_Index_Control_Link

6.3.196 DRM_Property_Set_Table

6.3.197 DRM_Property_Set_Table_Group

6.3.198 DRM_Property_Set_Table_Library

6.3.199 DRM_Property_Table

6.3.200 DRM_Property_Table_Reference

6.3.201 DRM_Property_Table_Reference_Control_Link

6.3.202 DRM_Property_Value

6.3.203 DRM_PS_Augmented_3D_Location

6.3.204 DRM_PS_Surface_Location

6.3.205 DRM_Pseudo_Code_Function

6.3.206 DRM_Pyramid_Directional_Light

6.3.207 DRM_Quadrant_Data

6.3.208 DRM_Quadrant_Related_Features

6.3.209 DRM_Quadrant_Related_Geometry

6.3.210 DRM_Reference_Origin

6.3.211 DRM_Reference_Surface

6.3.212 DRM_Reference_Vector

6.3.213 DRM_Reference_Vector_Control_Link

6.3.214 DRM_Regular_Axis

6.3.215 DRM_Relative_Time

6.3.216 DRM_Relative_Time_Interval

6.3.217 DRM_Rendering_Priority_Level

6.3.218 DRM_Rendering_Properties

6.3.219 DRM Responsible_Party

6.3.220 DRM_RGB_Colour

6.3.221 DRM_RGB_Colour_Control_Link

6.3.222 DRM_Rotating_Light_Behaviour

6.3.223 DRM_Rotation

6.3.224 DRM_Rotation_Control_Link

6.3.225 DRM_Scale

6.3.226 DRM_Scale_Control_Link

6.3.227 DRM_Season

6.3.228 DRM_SEC_3D_Location

6.3.229 DRM_SEDRIS_Abstract_Base

6.3.230 DRM_Separating_Plane

6.3.231 DRM_Separating_Plane_Data

6.3.232 DRM_Separating_Plane_Related_Geometry

6.3.233 DRM_Separating_Plane_Relations

6.3.234 DRM_SEQ_3D_Location

6.3.235 DRM_SM_3D_Location

6.3.236 DRM_SMS_3D_Location

6.3.237 DRM_Sound

6.3.238 DRM_Sound_Instance

6.3.239 DRM_Sound_Instance_Control_Link

6.3.240 DRM_Sound_Library

6.3.241 DRM_Sound_Volume

6.3.242 DRM_Source

6.3.243 DRM_Spatial_Extent

6.3.244 DRM_Spatial_Index_Data

6.3.245 DRM_Spatial_Index_Related_Feature_Topology

6.3.246 DRM_Spatial_Index_Related_Features

6.3.247 DRM_Spatial_Index_Related_Geometry

6.3.248 DRM_Spatial_Index_Related_Geometry_Topology

6.3.249 DRM_Spatial_Resolution_Level_Of_Detail_Data

6.3.250 DRM_Specular_Colour

6.3.251 DRM_Spherical_Volume_Extent

6.3.252 DRM_Spot_Light

6.3.253 DRM_SRF_Summary

6.3.254 DRM_Stamp_Behaviour

6.3.255 DRM_State_Control_Link

6.3.256 DRM_State_Data

6.3.257 DRM_State_Related_Features

6.3.258 DRM_State_Related_Geometry

6.3.259 DRM_Strobing_Light_Behaviour

6.3.260 DRM_Surface_Geometry

6.3.261 DRM_Surface_Location

6.3.262 DRM_Symbol

6.3.263 DRM_Symbol_Library

6.3.264 DRM_Table_Property_Description

6.3.265 DRM_Tack_Point

6.3.266 DRM_Text

6.3.267 DRM_Texture_Coordinate

6.3.268 DRM_Texture_Coordinate_Control_Link

6.3.269 DRM_Time_Constraints_Data

6.3.270 DRM_Time_Interval

6.3.271 DRM_Time_Of_Day

6.3.272 DRM_Time_Point

6.3.273 DRM_Time_Related_Features

6.3.274 DRM_Time_Related_Geometry

6.3.275 DRM_TM_Augmented_3D_Location

6.3.276 DRM_TM_Surface_Location

6.3.277 DRM_Transformation

6.3.278 DRM_Translation

6.3.279 DRM_Translation_Control_Link

6.3.280 DRM_Translucency

6.3.281 DRM_Translucency_Control_Link

6.3.282 DRM_Transmittal_Root

6.3.283 DRM_Transmittal_Summary

6.3.284 DRM_Twinkling_Light_Behaviour

6.3.285 DRM_Union_Of_Feature_Topology

6.3.286 DRM_Union_Of_Features

6.3.287 DRM_Union_Of_Geometry

6.3.288 DRM_Union_Of_Geometry_Hierarchy

6.3.289 DRM_Union_Of_Geometry_Topology

6.3.290 DRM_Union_Of_Primitive_Geometry

6.3.291 DRM_Variable

6.3.292 DRM_Vertex

6.3.293 DRM_Volume

6.3.294 DRM_Volume_Extent

6.3.295 DRM_Volume_Geometry

6.3.296 DRM_Volume_Level_Of_Detail_Data

6.3.297 DRM_Volume_Light_Behaviour

6.3.298 DRM_World_Transformation

6.1.1 Description

This clause specifies the DRM classes used within SEDRIS to specify the various objects that are to be represented. Such DRM classes are composed of both fundamental data types and references to other DRM classes using the handle data types specified in 5.4.3 Object. These are used as the building blocks for more complex data structures that describe composites of information.

6.2 Constraints

6.2.1 Overview

The constraints stated below specify the restrictions on field values and associations that may apply when creating and modifying DRM class instances. Since many of these constraints apply to multiple DRM classes, they are specified here and only referenced in 6.3 DRM class specifications.

6.2.2 Axis type constraints

The following constraints apply:

  1. In <DRM Regular Axis>, <DRM Irregular Axis>, and <DRM Interval Axis> instances:
    1. The axis_type shall correspond to an EDCS Attribute (EA) bound to a numeric value type.
      1. If the axis_type is specified by an EDCS_Attribute_Code, it shall correspond to an EDCS Attribute (EA) bound to a numeric value type.
      2. If the axis_type is specified by a Variable_Code, it shall represent a variable bound to a numeric value type.
    2. If the axis_type is bound to some set of EDCS Unit Equivalence classes (EQs), the value_unit and value_scale shall be set to EUC_UNITLESS and shall be a member of one of the specified EQs.
    3. If the axis_type is not bound to any EQ, the value_unit and value_scale shall be set to EUC_UNITLESS and ESC_UNI, respectively.
  2. In a <DRM Enumeration Axis> instance X,
    1. The axis_type of X shall correspond to an EDCS Attribute T bound to the abstract value type ENUMERATION.
    2. The entries of X's axis_value_array shall be distinct, valid EEs for T.
  3. In a <DRM Interval Axis> instance X,
    1. Each individual entry in X's axis_interval_value_array shall have a value_type corresponding to an interval type, and this value_type shall be the same for all entries in the axis_interval_value_array.
    2. All entries in X's axis_interval_value_array shall be mutually disjoint.
    3. The entries in X's axis_interval_value_array shall be arranged in either monotonically ascending or monotonically descending order.
  4. In a <DRM Irregular Axis> instance X,
    1. Each individual entry in X's axis_value_array shall have a value_type consistent with the axis_type, and this value_type shall be the same for all entries in the axis_value_array.
    2. All entries in X's axis_value_array shall be distinct, and
    3. The entries in X's axis_value_array shall be arranged in either monotonically ascending or monotonically descending order.
  5. In an instance of <DRM Regular Axis>, the value_type of the first_value and spacing field values shall be the same, and shall be consistent with the numeric data type to which the axis_type's value is bound.
  6. In regard to spatial <DRM Axis> instances,
    1. A spatial <DRM Axis> is a <DRM Axis> instance with one of the following as its axis_type.
      1. For angular coordinates, such as latitude and longitude, EAC_SPATIAL_ANGULAR_PRIMARY_COORDINATE (representing the first coordinate value defined for a coordinate in the given coordinate system, such as latitude in the case of a latitude/longitude coordinate system) and
        EAC_SPATIAL_ANGULAR_SECONDARY_COORDINATE
        (representing the second coordinate value defined for a coordinate in the given coordinate system, such as longitude in the case of a latitude/longitude coordinate system);
      2. For u, v coordinates in a Euclidean coordinate system,
        EAC_SPATIAL_LINEAR_PRIMARY_COORDINATE corresponding to u as the primary coordinate and
        EAC_SPATIAL_LINEAR_SECONDARY_COORDINATE
        corresponding to v as the secondary coordinate; and
      3. For w (in a Euclidean coordinate system) and elevation coordinates,
        EAC_SPATIAL_LINEAR_TERTIARY_COORDINATE.
    2. The first spatial_axes_count <DRM Axis> components of a <DRM Property Grid> instance shall be spatial <DRM Axis> instances, each of which uniquely corresponds to a coordinate of the <DRM Property Grid> instance's spatial reference frame.
    3. No other <DRM Axis> instances in any other context shall be spatial.

6.2.3 Colour mapping constraints

The colour_mapping field of a <DRM Colour> shall not be empty.

In addition,

  1. The colour_mapping field of a <DRM Colour> shall not be empty.

  2. The PRIMARY and SECONDARY flags may only be used for objects with <DRM Light Rendering Properties>.

  3. The PRIMARY flag may not be combined with any other use of the Colour_Mapping data type.
  4. The SECONDARY flag may not be combined with any other use of the Colour_Mapping data type.

6.2.4 Colour table size

For a given <DRM Colour Table Group> instance G with table_size = k, each <DRM Colour Table> component T of G shall have k <DRM Primitive Colour> components. <DRM Colour Table> components of a <DRM Colour Table Group> are free to have different types of <DRM Primitive Colour> components from other <DRM Colour Table> components.

EXAMPLE Some components use <DRM Specular Colour>; some do not.

6.2.5 Connected edge constraints

The following constraints apply to instances of connected edge DRM classes:

  1. A <DRM Feature Node> FN has the following relationship with its <DRM Connected Feature Edge> components, if any exist.
    1. For each <Feature Edge> that has FN as a starting node, FN shall have a <DRM Connected Feature Edge> that associates to that <DRM Feature Edge>.
    2. For each <Feature Edge> that has FN as an ending node, FN shall have a <DRM Connected Feature Edge> that associates to that <DRM Feature Edge>.
    3. If FN is neither a starting nor an ending node of a given <DRM Feature Edge>, that <DRM Feature Edge> shall not appear among the associates of any of FN’s <DRM Connected Feature Edge> components.
    4. Consequently, for any given <DRM Feature Edge> FE of which FN is a starting or ending node, FE shall appear among the associates of FN’s <DRM Connected Feature Edge> components either:
      1. once, if FN is FE’s starting node and not its ending node,
      2. once, if FN is FE’s ending node and not its starting node, or
      3. twice, if FE is a loop.
  2. A <DRM Geometry Node> GN has the following relationship with its <DRM Connected Geometry Edge> components, if any exist.
    1. For each <DRM Geometry Edge> that has GN as a starting node, GN shall have a <DRM Connected Geometry Edge> that associates to that <DRM Geometry Edge>.
    2. For each <DRM Geometry Edge> that has GN as an ending node, GN shall have a <DRM Connected Geometry Edge> that associates to that <DRM Geometry Edge>.
    3. If GN is neither a starting nor an ending node of a given <DRM Geometry Edge>, that <Geometry Edge> shall not appear among the associates of any of GN’s <DRM Geometry Edge> components.
    4. Consequently, for any given <DRM Geometry Edge> GE of which GN is a starting or ending node, GE shall appear among the associates of GN’s <DRM Connected Geometry Edge> components either
      1. once, if GN is GE’s starting node and not its ending node,
      2. once, if GN is GE’s ending node and not its starting node, or
      3. twice, if GE is a loop.

6.2.6 Contained node constraints

The following constraints apply to instances of contained node DRM classes:

  1. A <DRM Feature Face> FF has the following relationship with its associated <DRM Feature Node>s, if any exist.
    1. At any feature topology level, if FF is associated with any <DRM Feature Node> FN,

      1. If FF has a <DRM External Feature Face Ring>, all of its associated <DRM Feature Node>s shall lie within the boundary of that ring. Otherwise, FF is a <DRM Universal Feature Face> and has no outer boundary.
      2. If FF has <DRM Internal Feature Face Ring>s, none of its associated <DRM Feature Node>s shall lie within the boundary of any of those rings that mark its inner boundaries.

      Since the association relationship between the <DRM Feature Face> and <DRM Feature Node> classes is bidirectional, these constraints apply to all <DRM Feature Face> associates of <DRM Feature Node>s.

    2. At feature topology levels 3 and 4, FF shall be associated to each <DRM Feature Node> that is contained within its boundary.
    3. If FF contains no <DRM Feature Node>s within its boundaries, it shall not have any associated <DRM Feature Node> instances.
    4. If a <DRM Feature Node> does not lie within the boundary of any <DRM Feature Face>, it shall not have any associated <DRM Feature Face> instances.
  2. A <DRM Geometry Face> GF has the following relationship with its associated <DRM Geometry Node>, if any exist.
    1. At any geometry topology level, if GF is associated with any <DRM Geometry Node>s GN, all of its associated <DRM Geometry Node>s shall lie within the boundary of its <DRM Geometry Face Ring>.

      Note that since the association relationship between the <DRM Geometry Face> and <DRM Geometry Node> classes is bidirectional, these constraints apply to all <Geometry Face> associates of <DRM Geometry Node> instances.

    2. At geometry topology levels 3 and 4, GF shall be associated to each <DRM Geometry Node> that is contained within its boundary.
    3. If GF contains no <DRM Geometry Node>s within its boundaries, it shall not have any associated <DRM Geometry Node>.
    4. If a <DRM Geometry Node> does not lie within the boundary of any <DRM Geometry Face>, it shall not have any associated <DRM Geometry Face>s.

6.2.7 Continuous LOD constraints

The following constraints apply:

  1. <DRM Continuous Level Of Detail Related Geometry> instances can be used only in the scope of some <DRM Environment Root>.
  2. A <DRM Primitive Geometry> instanced within the component tree of a <DRM Continuous Level Of Detail Related Geometry> shall not have a <DRM Union Of Primitive Geometry> component

6.2.8 Corresponding same data type

When the characteristic_value of an instance of class <DRM_Property_Characteristic> corresponds to an actual numerical value such as the UPPER_BOUND, the value shall have the same data_type, units, and scale as the attribute being constrained.

6.2.9 Cylindrical structure

For a <DRM Cylindrical Volume Extent> instance C, the following conditions shall hold:

  1. The <DRM Reference Vector> components of C shall comply with the restrictions imposed in the specification of the <DRM Cylindrical Volume Extent> class, including the restrictions on their vector_type field values and their orientation relative to one another.
  2. If a <DRM Reference Vector> component of C specifies a <DRM Location> component L, L shall be the <DRM Location 3D> specified by the volume context in which C appears.

For a <DRM Elliptic Cylinder> instance E, the following conditions shall hold:

  1. The <DRM Reference Vector> components of E shall comply with the restrictions imposed in the specification of the <DRM Elliptic Cylinder> class, including the restrictions on their vector_type field values and their orientation relative to one another.
  2. If a <DRM Reference Vector> component of E specifies a <DRM Location> component L, L shall be the <DRM Location 3D> component of E.

6.2.10 Distinct link objects

The following constraints apply to link objects:

  1. Under any single <DRM Aggregate Feature> or <DRM Aggregate Geometry> instance, the link objects (if any) shall have non-identical field values. In the case of <DRM Separating Plane Related Geometry>, this constraint applies to the link objects of the <DRM Separating Plane Relations> components of the aggregate, as the aggregate itself does not have link objects.
  2. Under any single topology hierarchy, whether a <DRM Feature Topology Hierarchy> or <DRM Geometry Topology Hierarchy>, the link objects shall have non-identical field values.
  3. Under any single model instance, whether a <DRM Feature Model Instance> or a <DRM Geometry Model Instance>, the <DRM Model Instance Template Index> instances shall be distinct.

6.2.11 Edges bordering faces

<DRM Feature Edge> instances have the following relationship with <DRM Feature Face> instances:

  1. If a <DRM Feature Edge> instance FE associates to a <DRM Feature Face> instance FF, FE shall be part of one of the <DRM Feature Face Ring> instances of FF.
  2. At feature topology level 3 or higher, if a <DRM Feature Edge> instance FE is part of any <DRM Feature Face Ring> instance of a <DRM Feature Face> instance FF, FE shall have an association to FF. At lower levels of topology, this relationship may be present, but it is not required.

<DRM Geometry Edge> instances have the following relationship with <DRM Geometry Face> instances:

  1. If a <DRM Geometry Edge> instance GE associates to a <Geometry Face> instance GF, GE shall be part of one of the <DRM Geometry Face Ring> instances of GF.
  2. At geometry topology level 3 or higher, if a <DRM Geometry Edge> instance GE is part of any <DRM Geometry Face Ring> instance of a <DRM Geometry Face> instance GF, GE shall have an association to GF. At lower levels of topology, this relationship may be present, but it is not required.

6.2.12 Environment_Root spatial reference frame

Consider a <DRM Transmittal Root> instance TR having one or more <DRM Environment Root> instances as components:

  1. For TR, no two <DRM Environment Root> instances may have identical spatial reference frame parameters.
  2. All <DRM Location> instances appearing in the hierarchy rooted at a given <DRM Environment Root> instance shall be specified within the spatial reference frame of that <DRM Environment Root> instance, unless such <DRM Location>s fall within the scope of an object that specifies its own spatial reference frame, such as a <Property Grid> or <DRM Image Anchor>.
  3. No <DRM Location> instances under a <DRM Environment Root> may be invalid within that spatial reference frame; they shall be either valid, or "extended".

6.2.13 Face_Direction levels 0 - 3

At feature topology levels 0 through 3, the front field of <DRM Face Direction> shall always be true.

6.2.14 Feature_Edge constraints

The following restrictions apply:

  1. The <DRM Location> instances within a <DRM Feature Edge> shall be distinct (i.e., no two may have the same coordinates).
  2. <DRM Feature Edge> instances may meet only at <DRM Feature Node> instances, and <DRM Feature Face> instances may meet only along one or more <DRM Feature Edge> instances.
  3. At feature topology level 2 or higher, no <DRM Feature Edge> may intersect with or overlap another <DRM Feature Edge>.
  4. At feature topology level 3, each <DRM Feature Edge> forms part of the boundaries of exactly two <DRM Feature Face> instances.

6.2.15 Face ring edge consistency

The following constraints apply:

  1. For each consecutive <DRM Feature Edge> within a <DRM Feature Face Ring>, and for each consecutive <DRM Geometry Edge> within a <DRM Geometry Face Ring>, the <DRM Edge Direction> shall be consistent with the starting and ending nodes of the edge.
  2. A <DRM Feature Edge> shall appear no more than twice in a <DRM Feature Face Ring>, once with each orientation.
  3. A <DRM Geometry Edge> shall appear no more than twice in a <DRM Geometry Face Ring>, once with each orientation.

6.2.16 Hierarchy summary constraints

The following constraints apply:

  1. An instance of <DRM Hierarchy Summary Item> shall have a drm_class field value corresponding to one of the following:
    1. <DRM Feature Hierarchy> or one of its subclasses, or

    2. <DRM Geometry Hierarchy> or one of its subclasses.
  2. For any <DRM Hierarchy Summary Item> instance B that is a component of another <DRM Hierarchy Summary Item> instance A, the class represented by B’s drm_class field value shall be specified as a formal component of A, and the multiplicity and multiplicity_meaning of B shall comply with the corresponding component relationship between the two classes.
  3. Consider a <DRM Environment Root> instance ER,
    1. If ER has a <DRM Geometry Hierarchy> component GH, ER shall have at most one <DRM Hierarchy Summary Item> component HS_G for which the drm_class field corresponds to a <DRM Geometry Hierarchy> subclass. If such a component instance HS_G exists, its field values shall comply with the following constraints:
      1. HS_G’s drm_class shall match that of GH.
      2. HS_G’s multiplicity_meaning value shall be EXACT, and its multiplicity field shall have value 1.
    2. If ER does not have a <DRM Geometry Hierarchy> component, ER shall not have any <DRM Hierarchy Summary Item> component for which the drm_class field corresponds to a <DRM Geometry Hierarchy> subclass.
    3. If ER has a <DRM Feature Hierarchy> component FH, ER shall have at most one <DRM Hierarchy Summary Item> component HS_F for which the drm_class field corresponds to a <DRM Feature Hierarchy> subclass. If such a component instance HS_F exists, its field values shall comply with the constraint
      1. HS_F’s drm_class shall match that of FH.
      2. HS_F’s multiplicity_meaning shall be EXACT, and its multiplicity shall have value 1.
    4. If ER does not have a <DRM Feature Hierarchy> component, ER shall not have any <DRM Hierarchy Summary Item> component for which the drm_class field corresponds to a <DRM Feature Hierarchy> subclass.
    5. Consider a <DRM Model> instance M.
      1. If M has a <DRM Geometry Model> with a <DRM Geometry Hierarchy> component GH, M shall have at most one <DRM Hierarchy Summary Item> component HS_G for which the drm_class field corresponds to a <DRM Geometry Hierarchy> subclass. If such a component instance HS_G exists, its field values shall comply with the following constraints.
        1. HS_G’s drm_class shall match that of GH.
        2. HS_G’s multiplicity_meaning shall be EXACT, and its multiplicity shall have value 1.
      2. If M does not have a <DRM Geometry Model> component, or its <DRM Geometry Model> does not have a <DRM Geometry Hierarchy> component, M shall not have any <DRM Hierarchy Summary Item> component for which the drm_class field corresponds to a <DRM Geometry Hierarchy> subclass.
      3. If M has a <DRM Feature Model> with a <DRM Feature Hierarchy> component FH, M shall have at most one <DRM Hierarchy Summary Item> component HS_F for which the drm_class field corresponds to a <DRM Feature Hierarchy> subclass. If such a component instance HS_F exists, its field values shall comply with the following constraints.

        1. HS_F’s drm_class shall match that of FH.

        2. HS_F’s multiplicity_meaning shall be EXACT, and its multiplicity
      4. If M does not have a <DRM Feature Model> component, or its <DRM Feature Model> does not have a <DRM Feature Hierarchy> component, M shall not have any <DRM Hierarchy Summary Item> component for which the drm_class field corresponds to a <DRM Feature Hierarchy> subclass.
    6. All <DRM Geometry Hierarchy> associates (or <DRM Feature Hierarchy> associates) of a given <DRM Hierarchy Summary Item> instance shall be instances of the class specified by its drm_class field value, and shall conform to the structure that it specifies.

6.2.17 Homogeneous light rendering properties

A <DRM Light Rendering Properties> may only contain one subclass of <DRM Directional Light Behaviour>.

6.2.18 Image_Anchor spatial reference frame

Consider a <DRM Image Anchor> instance X.

  1. The <DRM Location> instances in the scope of X shall be valid or “extended” within the spatial reference frame specified by X's srf_parameters.
  2. X shall be either a component of one or more <DRM Image> instances or of one or more <DRM Image Mapping Function> instances, but not both.
  3. If X is a component of a <DRM Image Mapping Function> instance F, and if F appears within the context of some spatial reference frame S, X's srf_parameters shall equal those specified by S.

6.2.19 Image mapping functions and texture coordinates

The number of <DRM Image Mapping Function> instances a <DRM Geometry> object has shall be equal to the number of <DRM Texture Coordinate>s for each <DRM Base Vertex> and <DRM Tack Point> within that <DRM Geometry>.

<DRM Image Mapping Function> instances for <DRM Feature>s, on the other hand, shall either have <DRM Image Anchor> components, or specify <DRM Image>s that have <DRM Image Anchor> components.

EXCEPTION:
If a <DRM Image Mapping Function> is used to specify a non-planar projection (e.g., spherical, cylindrical) it shall use a <DRM Image Anchor> component, and the <DRM Geometry> to which the <DRM Image Mapping Function> is attached cannot have <DRM Texture Coordinate>s or <DRM Tack Point>.

6.2.20 Index_Codes within tables

The following constraints apply:

  1. No <DRM Property> instance, other than a <DRM Table Property Description>, shall have an Index_Code meaning value.
  2. Consider a <DRM Data Table> instance DT, with a component <DRM Table Property Description> instance X, where X has a meaning value of DATA_TABLE_LIBRARY.

    For each corresponding cell value N in the <DRM Data Table> instance DT, if N is not a sentinel value for missing or excluded, N is an index into the ordered set of <DRM Data Table> components of a <DRM Data Table Library> where:

    1. The transmittal in which the <DRM Data Table> DT resides shall have a <DRM Data Table Library> instance L,
    2. The <DRM Data Table Library> L shall have at least N ordered <DRM Data Table> components, and
    3. The Nth <DRM Data Table> component of the <DRM Data Table Library> L shall have a <DRM Classification Data> whose tag matches the component_data_table_ecc of the <DRM Table Property Description> instance X.
      1. If the <DRM Classification Data> of the referenced Nth <DRM Data Table> has no component <DRM Property Value>s, the<DRM Table Property Description> instance X shall have none.
      2. If the <DRM Classification Data> of the referenced Nth <DRM Data Table> has j component <DRM Property Value>s, the <DRM Table Property Description> instance X shall have exactly j matching <DRM Property Value> instances.
  3. Consider a <DRM Data Table> instance DT, with a component <DRM Table Property Description> instance X, where X has a meaning Index_Code value of DATA_TABLE_COMPONENT.

    For each corresponding cell value N in the <DRM Data Table> instance DT, if N is not a sentinel value for missing or excluded, N is an index into the ordered set of <DRM Data Table> components of DT, where

    1. The <DRM Data Table> DT shall have at least N ordered <DRM Data Table> components,
    2. The Nth <DRM Data Table> component of DT shall have a <Classification Data> whose tag matches the component_data_table_ecc of the <DRM Table Property Description> instance X.
      1. If the <DRM Classification Data> of the referenced Nth <DRM Data Table> has no component <DRM Property Value>, the <DRM Table Property Description> instance X shall have none.

      2. If the <DRM Classification Data> of the referenced Nth <DRM Data Table> has j component <DRM Property Value>, the <DRM Table Property Description> instance X shall have exactly j matching <DRM Property Value>.
  4. Consider a <DRM Data Table> instance DT, with a component <DRM Table Property Description> instance X, where X has a meaning Index_Code value of PROP_TABLE_REF_COMPONENT.

    For each corresponding cell value N in the <DRM Data Table> instance DT, if N is not a sentinel value for missing or excluded, N is an index into the ordered set of <DRM Property Table Reference> components of DT, where:,

    1. The <DRM Data Table> DT shall have at least N ordered <DRM Property Table Reference> components,
    2. The Nth <DRM Property Table Reference> component of DT shall refer to a <DRM Property Table> whose <DRM Classification Data> whose tag matches the component_data_table_ecc of the <DRM Table Property Description> instance X.
      1. If the <DRM Classification Data> of the referenced <DRM Property Table> has no component <DRM Property Value>s, the <DRM Table Property Description> instance X shall have none.
      2. If the <DRM Classification Data> of the referenced <DRM Property Table> has j component <DRM Property Value>s, the <DRM Table Property Description> instance X shall have exactly j matching <DRM Property Value> instances.
  5. A <DRM Table Property Description> that is not covered by b, c, or d above shall have ECC_OBJECT as its component_data_table_ecc value.
  6. Consider a <DRM Data Table> instance DT, with a component <DRM Table Property Description> instance X where X has an EDCS_Attribute_Code as its meaning. If X has <DRM Property Value> components, they exist to qualify the meaning of X, such that X is considered unique among the <DRM Table Property Description> components of DT if its qualified meaning is unique among them.
  7. A <DRM Table Property Description> instance that is not covered by b, c, d, or f above shall have no <DRM Property Value> components.
  8. Consider a <DRM Data Table> instance DT, with a component <DRM Table Property Description> instance X, where X has a meaning Index_Code value of IMAGE_MAPPING_FUNCTION.

    For each corresponding cell value N in the <DRM Data Table> instance DT, if N is not a sentinel value for missing or excluded, N is an index into the ordered set of <DRM Image Mapping Function> components of DT, where the <DRM Data Table> DT shall have at least N ordered <DRM Image Mapping Function> components.

6.2.21 Inheritance rule for Location

Given any object that has a <DRM Location> component, that <DRM Location> (or the first <DRM Location> in an ordered list of <DRM Location> components) becomes the (default) <DRM Location> in the context for the aggregation tree stemming from that object.

6.2.22 Level of detail related organizing principle

For any level-of-detail related organization LRO, whether a <DRM Level Of Detail Related Features> or <DRM Level Of Detail Related Geometry>:

  1. The <DRM Base Level Of Detail Data> for each branch of LRO shall match the class specified by LRO’s lod_data_type field.
  2. For each pair of branches, if the <DRM Base Level Of Detail Data> overlap, neither shall be a subset of the other.
    1. For <DRM Distance Level Of Detail Data>, neither interval shall be contained within the other. Specifically:
      1. The ranges may touch at their endpoints; that is, the minimum_range of one may equal the maximum_range of the other.
      2. If the ranges overlap by more than one endpoint, each shall have at least one fade band, so that one is fading in while the other is fading out for the overlap range.
    2. For <DRM Volume Level Of Detail Data>:
      1. If the two branches both have outside = FALSE, neither volume may be contained within the other.
      2. The volumes specified may be identical if the link objects specify different values for their outside fields, provided that LRO complies with the Distinct link objects constraint.
    3. If LRO inherited a <DRM Base Level Of Detail Data> instance C as a component, such that C matches its lod_data_type, LRO’s link objects shall fall within the scope specified by C:
      1. If C is a <DRM Distance Level Of Detail Data> and LRO is DISTANCE, each link object specified by LRO shall specify a range within the region covered by C.
      2. If C is a <DRM Volume Level Of Detail Data> and LRO is VOLUME, each link object specified by LRO shall specify a volume lying within that of C.
      3. No other classes of C permit a matching LRO to occur in their inheritance tree.

6.2.23 LSR model and reference surfaces

A <DRM Model> specified using an LSR spatial reference frame (SRF) may not contain (aggregate) any <DRM Reference Surface> instances.

6.2.24 LSR_Transformation components

An <DRM LSR Transformation> instance L shall have a <DRM Local 4x4>, an ordered set of <DRM LSR Transformation Step> components, or both. If L has both a <DRM Local 4x4> and a set of <DRM LSR Transformation Step> components, the ordered set of <DRM LSR Transformation Step> components shall be mathematically equivalent to the <DRM Local 4x4>.

6.2.25 Mandatory metadata

Table 6.2 lists metadata classes. When these classes are instanced, at least the designated fields shall be populated.

Table 6.2 — Mandatory metadata

<DRM Access>

Consider a <DRM Access> instance A.

  1. If A's access_constraints is set to OTHER_CONSTRAINTS. A's other_constraints field shall contain a non-empty string specifying what those other constraints are.
  2. If A's use_constraints is set to OTHER_CONSTRAINTS. A's other_constraints field shall contain a non-empty string specifying what those other constraints are.

<DRM Browse Media>

The field name shall specify a non-empty string.

The field media_urn shall be a valid URN.

<DRM Citation>

The field title shall be a non-empty string.

<DRM Description>

The field abstract shall be a non-empty string

<DRM Keywords>

The field keyword_array shall be non-NULL.

For each entry in keyword_array, the thesaurus field shall contain a non-empty string. To indicate that no thesaurus is applicable, the thesaurus field shall have the value NONE.

For each entry in keyword_array, the keyword_list shall be a non-empty string, where keywords are separated by semicolons.

For any two entries in keyword_array, either the code fields or the thesaurus fields shall have different values.

<DRM Lineage>

An instance of <DRM Lineage> shall specify at least one of the following:

  1. a <DRM Process Step>,
  2. a <DRM Source>, or
  3. a non-empty string within its statement field.

<DRM Responsible Party>

The locale of each String field within a <DRM Responsible Party> instance shall be specified using the same country code as that specified by its address field.

At least one of the following fields shall contain a non-empty string:

  1. individual_name,
  2. position_name, or
  3. organization_name.

The voice_phone field of the Contact_Information value shall be a non-empty string.

The email_address field of the Contact_Information value shall contain a comma-separated list of syntactically valid e-mail addresses.

The web_site field of the Contact_Information> value, if specified, shall contain a comma-separated list of syntactically valid URLs.

At least one of the following shall be a non-empty string:

  1. individual_name,
  2. position_name, and/or
  3. organization_name.

email_address shall be a non-empty string, and shall be a comma-separated list of syntactically valid email addresses

web_site, if specified, shall be a comma-separated list of syntactically valid URLs

The locale of each String field within an instance of <DRM Responsible Party> shall be specified using the same country code as that used by the address except as noted above.

<DRM Process Step>

Given an instance P of <DRM Process Step>, the following conditions shall hold:

  1. P’s description field shall be a non-empty string.
  2. P’s <DRM Absolute Time Point> component shall have a time_significance value of OCCURRENCE.
  3. If P has <DRM Responsible Party> components, each shall specify PROCESSOR as its role.

<DRM Source>

The description field value shall be a non-empty string.

6.2.26 Model reference type constraints

The following constraints apply:

  1. If an instance of <DRM Model> has model_reference_type value set to ROOT or ROOT_AND_COMPONENT, the <DRM Model> instance’s name shall be unique in the scope of its aggregate <DRM Model Library>.
  2. If an instance of <DRM Model> has model_reference_type set to COMPONENT, the following also apply:
    1. Any <DRM Geometry Model Instance> or <DRM Feature Model Instance> referencing that <DRM Model> shall be in the scope of another <DRM Model> instance;
    2. Its dynamic_model_processing flag shall be FALSE.

6.2.27 Model spatial reference frame

The following constraints apply:

  1. Consider a <DRM Model> instance M specified in a spatial reference frame other than Local Space Rectangular.
    1. M shall be instanced only by <DRM Geometry Model Instance> and/or <DRM Feature Model Instance> instances specified in a matching spatial reference frame, and
    2. M’s has_moving_parts field shall be set to FALSE.
  2. Consider a <DRM Model> instance M specified in a Local Space Rectangular spatial reference frame.
    1. If M’s has_units field is set to FALSE, M shall not be referenced by any <DRM Geometry Model Instance> or <DRM Feature Model Instance> instances.
    2. If M is to be instanced into a non-LSR reference frame by any <DRM Geometry Model Instance> or <DRM Feature Model Instance> instances, each such <DRM Geometry Model Instance> instance and <DRM Feature Model Instance> instance shall specify a <DRM World Transformation> instance.
    3. M cannot be instanced into another Local Space Rectangular reference frame unless the target spatial reference frame has identical parameters to the parameters of M.
    4. If the component hierarchy of M contains any <DRM LSR Transformation> instances that have <DRM Control Link> instances, and if M provides controlling <DRM Variable> instances to those <DRM Control Link> instances such that they allow motion, M’s has_moving_parts field shall be set to TRUE; otherwise, M’s has_moving_parts field shall be set to FALSE.
  3. All <DRM Location> instances under a <DRM Model> instance shall be expressed in the spatial reference frame specified by that <DRM Model> instance.

6.2.28 Nested primitive geometry

When a <DRM Primitive Geometry> contains a <DRM Union Of Primitive Geometry> for nesting reasons, the resulting geometry shall be coplanar.

The possible combinations at any level of nesting are:

6.2.29 Non-crossing aggregations

Aggregations cannot cross <DRM Model> instances and/or <DRM Environment Root> instances.

6.2.30 Non-crossing associations

Associations cannot cross <DRM Model> instances and/or <DRM Environment Root> instances, except for <DRM Geometry Model Instance> instance to <DRM Geometry Model> instance, and <DRM Feature Model Instance> instance to <DRM Feature Model> instance.

6.2.31 Non-cyclic aggregations

Aggregations are not allowed to form cycles. Associations are. By this rule:

  1. an object can associate to itself; e.g. a <DRM Point Feature> can associate with itself;
  2. a <DRM Feature> can associate to a <DRM Geometry Hierarchy> that associates to the <DRM Feature>; and
  3. an object cannot have itself as a component.

6.2.32 Non-empty Environment_Root

An <DRM Environment Root> shall have as components a <DRM Feature Hierarchy> and/or a <DRM Geometry Hierarchy>.

6.2.33 Non-empty Model

The following constraints apply:

  1. All <DRM Model> instances shall have either a <DRM Feature Model>, a <DRM Geometry Model>, or both.
  2. A <DRM Model> is permitted to have an “empty” <DRM Geometry Model>, that is, a <DRM Geometry Model> without a component <DRM Geometry Hierarchy>, only if:
    1. The <DRM Model> either does not have a <DRM Feature Model>, or its <DRM Feature Model> is “empty”;

    2. The <DRM Model> has a <DRM Classification Data> component with tag set to ECC_OBJECT;

    3. The <DRM Model> is tagged as ROOT_AND_COMPONENT so that it can be instanced within <DRM Environment Root> scopes as well as other <DRM Model>s; and
    4. The “empty” <DRM Geometry Model> has no <DRM Attachment Point>, <DRM Contact Point>, or <DRM LSR Transformation> component, since these components require the presence of a <DRM Geometry Hierarchy> instance.
  3. A <DRM Model> is permitted to have an “empty” <DRM Feature Model>, that is, a <DRM Feature Model> without a component <DRM Feature Hierarchy>, only if:
    1. The <DRM Model> either does not have a <DRM Geometry Model>, or its <DRM Geometry Model> is empty;
    2. The <DRM Model> has a <DRM Classification Data> component with tag set to ECC_OBJECT; and
    3. The <DRM Model> is tagged as ROOT_AND_COMPONENT so that it can be instanced within <DRM Environment Root> scopes as well as other <DRM Model> instances.
  4. No <DRM Model> other than a properly constructed “empty” <DRM Model> is permitted to have a <DRM Classification Data> with ECC_OBJECT

6.2.34 Non-overlapping DRM class summary items

In a list of <DRM DRM Class Summary Item> instances, no two shall have their type fields set to the same class type.

6.2.35 Non-selfoverlapping perimeter data locations

The perimeter specified by a <DRM Perimeter Data> instance shall not intersect with or overlap itself.

6.2.36 No property conflicts

The following restrictions apply:

  1. No two directly attached <DRM Property Value> components of an object instance may specify identical values for their meaning fields.

    If an inherited <DRM Property Value> has the same meaning field value as a directly attached <DRM Property Value>, the directly attached component replaces the inherited component in the inheritance context.

  2. No two directly attached <DRM Property Description> components of an object instance may specify identical values for their meaning fields.

    If an inherited <DRM Property Description> has the same meaning field value as a directly attached <DRM Property Description>, the directly attached component replaces the inherited component in the inheritance context.

6.2.37 Oct tree related organizing principle

For any oct tree-related organization OTRA, whether a <DRM Octant Related Geometry> or a <DRM Octant Related Features> instance,

  1. OTRA shall have a <DRM Spatial Extent> component, specifying the bounding volume that the oct tree is organizing into octants. Since a volume is being specified, this <DRM Spatial Extent> shall be specified in terms of <DRM Location 3D> components.
  2. Each branch of OTRA shall comply with the following constraints:
    1. Each component representing an octant shall have a <DRM Spatial Extent> component. In the case of octants represented by <DRM Geometry Model Instance> or <DRM Feature Model Instance> instances, the <DRM Model> being referenced shall have the <DRM Spatial Extent>. Since a subdivision of a volume is being specified, this <DRM Spatial Extent> shall be specified in terms of <DRM Location 3D> instances.
    2. The regions specified by the branches shall not overlap; that is, the corresponding <DRM Spatial Extent> instances shall not overlap.
    3. The eight possible octant components' <DRM Spatial Extent> instances shall be specified in their native SRF within the area specified by the OTRA's <DRM Spatial Extent> as shown in Figure 5.3. Consider the bounding area specified by the <DRM Spatial Extent> of OTRA, as divided into 8 octants of equal size with the area specified from point “a” to point “o” in Figure 5.3.
    4. If a branch with UPPER_NORTHWEST is present, its <DRM Spatial Extent> shall specify the area of the upper northwest octant, from point “h” to point “o” in Figure 5.3, such that:
      1. its eastern boundary aligns with the western boundary of the UPPER_NORTHEAST octant’s <DRM Spatial Extent>, if present;
      2. its southern boundary aligns with the northern boundary of the UPPER_SOUTHWEST octant’s <DRM Spatial Extent>, if present; and
      3. its lower boundary aligns with the upper boundary of the LOWER_NORTHWEST octant’s <DRM Spatial Extent>, if present.

    5. If a branch with UPPER_NORTHEAST is present, its <DRM Spatial Extent> shall specify the area of the upper northeast octant, from point “g” to point “n” in Figure 5.3, such that:
      1. the <DRM Location 3D> instance representing its upper northeast corner corresponds to that of OTRA's <DRM Spatial Extent>;
      2. its western boundary aligns with the eastern boundary of the UPPER_NORTHWEST octant’s <DRM Spatial Extent>, if present, and its southern boundary aligns with the northern boundary of the UPPER_SOUTHEAST octant’s <DRM Spatial Extent>, if present; and
      3. its lower boundary aligns with the upper boundary of the LOWER_NORTHEAST octant’s <DRM Spatial Extent>, if present.

    6. If a branch with UPPER_SOUTHWEST is present, its <DRM Spatial Extent> shall specify the area of the southwest octant, from point “f” to point “m” in Figure 5.3, such that:
      1. its eastern boundary aligns with the western boundary of the UPPER_SOUTHEAST octant’s <DRM Spatial Extent>, if present;
      2. its northern boundary aligns with the southern boundary of the UPPER_NORTHWEST octant’s <DRM Spatial Extent>, if present; and

      3. its lower boundary aligns with the upper boundary of the LOWER_SOUTHWEST octant’s <DRM Spatial Extent>, if present.
    7. If a branch with UPPER_SOUTHEAST is present, its <DRM Spatial Extent> shall specify the area of the southeast octant, from point “e” to point “l” in Figure 5.3, such that:
      1. its western boundary aligns with the eastern boundary of the UPPER_SOUTHWEST octant’s <DRM Spatial Extent>, if present;
      2. its northern boundary aligns with the southern boundary of the UPPER_NORTHEAST octant’s <DRM Spatial Extent>, if present; and
      3. its lower boundary aligns with the upper boundary of the LOWER_SOUTHEAST octant’s <DRM Spatial Extent>, if present.
    8. If a branch with LOWER_NORTHWEST is present, its <DRM Spatial Extent> shall specify the area of the upper northwest octant, from point “d” to point “k” in Figure 5.3, such that:
      1. its eastern boundary aligns with the western boundary of the LOWER_NORTHEAST octant’s <DRM Spatial Extent>, if present;
      2. its southern boundary aligns with the northern boundary of the LOWER_SOUTHWEST octant’s <DRM Spatial Extent>, if present; and
      3. its upper boundary aligns with the lower boundary of the UPPER_NORTHWEST octant’s <DRM Spatial Extent>, if present.
    9. If a branch with LOWER_NORTHEAST is present, its <DRM Spatial Extent> shall specify the area of the upper northeast octant, from point “c” to point “j” in Figure 5.3, such that:
      1. its western boundary aligns with the eastern boundary of the LOWER_NORTHWEST octant’s <DRM Spatial Extent>, if present;
      2. its southern boundary aligns with the northern boundary of the LOWER_SOUTHEAST octant’s <DRM Spatial Extent>, if present; and
      3. its upper boundary aligns with the lower boundary of the UPPER_NORTHEAST octant’s <DRM Spatial Extent>, if present.
    10. If a branch with LOWER_SOUTHWEST is present, its <DRM Spatial Extent> shall specify the area of the southwest octant, from point “b” to point “i” in Figure 5.3, such that:
      1. the <DRM Location 3D> instance representing its lower southwest corner corresponds to that of OTRA's <DRM Spatial Extent>;
      2. its eastern boundary aligns with the western boundary of the LOWER_SOUTHEAST octant’s <DRM Spatial Extent>, if present;

      3. its northern boundary aligns with the southern boundary of the LOWER_NORTHWEST octant’s <DRM Spatial Extent>, if present; and
      4. its upper boundary aligns with the lower boundary of the UPPER_SOUTHWEST octant’s <DRM Spatial Extent>, if present.
      <>If a branch with LOWER_SOUTHEAST is present, its <DRM Spatial Extent> shall specify the area of the southeast octant, from point “a” to point “h” in Figure 5.3, such that:
      1. its western boundary aligns with the eastern boundary of the LOWER_SOUTHWEST octant’s <DRM Spatial Extent>, if present;
      2. its northern boundary aligns with the southern boundary of the LOWER_NORTHEAST octant’s <DRM Spatial Extent>, if present; and
      3. its upper boundary aligns with the lower boundary of the UPPER_SOUTHEAST octant’s <DRM Spatial Extent>, if present.
  3. The strict_organizing_principle and unique_descendants field values of OTRA shall be TRUE.

6.2.38 Perimeter related feature topology partitioning

The following conditions apply to DRM_Perimeter_Related_Feature_Topology DRM class instances:

  1. The regions specified by the components of a DRM_Perimeter_Related_Feature_Topology object shall not overlap.
  2. A DRM_Feature_Topology object may belong to at most one DRM_Perimeter_Related_Feature_Topology instance.

6.2.39 Perimeter related organizing principle

The following constraints apply:

  1. For any perimeter-related organization,
    1. The regions specified by its branches shall not overlap; that is, the <DRM Perimeter Data> on the branches shall specify regions that do not overlap.
    2. For each branch of the organization, every primitive within that branch shall have a spatial extent overlapping that of the branch.
  2. For topological organizations,
    1. A <DRM Feature Topology> instance shall belong to at most one <DRM Perimeter Related Feature Topology> instance.
    2. A <DRM Geometry Topology> instance shall belong to at most one <DRM Perimeter Related Geometry Topology> nstance.
  3. Consider a perimeter-related organization PRA, which is either <DRM Perimeter Related Features> instance or a <DRM Perimeter Related Geometry> instance.
    1. If PRA’s strict_organizing_principle field has value TRUE, for each branch of PRA, each primitive within the branch shall have a spatial extent fully contained within that specified by the <DRM Perimeter Data> instance corresponding to the branch.
    2. If PRA’s strict_organizing_principle has value FALSE, no guarantees exist as to how accurately the objects of the component tree rooted at PRA were placed into their “sorted bins” (the branches of PRA), apart from that specified by a.1 above.
    3. If PRA is a <DRM Perimeter Related Features>, and the same <DRM Feature> instance belongs to more than one of its branches, the unique_descendants and strict_organizing_principle flags of PRA shall be set to FALSE.
    4. If PRA is a <DRM Perimeter Related Geometry>, and the same <DRM Geometry> instance belongs to more than one of its branches, the unique_descendants and strict_organizing_principle fields of PRA shall be set to FALSE.

6.2.40 Precedence of Property_Set_Index

<DRM Geometry> or <DRM Feature> instances may contain attribute and/or metadata objects and also <DRM Property Set Index> objects that refer to <DRM Property Set>s. If there is a clash between the attribute or metadata objects that are contained by the <DRM Geometry> or DRM_Feature and any attribute or metadata objects that are contained by <DRM Property Set>s, objects contained directly by <DRM Geometry> or <DRM Feature>s take precedence.

DRM_Geometry and <DRM Feature> instances may contain an ordered list of <DRM Property Set Index> instances. If a <DRM Geometry> or <DRM Feature> contains references to more than one <DRM Property Set> and there is a clash between the property objects they contain, property objects contained in <DRM Property Set>s referenced first in this ordered list have precedence over those contained in <DRM Property Set> instances that are referenced later.

Precedence will behave differently depending on the multiplicity of the relationship that the attribute or metadata object in question has with the containing <DRM Geometry> or <DRM Feature>. In the event of a clash, the following rules will apply based on this enumeration.

  1. Zero or one:
    The object contained directly by the <DRM Geometry> or <DRM Feature> is used. If the clash is between objects in <DRM Property Set> s, the object contained in the <DRM Property Set> that is referenced earliest in the list of <DRM Property Set Index> objects is used.
  2. Zero or more:
    Those objects contained directly by the <DRM Geometry> or <DRM Feature> instances are used, followed by those contained in the <DRM Property Set> instances, in the order that the <DRM Property Set> instances are referenced by the <DRM Geometry> or <DRM Feature> instances.
  3. Zero or more {ordered}:
    Those objects contained directly by the <DRM Geometry> or <DRM Feature> instances are used in order. Those contained in the <DRM Property Set> instance referenced by the first <DRM Property Set Index> object in the list are used, in order followed by those contained in the <DRM Property Set> instance referenced by the second <DRM Property Set Index> object in the list, in order.

This is continued until there are no further objects in the list.

6.2.41 Primitive summary item constraints

The following constraints apply:

  1. An instance of <DRM Primitive Summary Item> shall have a drm_class field value corresponding to one of the following:
    1. <DRM Primitive Feature> or one of its subclasses,
    2. <DRM Primitive Geometry> or one of its subclasses, or
    3. classes that may legally appear in the component tree of a <DRM Primitive Feature> or <DRM Primitive Geometry> instance.
  2. For any <DRM Primitive Summary Item> instance B that is a component of another <DRM Primitive Summary Item> instance A, the drm_class represented by B shall be specified as a formal component of A, and the multiplicity of B shall comply with the corresponding component relationship between the two classes.
  3. For any <DRM Primitive Summary Item> component S of a <DRM Environment Root> instance ER, where the drm_class field corresponds to a class P, the component tree of ER shall contain at least one instance of P, either in its <DRM Feature Hierarchy>, its <DRM Geometry Hierarchy>, or both, such that the component tree of the instance of P conforms with the pattern specified by S.
  4. For any <DRM Primitive Summary Item> component S of a <DRM Model> instance M, where the drm_class field corresponds to a class P, the component tree of M shall contain at least one instance of P, in either the <DRM Feature Hierarchy> of its <DRM Feature Model>, the <DRM Geometry Hierarchy> of its <DRM Geometry Model> , or both, such that the component tree of the instance of P conforms with the pattern specified by S.

    This restriction implicitly enjoins the constraint that an “empty” <DRM Model> cannot have <DRM Primitive Summary Item> components.

6.2.42 Property characteristic constraints

Consider a <DRM Property Characteristic> instance C and a <DRM Property> P such that C is a component of P.

  1. The characteristic_value.value_type of C shall correspond to the value type imposed by P. In the case where P is a <DRM Property Description> instance, the value type of C shall be consistent with the constraints imposed by the meaning of P.
  2. If C is not real valued, it shall not have EVC_TOLERANCE as its meaning.
  3. Consider another, distinct <DRM Property Characteristic> instance C2 that is also a component of P.
    1. The meaning field values of C and C2 shall be distinct.
    2. EVC_MINIMUM_VALUE and C2 specifies EVC_MAXIMUM_VALUE, the characteristic_value of C shall be less than or equal to that of C2.

6.2.43 Property meaning constraints

A <DRM Property Value> instance shall have the field value consistent with the field meaning.

A <DRM Table Property Description> instance shall have the field value_type and the value_type field elements of the corresponding elements of applicable <DRM Data Table> instances consistent with the field meaning of the <DRM Table Property Description> instance.

If any <DRM Property> subclass instance specifies an EA or variable code of a value type that is real in the meaning field, value_unit shall specify a unit belonging to the EDCS Unit Equivalence Class to which the EA or variable code is bound.

6.2.44 Property set components

For a component X of a <DRM Property Set> instance PS, where X is an instance of a class that has a formal relationship with a <DRM Feature> class or that has a formal relationship with a <DRM Geometry> class, but not both, the following conditions shall hold:

  1. Let F be a <DRM Feature> instance that references PS such that the class of F is not defined to have a formal relationship with the class of X. In this case, X shall be ignored when considering the reference from F to PS.
  2. Let G be a <DRM Geometry> instance that references PS such that the class of G is not defined to have a formal relationship with the class of X. In this case, X shall be ignored when considering the reference from G to PS.

6.2.45 Property set table size

For a given <DRM Property Set Table Group> instance G with table_size = k, each <DRM Property Set Table> component T of G shall have k <DRM Property Set> components.

For any given T within G, if regular has value TRUE, each of the k <DRM Property Set> components of T shall contain the same number of DRM class instances, and these DRM class instances shall belong to the same classes. If regular has value FALSE for T, no such constraint shall hold.

6.2.46 Publishable objects

Instances of the following classes may be published. Where an abstract class is specified, the instances of concrete classes descended from that abstract class may be published.

<DRM Aggregate Feature>
<DRM Aggregate Geometry>
<DRM Colour Table Group>
<DRM Environment Root>
<DRM Feature Model>
<DRM Feature Topology>
<DRM Geometry Model>
<DRM Geometry Topology>
<DRM Image>
<DRM Property Grid>
<DRM Property Grid Hook Point>
<DRM Property Set Table Group>
<DRM Property Table>
<DRM Sound>
<DRM Symbol>

6.2.47 Quad tree related organizing principle

For any quad tree-related organization QTRA, whether a <DRM Quadrant Related Features> or a <DRM Quadrant Related Geometry>, the following constraints shall apply:

  1. QTRA shall have a <DRM Spatial Extent> instance.
  2. Each branch of QTRA shall comply with the following constraints.
    1. Each component representing a quadrant shall have a <DRM Spatial Extent> component. In the case of quadrants represented by <DRM Geometry Model Instance> or <DRM Feature Model Instance> instances, the <DRM Model> being referenced shall have the <DRM Spatial Extent> component.
    2. The regions specified by the branches shall not overlap; that is, the <DRM Spatial Extent> components of the component hierarchies shall not overlap.
    3. The four possible quadrant components’ <DRM Spatial Extent> shall be specified in their native SRF within the area specified by the QTRA’s <DRM Spatial Extent> as depicted in Figure 5.4 — Quad tree quadrant identification. Consider the bounding area specified by the <DRM Spatial Extent> of QTRA, as divided into four quadrants of equal size.

    4. If a branch with quadrant of value LEFT_BACK is present, its <DRM Spatial Extent> instance shall specify the area of the left back quadrant, such that:
      1. its right boundary aligns with the left boundary of the <DRM Spatial Extent> of the RIGHT_BACK quadrant, if present, and
      2. its front boundary aligns with the back boundary of the <DRM Spatial Extent> instance of the LEFT_FRONT quadrant, if present.
    5. If a branch with quadrant RIGHT_BACK is present, its <DRM Spatial Extent> shall specify the area of the right back quadrant, such that:
      1. the <DRM Location> instance representing its right back corner corresponds to that of the <DRM Spatial Extent> component of QTRA;
      2. its left boundary aligns with the right boundary of the <DRM Spatial Extent> component of the LEFT_BACK quadrant, if present; and
      3. its front boundary aligns with the back boundary of the <DRM Spatial Extent> of the RIGHT_FRONT quadrant, if present.
    6. If a branch with LEFT_FRONT is present, its <DRM Spatial Extent> component shall specify the area of the left front quadrant, such that:
      1. the <DRM Location> instance representing its left front corner corresponds to that of the <DRM Spatial Extent> component of QTRA;
      2. its left boundary aligns with the right boundary of the <DRM Spatial Extent> component of the RIGHT_FRONT quadrant, if present; and
      3. its back boundary aligns with the front boundary of the <DRM Spatial Extent> component of the LEFT_BACK quadrant, if present.
    7. If a branch with RIGHT_FRONT is present, its <DRM Spatial Extent> component shall specify the area of the right front quadrant, such that:
      1. its left boundary aligns with the right boundary of the <DRM Spatial Extent> component of the LEFT_FRONT quadrant, if present; and
      2. its back boundary aligns with the front boundary of the <DRM Spatial Extent> component of the RIGHT_BACK quadrant, if present.

6.2.48 Reference to Data_Table_Library

The following conditions apply to instances of <DRM Property Table Reference>.

  1. The <DRM Property Table> instance specified by the <DRM Property Table Reference> instance shall be a component of a <DRM Data Table Library> .
  2. The <DRM Property Table> instance shall contain a <DRM Axis> instance whose axis_type corresponds to that specified by the <DRM Property Table Reference> instance.
  3. The <DRM Axis> instance thus specified shall have axis_value_count greater than or equal to (index_on_axis + 1), where index_on_axis is that specified by the <DRM Property Table Reference> instance.

6.2.49 Relative spatial axes values

The spatial axes values shall be relative to the location specified in the <DRM Location> instance associated with the <DRM Property Grid Hook Point> instance.

6.2.50 Required reference vector location

A <DRM Reference Vector> instance is required to have a <DRM Location> component whenever the <DRM Reference Vector> is a component of a <DRM Polygon>, <DRM Line>, <DRM Infinite Light>, <DRM Moving Light Behaviour>, or <DRM Union Of Geometry> instance.

6.2.51 Separating plane organizing principle

The following constraints apply:

  1. The <DRM Location 3D> components of a <DRM Separating Plane> instance shall specify a plane.
  2. For any <DRM Separating Plane Related Geometry> instance S:
    1. No two <DRM Separating Plane Relations> components of S shall specify coplanar <DRM Separating Plane> instances.
    2. For each component <DRM Separating Plane Relations> R of S:
      1. Every primitive within each branch of R shall have a spatial extent overlapping that of the half-space specified by the branch.
      2. If S’s strict_organizing_principle has value, every primitive within each branch of R shall have a spatial extent fully contained within the half-space specified by the <DRM Separating Plane Data> instance corresponding to the branch. If S’s strict_organizing_principle has value FALSE, no guarantees exist as to how accurately the objects of the component tree rooted at S were placed into their sorted “bins”, apart from that specified by b.2.i above.

6.2.52 Spatial index related organizing principle

The following constraints apply:

  1. For any spatial index related organization SIRO,
    1. the column_width of SIRO shall be a positive number;
    2. the row_width of SIRO shall be a positive number; and
    3. For each branch of the organization, the corresponding <DRM Spatial Index Data> instance shall specify a region in the spatial index, such that:
      1. the column_index <DRM Spatial Index Data> instance shall be between 1 and the column_count specified by SIRO;
      2. The row_index of the <DRM Spatial Index Data> instance shall be between 1 and the row_count specified by SIRO; and
      3. each primitive within the branch shall have a spatial extent overlapping that specified by the <DRM Spatial Index Data> instance of the branch.
  2. Consider an instance SRA, which is either a <DRM Spatial Index Related Features> or <DRM Spatial Index Related Geometry> instance.
    1. If SRA’s strict_organizing_principle has value TRUE, for each branch of SRA, each primitive within the branch shall have a spatial extent fully contained within that specified by the <DRM Spatial Index Data> instance corresponding to the branch.
    2. If SRA’s strict_organizing_principle has value FALSE, no guarantees exist as to how accurately the instances of the component tree rooted at SRA were placed into their “sorted bins” (the branches of SRA), apart from that specified by b.1 above.
    3. If SRA is a <DRM Spatial Index Related Features> instance, and the same <DRM Feature> instance belongs to more than one of its branches, the unique_descendants and strict_organizing_principle fields of SRA shall be set to FALSE.
    4. If SRA is a <DRM Spatial Index Related Geometry> instance, and the same <DRM Geometry> instance belongs to more than one of its branches, the unique_descendants and strict_organizing_principle fields of SRA shall be set to FALSE.

6.2.53 State related organizing principle

For any state-related aggregation SRA, whether a <DRM State Related Features> or a <DRM State Related Geometry>, the following constraints apply:

  1. The state tag of SRA shall specify an EDCS Attribute Code T that is bound either to the abstract value type ENUMERATION or to a numeric value type. In the latter case, T shall be bound to the EDCS Unit Equivalence class PURE_NUMBER such that the state values of SRA are specified in EUC_PERCENT units with ESC_UNI
  2. Each branch of SRA shall comply with the following constraints:
    1. The <DRM State Data> instance associated with that branch shall have a state_value whose value_type matches that of SRA’s active_state_value.
    2. The <DRM State Data> instance associated with that branch shall have a state_value that does not overlap with that of any other branch’s <DRM State Data> instance within SRA.
  3. If SRA has a <DRM State Control Link> instance as a component, the return type of each of the <DRM Expression> components of the <DRM State Control Link> instance shall match that of the value_type of the active_state_value field of SRA.

6.2.54 Time dependency

<DRM Relative Time Point>, <DRM Absolute Time Interval>, and <DRM Relative Time Interval> instances may each have a component <DRM Absolute Time Point> instance, and the constraints on their field values depend on the value of the <DRM Absolute Time Point> component, when it is present, subject to the following constraints:

  1. If a <DRM Absolute Time Point> instance is present with a time configuration value specifying that the day field is not applicable:

    1. for <DRM Absolute Time Interval> and <DRM Relative Time Point> instances, delta_days shall have value 0.

    2. for <DRM Relative Time Interval> instances, delta_start_days and delta_stop_days shall both be set to 0.
  2. For <DRM Absolute Time Interval> and <DRM Relative Time Point> instances, if a <DRM Absolute Time Point> instance is present with a time configuration value indicating that the day field is in use but that the month field is not in use, delta_days shall be in the range (1 - day) to (30 - day) where day is the day field of the <DRM Absolute Time Point> instance. For this case, delta_days is allowed to be negative.
  3. For <DRM Absolute Time Interval> and <DRM Relative Time Point> instances, if a <DRM Absolute Time Point> instance is present with a time configuration value of DAY_OF_YEAR, delta_days shall be in the range [0, 365].

6.2.55 Time interval calculation

A <DRM Time Interval> instance that is referenced to a <DRM Absolute Time Point> instance with a time configuration value indicating that month is not supplied is treated as having a thirty-day month, such that its fields shall specify an interval not exceeding a 30 day period. See item b of 6.2.55 Time dependency.

A <DRM Time Interval> instance that is referenced to a <DRM Absolute Time Point> instance with a time configuration value indicating that month is supplied shall be calculated using the actual number of days in that month. In the case of month having value FEBRUARY for a configuration where year is not supplied, the number of days in the month shall be treated as 28.

6.2.56 Unique ID field

For any class that has an ID field, the ID is unique for all objects of that class within a given transmittal

Specifically, within the component tree of a given <DRM Transmittal Root> instance:

  1. No two <DRM Camera Point> instances may have identical values for their ID fields.
  2. No two <DRM Feature ID> instances may have identical values for their ID fields.
  3. No two <DRM Geometry ID> instances may have identical values for their ID fields.

6.2.57 Variable meaning constraints

The following constraints apply to a <DRM Variable> instance:

  1. The value_type field shall be consistent with the meaning field.
  2. If an EA or variable code of a value type that represents real numbers is specified in the meaning field, value_unit shall specify a unit belonging to the EDCS Unit Equivalence Class to which the EA or variable code is bound.
  3. If an EA or variable code not of value type that represents a real number is specified in the meaning field, value_unit shall specify Unitless and value_scale shall specify Uni.

6.3 DRM class specifications

6.3.1 Overview

Each of the DRM classes below specifies the form for the data structures required by SEDRIS. These specifications can be hierarchical in nature and may have dependencies among themselves. DRM class names are formed starting with the fixed letters “DRM_” followed by each subsequent word starting with an upper case character with all other characters in the word in lower case. Words are separated by underscores.

Certain DRM classes are only instantiated through their subclasses. These DRM classes are identified by the use of italics for their names. These DRM classes are called abstract DRM classes. While DRM class instances of abstract DRM classes never exist independently, a handle data type exists for accessing DRM class instances that may be a member of any of the subclasses (see 5.4.7 SEDRIS Object Handles).

Examples that show values for record types will display those values enclosed in braces.

The subclauses below present the DRM class specifications in alphabetical order.

6.3.2 DRM_2D_Location

DRM class DRM_2D_Location is specified in Table 6.3 — DRM_2D_Location.

6.3.3 DRM_3D_Location

DRM class DRM_3D_Location is specified in Table 6.4 — DRM_3D_Location

6.3.4 DRM_Absolute_Time

DRM class DRM_Absolute_Time is specified in Table 6.5 — DRM_Absolute_Time.

6.3.5 DRM_Absolute_Time_Interval

DRM class DRM_Absolute_Time_Interval is specified in Table 6.6 — DRM_Absolute_Time_Interval.

6.3.6 DRM_Access

DRM class DRM_Access is specified in Table 6.7 — DRM_Access.

6.3.7 DRM_Aggregate_Feature

DRM class DRM_Aggregate_Feature is specified in Table 6.8 — DRM_Aggregate_Feature.

6.3.8 DRM_Aggregate_Geometry

DRM class DRM_Aggregate_Geometry is specified in Table 6.9 — DRM_Aggregate_Geometry.

6.3.9 DRM_Alternate_Hierarchy_Related_Features

DRM class DRM_Alternate_Hierarchy_Related_Features is specified in Table 6.10 — DRM_Alternate_Hierarchy_Related_Features.

6.3.10 DRM_Alternate_Hierarchy_Related_Geometry

DRM class DRM_Alternate_Hierarchy_Related_Geometry is specified in Table 6.11 — DRM_Alternate_Hierarchy_Related_Geometry.

6.3.11 DRM_Ambient_Colour

DRM class DRM_Ambient_Colour is specified in Table 6.12 — DRM_Ambient_Colour.

6.3.12 DRM_Animation_Behaviour

DRM class DRM_Animation_Behaviour is specified in Table 6.13 — DRM_Animation_Behaviour.

6.3.13 DRM_Animation_Related_Geometry

DRM class DRM_Animation_Related_Geometry is specified in Table 6.14 — DRM_Animation_Related_Geometry.

6.3.14 DRM_Arc

DRM class DRM_Arc is specified in Table 6.15 — DRM_Arc.

6.3.15 DRM_Areal_Feature

DRM class DRM_Areal_Feature is specified in Table 6.16 — DRM_Areal_Feature.

6.3.16 DRM_Attachment_Point

DRM class DRM_Attachment_Point is specified in Table 6.17 — DRM_Attachment_Point.

6.3.17 DRM_Axis

DRM class DRM_Axis is specified in Table 6.18 — DRM_Axis.

6.3.18 DRM_AZ_2D_Location

DRM class DRM_AZ_2D_Location is specified in Table 6.19 — DRM_AZ_2D_Location.

6.3.19 DRM_Base_Level_Of_Detail_Data

DRM class DRM_Base_Level_Of_Detail_Data is specified in Table 6.20 — DRM_Base_Level_Of_Detail_Data.

6.3.20 DRM_Base_Positional_Light

DRM class DRM_Base_Positional_Light is specified in Table 6.21 — DRM_Base_Positional_Light.

6.3.21 DRM_Base_Summary_Item

DRM class DRM_Base_Summary_Item is specified in Table 6.22 — DRM_Base_Summary_Item.

6.3.22 DRM_Base_Time_Data

DRM class DRM_Base_Time_Data is specified in Table 6.23 — DRM_Base_Time_Data.

6.3.23 DRM_Blend_Directional_Light

DRM class DRM_Blend_Directional_Light is specified in Table 6.24 — DRM_Blend_Directional_Light.

6.3.24 DRM_Bounding_Volume

DRM class DRM_Bounding_Volume is specified in Table 6.25 — DRM_Bounding_Volume.

6.3.25 DRM_Browse_Media

DRM class DRM_Browse_Media is specified in Table 6.26 — DRM_Browse_Media.

6.3.26 DRM_Camera_Point

DRM class DRM_Camera_Point is specified in Table 6.27 — DRM_Camera_Point.

6.3.27 DRM_CC_3D_Location

DRM class DRM_CC_3D_Location is specified in Table 6.28 — DRM_CC_3D_Location

6.3.28 DRM_CD_3D_Location

DRM class DRM_CD_3D_Location is specified in Table 6.29 — DRM_CD_3D_Location.

6.3.29 DRM_CD_Surface_Location

DRM class DRM_CD_Surface_Location is specified in Table 6.30 — DRM_CD_Surface_Location.

6.3.30 DRM_Citation

DRM class DRM_Citation is specified in Table 6.31 — DRM_Citation.

6.3.31 DRM_Classification_Data

DRM class DRM_Classification_Data is specified in Table 6.32 — DRM_Classification_Data.

6.3.32 DRM_Classification_Related_Features

DRM class DRM_Classification_Related_Features is specified in Table 6.33 — DRM_Classification_Related_Features.

6.3.33 DRM_Classification_Related_Geometry

DRM class DRM_Classification_Related_Geometry is specified in Table 6.34 — DRM_Classification_Related_Geometry.

6.3.34 DRM_CM_3D_Location

DRM class DRM_CM_Location is specified in Table 6.35 — DRM_CM_Location.

6.3.35 DRM_CMY_Colour

DRM class DRM_CMY_Colour is specified in Table 6.36 — DRM_CMY_Colour.

6.3.36 DRM_CMY_Colour_Control_Link

DRM class DRM_CMY_Colour_Control_Link is specified in Table 6.37 — DRM_CMY_Colour_Control_Link.

6.3.37 DRM_Collision_Volume

DRM class DRM_Collision_Volume is specified in Table 6.38 — DRM_Collision_Volume.

6.3.38 DRM_Colour

DRM class DRM_Colour is specified in Table 6.39 — DRM_Colour.

6.3.39 DRM_Colour_Data

DRM class DRM_Colour_Data is specified in Table 6.40 — DRM_Colour_Data.

6.3.40 DRM_Colour_Index

DRM class DRM_Colour_Index is specified in Table 6.41 — DRM_Colour_Index.

6.3.41 DRM_Colour_Index_Control_Link

DRM class DRM_Colour_Index_Control_Link is specified in Table 6.42 — DRM_Colour_Index_Control_Link.

6.3.42 DRM_Colour_Shininess

DRM class DRM_Colour_Shininess is specified in Table 6.43 — DRM_Colour_Shininess.

6.3.43 DRM_Colour_Table

DRM class DRM_Colour_Table is specified in Table 6.44 — DRM_Colour_Table.

6.3.44 DRM_Colour_Table_Group

DRM class DRM_Colour_Table_Group is specified in Table 6.45 — DRM_Colour_Table_Group.

6.3.45 DRM_Colour_Table_Library

DRM class DRM_Colour_Table_Library is specified in Table 6.46 — DRM_Colour_Table_Library.

6.3.46 DRM_Cone_Directional_Light

DRM class DRM_Colour_Table_Library is specified in Table 6.47 — DRM_Cone_Directional_Light.

6.3.47 DRM_Conformal_Behaviour

DRM class DRM_Conformal_Behaviour is specified in Table 6.48 — DRM_Conformal_Behaviour.

6.3.48 DRM_Contact_Point

DRM class DRM_Contact_Point. is specified in Table 6.49 — DRM_Contact_Point.

6.3.49 DRM_Continuous_Level_Of_Detail_Related_Geometry

DRM class DRM_Continuous_Level_Of_Detail_Related_Geometry is specified in Table 6.50 — DRM_Continuous_Level_Of_Detail_Related_Geometry.

6.3.50 DRM_Control_Link

DRM class DRM_Control_Link is specified in Table 6.51 — DRM_Control_Link.

6.3.51 DRM_Cross_Reference

DRM class DRM_Cross_Reference is specified in Table 6.52 — DRM_Cross_Reference.

6.3.52 DRM_Cylindrical_Volume_Extent

DRM class DRM_Cylindrical_Volume_Extent is specified in Table 6.53 — DRM_Cylindrical_Volume_Extent.

6.3.53 DRM_Data_Quality

DRM class DRM_Data_Quality is specified in Table 6.54 — DRM_Data_Quality.

6.3.54 DRM_Data_Table

DRM class DRM_Data_Table is specified in Table 6.55 — DRM_Data_Table.

6.3.55 DRM_Data_Table_Library

DRM class DRM_Data_Table_Library is specified in Table 6.56 — DRM_Data_Table_Library.

6.3.56 DRM_Description

DRM class DRM_Description is specified in Table 6.57 — DRM_Description.

6.3.57 DRM_Diffuse_Colour

DRM class DRM_Diffuse_Colour is specified in Table 6.58 — DRM_Diffuse_Colour.

6.3.58 DRM_Directional_Light_Behaviour

DRM class DRM_Directional_Light_Behaviour is specified in Table 6.59 — DRM_Directional_Light_Behaviour.

6.3.59 DRM_Distance_Level_Of_Detail_Data

DRM class DRM_Distance_Level_Of_Detail_Data is specified in Table 6.60 — DRM_Distance_Level_Of_Detail_Data.

6.3.60 DRM_DRM_Class_Summary_Item

DRM class DRM_DRM_Class_Summary_Item is specified in Table 6.61 — DRM_DRM_Class_Summary_Item.

6.3.61 DRM_EC_Augmented_3D_Location

DRM class DRM_EC_Augmented_3D_Location is specified in Table 6.62 — DRM_EC_Augmented_3D_Location.

6.3.62 DRM_EC_Surface_Location

DRM class DRM_EC_Surface_Location is specified in Table 6.63 — DRM_EC_Surface_Location.

6.3.63 DRM_EDCS_Use_Summary_Item

DRM class DRM_EDCS_Use_Summary_Item is specified in Table 6.64 — DRM_EDCS_Use_Summary_Item.

6.3.64 DRM_Edge_Direction

DRM class DRM_Edge_Direction is specified in Table 6.65 — DRM_Edge_Direction.

6.3.65 DRM_EI_3D_Location

DRM class DRM_EI_3D_Location is specified in Table 6.66 — DRM_EI_3D_Location.

6.3.66 DRM_Ellipse

DRM class DRM_Ellipse is specified in Table 6.67 — DRM_Ellipse.

6.3.67 DRM_Elliptic_Cylinder

DRM class DRM_Elliptic_Cylinder is specified in Table 6.68 — DRM_Elliptic_Cylinder.

6.3.68 DRM_Emissive_Colour

DRM class DRM_Emissive_Colour is specified in Table 6.69 — DRM_Emissive_Colour.

6.3.69 DRM_Enumeration_Axis

DRM class DRM_Enumeration_Axis is specified in Table 6.70 — DRM_Enumeration_Axis.

6.3.70 DRM_Environmental_Domain_Summary

DRM class DRM_Environmental_Domain_Summary is specified in Table 6.71 — DRM_Environmental_Domain_Summary.

6.3.71 DRM_Environment_Root

DRM class DRM_Environment_Root is specified in Table 6.72 — DRM_Environment_Root.

6.3.72 DRM_Expression

DRM class DRM_Expression is specified in Table 6.73 — DRM_Expression.

6.3.73 DRM_Face_Direction

DRM class DRM_Face_Direction is specified in Table 6.74 — DRM_Face_Direction.

6.3.74 DRM_Fade_Range

DRM class DRM_Fade_Range is specified in Table 6.75 — DRM_Fade_Range.

6.3.75 DRM_Feature

DRM class DRM_Feature is specified in Table 6.76 — DRM_Feature.

6.3.76 DRM_Feature_Edge

DRM class DRM_Feature_Edge is specified in Table 6.77 — DRM_Feature_Edge.

6.3.77 DRM_Feature_Face

DRM class DRM_Feature_Face is specified in Table 6.78 — DRM_Feature_Face.

6.3.78 DRM_Feature_Face_Ring

DRM class DRM_Feature_Face_Ring is specified in Table 6.79 — DRM_Feature_Face_Ring.

6.3.79 DRM_Feature_Hierarchy

DRM class DRM_Feature_Hierarchy is specified in Table 6.80 — DRM_Feature_Hierarchy.

6.3.80 DRM_Feature_Model

DRM class DRM_Feature_Model is specified in Table 6.81 — DRM_Feature_Model.

6.3.81 DRM_Feature_Model_Instance

DRM class DRM_Feature_Model_Instance is specified in Table 6.82 — DRM_Feature_Model_Instance.

6.3.82 DRM_Feature_Node

DRM class DRM_Feature_Node is specified in Table 6.83 — DRM_Feature_Node.

6.3.83 DRM_Feature_Topology

DRM class DRM_Feature_Topology is specified in Table 6.84 — DRM_Feature_Topology.

6.3.84 DRM_Feature_Topology_Hierarchy

DRM class DRM_Feature_Topology_Hierarchy is specified in Table 6.85 — DRM_Feature_Topology_Hierarchy.

6.3.85 DRM_Feature_Volume

DRM class DRM_Feature_Volume is specified in Table 6.86 — DRM_Feature_Volume.

6.3.86 DRM_Feature_Volume_Shell

DRM class DRM_Feature_Volume_Shell is specified in Table 6.87 — DRM_Feature_Volume_Shell.

6.3.87 DRM_Finite_Element_Mesh

DRM class DRM_Finite_Element_Mesh is specified in Table 6.88 — DRM_Finite_Element_Mesh.

6.3.88 DRM_Flashing_Light_Behaviour

DRM class DRM_Flashing_Light_Behaviour is specified in Table 6.89 — DRM_Flashing_Light_Behaviour.

6.3.89 DRM_Function

DRM class DRM_Function is specified in Table 6.90 — DRM_Function.

6.3.90 DRM_Geometric_Centre

DRM class DRM_Geometric_Centre is specified in Table 6.91 — DRM_Geometric_Centre.

6.3.91 DRM_Geometry

DRM class DRM_Geometry is specified in Table 6.92 — DRM_Geometry.

6.3.92 DRM_Geometry_Edge

DRM class DRM_Geometry_Edge is specified in Table 6.93 — DRM_Geometry_Edge.

6.3.93 DRM_Geometry_Face

DRM class DRM_Geometry_Face is specified in Table 6.94 — DRM_Geometry_Face.

6.3.94 DRM_Geometry_Hierarchy

DRM class DRM_Geometry_Hierarchy is specified in Table 6.95 — DRM_Geometry_Hierarchy.

6.3.95 DRM_Geometry_Model

DRM class DRM_Geometry_Model is specified in Table 6.96 — DRM_Geometry_Model.

6.3.96 DRM_Geometry_Model_Instance

DRM class DRM_Geometry_Model_Instance is specified in Table 6.97 — DRM_Geometry_Model_Instance.

6.3.97 DRM_Geometry_Node

DRM class DRM_Geometry_Node is specified in Table 6.98 — DRM_Geometry_Node.

6.3.98 DRM_Geometry_Topology

DRM class DRM_Geometry_Topology is specified in Table 6.99 — DRM_Geometry_Topology.

6.3.99 DRM_Geometry_Topology_Hierarchy

DRM class DRM_Geometry_Topology_Hierarchy is specified in Table 6.100 — DRM_Geometry_Topology_Hierarchy.

6.3.100 DRM_Geometry_Volume

DRM class DRM_Geometry_Volume is specified in Table 6.101 — DRM_Geometry_Volume.

6.3.101 DRM_Grid_Overlap

DRM class DRM_Grid_Overlap is specified in Table 6.102 — DRM_Grid_Overlap.

6.3.102 DRM_HAEC_3D_Location

DRM class DRM_HAEC_3D_Location is specified in Table 6.103 — DRM_HAEC_3D_Location.

6.3.103 DRM_HEEC_3D_Location

DRM class DRM_HEEC_3D_Location is specified in Table 6.104 — DRM_HEEC_3D_Location.

6.3.104 DRM_HEEQ_3D_Location

DRM class DRM_HEEQ_3D_Location is specified in Table 6.105 — DRM_HEEQ_3D_Location.

6.3.105 DRM_Hierarchy_Data

DRM class DRM_Hierarchy_Data is specified in Table 6.106 — DRM_Hierarchy_Data.

6.3.106 DRM_Hierarchy_Summary_Item

DRM class DRM_Hierarchy_Summary_Item is specified in Table 6.107 — DRM_Hierarchy_Summary_Item.

6.3.107 DRM_HSV_Colour

DRM class DRM_HSV_Colour is specified in Table 6.108 — DRM_HSV_Colour.

6.3.108 DRM_HSV_Colour_Control_Link

DRM class DRM_HSV_Colour_Control_Link is specified in Table 6.109 — DRM_HSV_Colour_Control_Link.

6.3.109 DRM_Icon

DRM class DRM_Icon is specified in Table 6.110 — DRM_Icon.

6.3.110 DRM_Image

DRM class DRM_Image is specified in Table 6.111 — DRM_Image.

6.3.111 DRM_Image_Anchor

DRM class DRM_Image_Anchor is specified in Table 6.112 — DRM_Image_Anchor.

6.3.112 DRM_Image_Library

DRM class DRM_Image_Library is specified in Table 6.113 — DRM_Image_Library.

6.3.113 DRM_Image_Lookup

DRM class DRM_Image_Lookup is specified in Table 6.114 — DRM_Image_Lookup.

6.3.114 DRM_Image_Mapping_Function

DRM class DRM_Image_Mapping_Function is specified in Table 6.115 — DRM_Image_Mapping_Function.

6.3.115 DRM_Index

DRM class DRM_Index is specified in Table 6.116 — DRM_Index.

6.3.116 DRM_Index_Level_Of_Detail_Data

DRM class DRM_Index_Level_Of_Detail_Data is specified in Table 6.117 — DRM_Index_Level_Of_Detail_Data.

6.3.117 DRM_Infinite_Light

DRM class DRM_Infinite_Light is specified in Table 6.118 — DRM_Infinite_Light.

6.3.118 DRM_Inline_Colour

DRM class DRM_Inline_Colour is specified in Table 6.119 — DRM_Inline_Colour.

6.3.119 DRM_In_Out

DRM class DRM_In_Out is specified in Table 6.120 — DRM_In_Out.

6.3.120 DRM_Interface_Template

DRM class DRM_Interface_Template is specified in Table 6.121 — DRM_Interface_Template.

6.3.121 DRM_Interval_Axis

DRM class DRM_Interval_Axis is specified in Table 6.122 — DRM_Interval_Axis.

6.3.122 DRM_Irregular_Axis

DRM class DRM_Irregular_Axis is specified in Table 6.123 — DRM_Irregular_Axis.

6.3.123 DRM_Keywords

DRM class DRM_Keywords is specified in Table 6.124 — DRM_Keywords.

6.3.124 DRM_Label

DRM class DRM_Label is specified in Table 6.125 — DRM_Label.

6.3.125 DRM_LCC_Augmented_3D_Location

DRM class DRM_LCC_Augmented_3D_Location is specified in Table 6.126 — DRM_LCC_Augmented_3D_Location.

6.3.126 DRM_LCC_Surface_Location

DRM class DRM_LCC_Surface_Location is specified in Table 6.127 — DRM_LCC_Surface_Location.

6.3.127 DRM_Level_Of_Detail_Related_Features

DRM class DRM_Level_Of_Detail_Related_Features is specified in Table 6.128 — DRM_Level_Of_Detail_Related_Features.

6.3.128 DRM_Level_Of_Detail_Related_Geometry

DRM class DRM_Level_Of_Detail_Related_Geometry is specified in Table 6.129 — DRM_Level_Of_Detail_Related_Geometry.

6.3.129 DRM_Library

DRM class DRM_Library is specified in Table 6.130 — DRM_Library.

6.3.130 DRM_Light_Rendering_Behaviour

DRM class DRM_Light_Rendering_Behaviour is specified in Table 6.131 — DRM_Light_Rendering_Behaviour.

6.3.131 DRM_Light_Rendering_Properties

DRM class DRM_Light_Rendering_Properties is specified in Table 6.132 — DRM_Light_Rendering_Properties.

6.3.132 DRM_Light_Rendering_Properties_Control_Link

DRM class DRM_Light_Rendering_Properties_Control_Link is specified in Table 6.133 — DRM_Light_Rendering_Properties_Control_Link.

6.3.133 DRM_Light_Source

DRM class DRM_Light_Source is specified in Table 6.134 — DRM_Light_Source.

6.3.134 DRM_Light_Source_Control_Link

DRM class DRM_Light_Source_Control_Link is specified in Table 6.135 — DRM_Light_Source_Control_Link.

6.3.135 DRM_Line

DRM class DRM_Line is specified in Table 6.136 — DRM_Line.

6.3.136 DRM_Lineage

DRM class DRM_Lineage is specified in Table 6.137 — DRM_Lineage.

6.3.137 DRM_Linear_Feature

DRM class DRM_Linear_Feature is specified in Table 6.138 — DRM_Linear_Feature.

6.3.138 DRM_Linear_Geometry

DRM class DRM_Linear_Geometry is specified in Table 6.139 — DRM_Linear_Geometry.

6.3.139 DRM_Literal

DRM class DRM_Literal is specified in Table 6.140 — DRM_Literal.

6.3.140 DRM_Lobe_Data

DRM class DRM_Lobe_Data is specified in Table 6.141 — DRM_Lobe_Data.

6.3.141 DRM_Local_4x4

DRM class DRM_Local_4x4 is specified in Table 6.142 — DRM_Local_4x4.

6.3.142 DRM_Location

DRM class DRM_Location is specified in Table 6.143 — DRM_Location.

6.3.143 DRM_LSR_2D_Location

DRM class DRM_LSR_2D_Location is specified in Table 6.144 — DRM_LSR_2D_Location.

6.3.144 DRM_LSR_3D_Location

DRM class DRM_LSR_3D_Location is specified in Table 6.145 — DRM_LSR_3D_Location.

6.3.145 DRM_LSR_3D_Location_Control_Link

DRM class DRM_LSR_3D_Location_Control_Link is specified in Table 6.146 — DRM_LSR_3D_Location_Control_Link.

6.3.146 DRM_LSR_Transformation

DRM class DRM_LSR_Transformation is specified in Table 6.147 — DRM_LSR_Transformation.

6.3.147 DRM_LSR_Transformation_Step

DRM class DRM_LSR_Transformation_Step is specified in Table 6.148 — DRM_LSR_Transformation_Step.

6.3.148 DRM_LTAS_3D_Location

DRM class DRM_LTAS_3D_Location is specified in Table 6.149 — DRM_LTAS_3D_Location.

6.3.149 DRM_LTAS_Surface_Location

DRM class DRM_LTAS_Surface_Location is specified in Table 6.150 — DRM_LTAS_Surface_Location.

6.3.150 DRM_LTC_3D_Location

DRM class DRM_LTC_3D_Location is specified in Table 6.151 — DRM_LTC_3D_Location.

6.3.151 DRM_LTC_Surface_Location

DRM class DRM_LTC_Surface_Location is specified in Table 6.152 — DRM_LTC_Surface_Location.

6.3.152 DRM_LTE_3D_Location

DRM class DRM_LTE_3D_Location is specified in Table 6.153 — DRM_LTE_3D_Location.

6.3.153 DRM_LTE_Surface_Location

DRM class DRM_LTE_Surface_Location is specified in Table 6.154 — DRM_LTE_Surface_Location.

6.3.154 DRM_M_Augmented_3D_Location

DRM class DRM_M_Augmented_3D_Location is specified in Table 6.155 — DRM_M_Augmented_3D_Location.

6.3.155 DRM_M_Surface_Location

DRM class DRM_M_Surface_Location is specified in Table 6.156 — DRM_M_Surface_Location.

6.3.156 DRM_Map_Scale_Level_Of_Detail_Data

DRM class DRM_Map_Scale_Level_Of_Detail_Data is specified in Table 6.157 — DRM_Map_Scale_Level_Of_Detail_Data.

6.3.157 DRM_Mesh_Face_Table

DRM class DRM_Mesh_Face_Table is specified in Table 6.158 — DRM_Mesh_Face_Table.

6.3.158 DRM_Model

DRM class DRM_Model is specified in Table 6.159 — DRM_Model.

6.3.159 DRM_Model_Instance_Template_Index

DRM class DRM_Model_Instance_Template_Index is specified in Table 6.160 — DRM_Model_Instance_Template_Index.

6.3.160 DRM_Model_Library

DRM class DRM_Model_Library is specified in Table 6.161 — DRM_Model_Library.

6.3.161 DRM_Moving_Light_Behaviour

DRM class DRM_Moving_Light_Behaviour is specified in Table 6.162 — DRM_Moving_Light_Behaviour.

6.3.162 DRM_Octant_Data

DRM class DRM_Octant_Data is specified in Table 6.163 — DRM_Octant_Data.

6.3.163 DRM_Octant_Related_Features

DRM class DRM_Octant_Related_Features is specified in Table 6.164 — DRM_Octant_Related_Features.

6.3.164 DRM_Octant_Related_Geometry

DRM class DRM_Octant_Related_Geometry is specified in Table 6.165 — DRM_Octant_Related_Geometry.

6.3.165 DRM_OM_Augmented_3D_Location

DRM class DRM_OM_Augmented_3D_LocationD is specified in Table 6.166 — DRM_OM_Augmented_3D_Location.

6.3.166 DRM_OM_Surface_Location

DRM class DRM_OM_Surface_Location is specified in Table 6.167 — DRM_OM_Surface_Location.

6.3.167 DRM_Overload_Priority_Index

DRM class DRM_Overload_Priority_Index is specified in Table 6.168 — DRM_Overload_Priority_Index.

6.3.168 DRM_Parallelepiped_Volume_Extent

DRM class DRM_Parallelepiped_Volume_Extent is specified in Table 6.169 — DRM_Parallelepiped_Volume_Extent.

6.3.169 DRM_Perimeter_Data

DRM class DRM_Perimeter_Data is specified in Table 6.170 — DRM_Perimeter_Data.

6.3.170 DRM_Perimeter_Related_Feature_Topology

DRM class DRM_Perimeter_Related_Feature_Topology is specified in Table 6.171 — DRM_Perimeter_Related_Feature_Topology.

6.3.171 DRM_Perimeter_Related_Features

DRM class DRM_Perimeter_Related_Features is specified in Table 6.172 — DRM_Perimeter_Related_Features.

6.3.172 DRM_Perimeter_Related_Geometry

DRM class DRM_Perimeter_Related_Geometry is specified in Table 6.173 — DRM_Perimeter_Related_Geometry.

6.3.173 DRM_Perimeter_Related_Geometry_Topology

DRM class DRM_Perimeter_Related_Geometry_Topology is specified in Table 6.174 — DRM_Perimeter_Related_Geometry_Topology.

6.3.174 DRM_Point

DRM class DRM_Point is specified in Table 6.175 — DRM_Point.

6.3.175 DRM_Point_Feature

DRM class DRM_Point_Feature is specified in Table 6.176 — DRM_Point_Feature.

6.3.176 DRM_Polar_2D_Location

DRM class DRM_Polar_2D_Locatione is specified in Table 6.177 — DRM_Polar_2D_Location.

6.3.177 DRM_Polygon

DRM class DRM_Polygon is specified in Table 6.178 — DRM_Polygon.

6.3.178 DRM_Polygon_Control_Link

DRM class DRM_Polygon_Control_Link is specified in Table 6.179 — DRM_Polygon_Control_Link.

6.3.179 DRM_Polyhedron

DRM class DRM_Polyhedron is specified in Table 6.180 — DRM_Polyhedron.

6.3.180 DRM_Positional_Light

DRM class DRM_Positional_Light is specified in Table 6.181 — DRM_Positional_Light.

6.3.181 DRM_Predefined_Function

DRM class DRM_Predefined_Function is specified in Table 6.182 — DRM_Predefined_Function.

6.3.182 DRM_Presentation_Domain

DRM class DRM_Presentation_Domain is specified in Table 6.183 — DRM_Presentation_Domain.

6.3.183 DRM_Primitive_Colour

DRM class DRM_Primitive_Colour is specified in Table 6.184 — DRM_Primitive_Colour.

6.3.184 DRM_Primitive_Feature

DRM class DRM_Primitive_Feature is specified in Table 6.185 — DRM_Primitive_Feature.

6.3.185 DRM_Primitive_Geometry

DRM class DRM_Primitive_Geometry is specified in Table 6.186 — DRM_Primitive_Geometry.

6.3.186 DRM_Primitive_Summary_Item

DRM class DRM_Primitive_Summary_Item is specified in Table 6.187 — DRM_Primitive_Summary_Item.

6.3.187 DRM_Process_Step

DRM class DRM_Process_Step is specified in Table 6.188 — DRM_Process_Step.

6.3.188 DRM_Property

DRM class DRM_Property is specified in Table 6.189 — DRM_Property.

6.3.189 DRM_Property_Characteristic

DRM class DRM_Property_Characteristic is specified in Table 6.190 — DRM_Property_Characteristic.

6.3.190 DRM_Property_Description

DRM class DRM_Property_Description is specified in Table 6.191 — DRM_Property_Description.

6.3.191 DRM_Property_Grid

DRM class DRM_Property_Grid is specified in Table 6.192 — DRM_Property_Grid.

6.3.192 DRM_Property_Grid_Hook_Point

DRM class DRM_Property_Grid_Hook_Point is specified in Table 6.193 — DRM_Property_Grid_Hook_Point.

6.3.193 DRM_Property_Set

DRM class DRM_Property_Set is specified in Table 6.194 — DRM_Property_Set.

6.3.194 DRM_Property_Set_Index

DRM class DRM_Property_Set_Index is specified in Table 6.195 — DRM_Property_Set_Index.

6.3.195 DRM_Property_Set_Index_Control_Link

DRM class DRM_Property_Set_Index_Control_Link is specified in Table 6.196 — DRM_Property_Set_Index_Control_Link.

6.3.196 DRM_Property_Set_Table

DRM class DRM_Property_Set_Table is specified in Table 6.197 — DRM_Property_Set_Table.

6.3.197 DRM_Property_Set_Table_Group

DRM class DRM_Property_Set_Table_Group is specified in Table 6.198 — DRM_Property_Set_Table_Group.

6.3.198 DRM_Property_Set_Table_Library

DRM class DRM_Property_Set_Table_Library is specified in Table 6.199 — DRM_Property_Set_Table_Library.

6.3.199 DRM_Property_Table

DRM class DRM_Property_Table is specified in Table 6.200 — DRM_Property_Table.

6.3.200 DRM_Property_Table_Reference

DRM class DRM_Property_Table_Reference is specified in Table 6.201 — DRM_Property_Table_Reference.

6.3.201 DRM_Property_Table_Reference_Control_Link

DRM class DRM_Property_Table_Reference_Control_Link is specified in Table 6.202 — DRM_Property_Table_Reference_Control_Link.

6.3.202 DRM_Property_Value

DRM class DRM_Property_Value is specified in Table 6.203 — DRM_Property_Value.

6.3.203 DRM_PS_Augmented_3D_Location

DRM class DRM_PS_Augmented_3D_Location is specified in Table 6.204 — DRM_PS_Augmented_3D_Location.

6.3.204 DRM_PS_Surface_Location

DRM class DRM_PS_Surface_Location is specified in Table 6.205 — DRM_PS_Surface_Location.

6.3.205 DRM_Pseudo_Code_Function

DRM class DRM_Pseudo_Code_Function is specified in Table 6.206 — DRM_Pseudo_Code_Function.

6.3.206 DRM_Pyramid_Directional_Light

DRM class DRM_Pyramid_Directional_Light is specified in Table 6.207 — DRM_Pyramid_Directional_Light.

6.3.207 DRM_Quadrant_Data

DRM class DRM_Quadrant_Data is specified in Table 6.208 — DRM_Quadrant_Data.

6.3.208 DRM_Quadrant_Related_Features

DRM class DRM_Quadrant_Related_Features is specified in Table 6.209 — DRM_Quadrant_Related_Features.

6.3.209 DRM_Quadrant_Related_Geometry

DRM class DRM_Quadrant_Related_Geometry is specified in Table 6.210 — DRM_Quadrant_Related_Geometry.

6.3.210 DRM_Reference_Origin

DRM class DRM_Reference_Origin is specified in Table 6.211 — DRM_Reference_Origin.

6.3.211 DRM_Reference_Surface

DRM class DRM_Reference_Surface is specified in Table 6.212 — DRM_Reference_Surface.

6.3.212 DRM_Reference_Vector

DRM class DRM_Reference_Vector is specified in Table 6.213 — DRM_Reference_Vector.

6.3.213 DRM_Reference_Vector_Control_Link

DRM class DRM_Reference_Vector_Control_Link is specified in Table 6.214 — DRM_Reference_Vector_Control_Link.

6.3.214 DRM_Regular_Axis

DRM class DRM_Regular_Axis is specified in Table 6.215 — DRM_Regular_Axis.

6.3.215 DRM_Relative_Time

DRM class DRM_Relative_Time is specified in Table 6.216 — DRM_Relative_Time.

6.3.216 DRM_Relative_Time_Interval

DRM class DRM_Relative_Time_Interval is specified in Table 6.217 — DRM_Relative_Time_Interval.

6.3.217 DRM_Rendering_Priority_Level

DRM class DRM_Rendering_Priority_Level is specified in Table 6.218 — DRM_Rendering_Priority_Level.

6.3.218 DRM_Rendering_Properties

DRM class DRM_Rendering_Properties is specified in Table 6.219 — DRM_Rendering_Properties.

6.3.219 DRM_Responsible_Party

DRM class DRM_Responsible_Party is specified in Table 6.220 — DRM_Responsible_Party.

6.3.220 DRM_RGB_Colour

DRM class DRM_RGB_Colour is specified in Table 6.221 — DRM_RGB_Colour.

6.3.221 DRM_RGB_Colour_Control_Link

DRM class DRM_RGB_Colour_Control_Link is specified in Table 6.222 — DRM_RGB_Colour_Control_Link.

6.3.222 DRM_Rotating_Light_Behaviour

DRM class DRM_Rotating_Light_Behaviour is specified in Table 6.223 — DRM_Rotating_Light_Behaviour.

6.3.223 DRM_Rotation

DRM class DRM_Rotation is specified in Table 6.224 — DRM_Rotation.

6.3.224 DRM_Rotation_Control_Link

DRM class DRM_Rotation_Control_Link is specified in Table 6.225 — DRM_Rotation_Control_Link.

6.3.225 DRM_Scale

DRM class DRM_Scale is specified in Table 6.226 — DRM_Scale.

6.3.226 DRM_Scale_Control_Link

DRM class DRM_Scale_Control_Link is specified in Table 6.227 — DRM_Scale_Control_Link.

6.3.227 DRM_Season

DRM class DRM_Season is specified in Table 6.228 — DRM_Season.

6.3.228 DRM_SEC_3D_Location

DRM class DRM_SEC_3D_Location is specified in Table 6.229 — DRM_SEC_3D_Location.

6.3.229 DRM_SEDRIS_Abstract_Base

DRM class DRM_SEDRIS_Abstract_ Base is specified in Table 6.230 — DRM_SEDRIS_Abstract_ Base.

6.3.230 DRM_Separating_Plane

DRM class DRM_Separating_Plane is specified in Table 6.231 — DRM_Separating_Plane.

6.3.231 DRM_Separating_Plane_Data

DRM class DRM_Separating_Plane_Data is specified in Table 6.232 — DRM_Separating_Plane_Data.

6.3.232 DRM_Separating_Plane_Related_Geometry

DRM class DRM_Separating_Plane_Related_Geometry is specified in Table 6.233 — DRM_Separating_Plane_Related_Geometry.

6.3.233 DRM_Separating_Plane_Relations

DRM class DRM_Separating_Plane_Relations is specified in Table 6.234 — DRM_Separating_Plane_Relations.

6.3.234 DRM_SEQ_3D_Location

DRM class DRM_SEQ_3D_Location is specified in Table 6.235 — DRM_SEQ_3D_Location.

6.3.235 DRM_SM_3D_Location

DRM class DRM_SM_3D_Location is specified in Table 6.236 — DRM_SM_3D_Location.

6.3.236 DRM_SMS_3D_Location

DRM class DRM_SMS_3D_Location is specified in Table 6.237 — DRM_SMS_3D_Location.

6.3.237 DRM_Sound

DRM class DRM_Sound is specified in Table 6.238 — DRM_Sound.

6.3.238 DRM_Sound_Instance

DRM class DRM_Sound_Instance is specified in Table 6.239 — DRM_Sound_Instance.

6.3.239 DRM_Sound_Instance_Control_Link

DRM class DRM_Sound_Instance_Control_Link is specified in Table 6.240 — DRM_Sound_Instance_Control_Link.

6.3.240 DRM_Sound_Library

DRM class DRM_Sound_Library is specified in Table 6.241 — DRM_Sound_Library.

6.3.241 DRM_Sound_Volume

DRM class DRM_Sound_Volume is specified in Table 6.242 — DRM_Sound_Volume.

6.3.242 DRM_Source

DRM class DRM_Source is specified in Table 6.243 — DRM_Source.

6.3.243 DRM_Spatial_Extent

DRM class DRM_Spatial_Extent is specified in Table 6.244 — DRM_Spatial_Extent.

6.3.244 DRM_Spatial_Index_Data

DRM class DRM_Spatial_Index_Data is specified in Table 6.245 — DRM_Spatial_Index_Data.

6.3.245 DRM_Spatial_Index_Related_Feature_Topology

DRM class DRM_Spatial_Index_Related_Feature_Topology is specified in Table 6.246 — DRM_Spatial_Index_Related_Feature_Topology.

6.3.246 DRM_Spatial_Index_Related_Features

DRM class DRM_Spatial_Index_Related_Features is specified in Table 6.247 — DRM_Spatial_Index_Related_Features.

6.3.247 DRM_Spatial_Index_Related_Geometry

DRM class DRM_Spatial_Index_Related_Geometry is specified in Table 6.248 — DRM_Spatial_Index_Related_Geometry.

6.3.248 DRM_Spatial_Index_Related_Geometry_Topology

DRM class DRM_Spatial_Index_Related_Geometry_Topology is specified in Table 6.249 — DRM_Spatial_Index_Related_Geometry_Topology.

6.3.249 DRM_Spatial_Resolution_Level_Of_Detail_Data

DRM class DRM_Spatial_Resolution_Level_Of_Detail_Data is specified in Table 6.250 — DRM_Spatial_Resolution_Level_Of_Detail_Data.

6.3.250 DRM_Specular_Colour

DRM class DRM_Specular_Colour is specified in Table 6.251 — DRM_Specular_Colour.

6.3.251 DRM_Spherical_Volume_Extent

DRM class DRM_Spherical_Volume_Extent is specified in Table 6.252 — DRM_Spherical_Volume_Extent.

6.3.252 DRM_Spot_Light

DRM class DRM_Spot_Light is specified in Table 6.253 — DRM_Spot_Light.

6.3.253 DRM_SRF_Summary

DRM class DRM_SRF_Summary is specified in Table 6.254 — DRM_SRF_Summary.

6.3.254 DRM_Stamp_Behaviour

DRM class DRM_Stamp_Behaviour is specified in Table 6.255 — DRM_Stamp_Behaviour.

6.3.255 DRM_State_Control_Link

DRM class DRM_State_Control_Link is specified in Table 6.256 — DRM_State_Control_Link.

6.3.256 DRM_State_Data

DRM class DRM_State_Data is specified in Table 6.257 — DRM_State_Data.

6.3.257 DRM_State_Related_Features

DRM class DRM_State_Related_Features is specified in Table 6.258 — DRM_State_Related_Features.

6.3.258 DRM_State_Related_Geometry

DRM class DRM_State_Related_Geometry is specified in Table 6.259 — DRM_State_Related_Geometry.

6.3.259 DRM_Strobing_Light_Behaviour

DRM class DRM_Strobing_Light_Behaviour is specified in Table 6.260 — DRM_Strobing_Light_Behaviour.

6.3.260 DRM_Surface_Geometry

DRM class DRM_Surface_Geometry is specified in Table 6.261 — DRM_Surface_Geometry.

6.3.261 DRM_Surface_Location

DRM class DRM_Surface_Location is specified in Table 6.262 — DRM_Surface_Location.

6.3.262 DRM_Symbol

DRM class DRM_Symbol is specified in Table 6.263 — DRM_Symbol.

6.3.263 DRM_Symbol_Library

DRM class DRM_Symbol_Library is specified in Table 6.264 — DRM_Symbol_Library.

6.3.264 DRM_Table_Property_Description

DRM class DRM_Table_Property_Description is specified in Table 6.265 — DRM_Table_Property_Description.

6.3.265 DRM_Tack_Point

DRM class DRM_Tack_Point is specified in Table 6.266 — DRM_Tack_Point.

6.3.266 DRM_Text

DRM class DRM_Text is specified in Table 6.267 — DRM_Text.

6.3.267 DRM_Texture_Coordinate

DRM class DRM_Texture_Coordinate is specified in Table 6.268 — DRM_Texture_Coordinate.

6.3.268 DRM_Texture_Coordinate_Control_Link

DRM class DRM_Texture_Coordinate_Control_Link is specified in Table 6.269 — DRM_Texture_Coordinate_Control_Link.

6.3.269 DRM_Time_Constraints_Data

DRM class DRM_Time_Constraints_Data is specified in Table 6.270 — DRM_Time_Constraints_Data.

6.3.270 DRM_Time_Interval

DRM class DRM_Time_Interval is specified in Table 6.271 — DRM_Time_Interval.

6.3.271 DRM_Time_Of_Day

DRM class DRM_Time_Of_Day is specified in Table 6.272 — DRM_Time_Of_Day.

6.3.272 DRM_Time_Point

DRM class DRM_Time_Point is specified in Table 6.273 — DRM_Time_Point.

6.3.273 DRM_Time_Related_Features

DRM class DRM_Time_Related_Features is specified in Table 6.274 — DRM_Time_Related_Features.

6.3.274 DRM_Time_Related_Geometry

DRM class DRM_Time_Related_Geometry is specified in Table 6.275 — DRM_Time_Related_Geometry.

6.3.275 DRM_TM_Augmented_3D_Location

DRM class DRM_TM_Augmented_3D_Location is specified in Table 6.276 — DRM_TM_Augmented_3D_Location.

6.3.276 DRM_TM_Surface_Location

DRM class DRM_TM_Surface_Location is specified in Table 6.277 — DRM_TM_Surface_Location.

6.3.277 DRM_Transformation

DRM class DRM_Transformation is specified in Table 6.278 — DRM_Transformation.

6.3.278 DRM_Translation

DRM class DRM_Translation is specified in Table 6.279 — DRM_Translation.

6.3.279 DRM_Translation_Control_Link

DRM class DRM_Translation_Control_Link is specified in Table 6.280 — DRM_Translation_Control_Link.

6.3.280 DRM_Translucency

DRM class DRM_Translucency is specified in Table 6.281 — DRM_Translucency.

6.3.281 DRM_Translucency_Control_Link

DRM class DRM_Translucency_Control_Link is specified in Table 6.282 — DRM_Translucency_Control_Link.

6.3.282 DRM_Transmittal_Root

DRM class DRM_Transmittal_Root is specified in Table 6.283 — DRM_Transmittal_Root.

6.3.283 DRM_Transmittal_Summary

DRM class DRM_Transmittal_Summary is specified in Table 6.284 — DRM_Transmittal_Summary.

6.3.284 DRM_Twinkling_Light_Behaviour

DRM class DRM_Twinkling_Light_Behaviour is specified in Table 6.285 — DRM_Twinkling_Light_Behaviour.

6.3.285 DRM_Union_Of_Feature_Topology

DRM class DRM_Union_Of_Feature_Topology is specified in Table 6.286 — DRM_Union_Of_Feature_Topology.

6.3.286 DRM_Union_Of_Features

DRM class DRM_Union_Of_Features is specified in Table 6.287 — DRM_Union_Of_Features.

6.3.287 DRM_Union_Of_Geometry

DRM class DRM_Union_Of_Geometry is specified in Table 6.288 — DRM_Union_Of_Geometry.

6.3.288 DRM_Union_Of_Geometry_Hierarchy

DRM class DRM_Union_Of_Geometry_Hierarchy is specified in Table 6.289 — DRM_Union_Of_Geometry_Hierarchy.

6.3.289 DRM_Union_Of_Geometry_Topology

DRM class DRM_Union_Of_Geometry_Topology is specified in Table 6.290 — DRM_Union_Of_Geometry_Topology.

6.3.290 DRM_Union_Of_Primitive_Geometry

DRM class DRM_Union_Of_Primitive_Geometry is specified in Table 6.291 — DRM_Union_Of_Primitive_Geometry.

6.3.291 DRM_Variable

DRM class DRM_Variable is specified in Table 6.292 — DRM_Variable.

6.3.292 DRM_Vertex

DRM class DRM_Vertex is specified in Table 6.293 — DRM_Vertex.

6.3.293 DRM_Volume

DRM class DRM_Volume is specified in Table 6.294 — DRM_Volume.

6.3.294 DRM_Volume_Extent

DRM class DRM_Volume_Extent is specified in Table 6.295 — DRM_Volume_Extent.

6.3.295 DRM_Volume_Geometry

DRM class DRM_Volume_Geometry is specified in Table 6.296 — DRM_Volume_Geometry.

6.3.296 DRM_Volume_Level_Of_Detail_Data

DRM class DRM_Volume_Level_Of_Detail_Data is specified in Table 6.297 — DRM_Volume_Level_Of_Detail_Data.

6.3.297 DRM_Volume_Light_Behaviour

DRM class DRM_Volume_Light_Behaviour is specified in Table 6.298 — DRM_Volume_Light_Behaviour.

6.3.298 DRM_World_Transformation

DRM class DRM_World_Transformation is specified in Table 6.299 — DRM_World_Transformation