The contents of this clause are summarized in Table 5.1
This clause specifies the manner in which data types used in binary-encoded SEDRIS transmittals are encoded.
This part of ISO/IEC 18023 specifies data types using the following form:
name : data type |
where name specifies the identifier of the data and data type specifies the data type.
The box may indicate the bit positions of data types that occupy single storage units (8, 16, 32, or 64 bits). For 64-bit data types only the leading and trailing bit positions are indicated. The other bit positions are implied. If the box does not indicate bit positions, the box represents a complex data type such as an array data type or a record data type whose bit positions can be determined by expanding the data type into its constituent parts.
When a data type has internal fields where the fields represent different meanings, the following form is used:
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
A |
BB |
CC |
DDD |
where each letter group is the name of a subfield. The specification of the subfield is presented in text following the form. While an octet is shown here as an example, the size of the data type may be any of the supported storage units.
Instances of the data types defined in part 1 of ISO/IEC 18023 and those defined in this part of ISO/IEC 18023 shall be encoded in the form specified in this part of ISO/IEC 18023.
For specifications containing multiple elements, the data shall be encoded in the order presented in this part of ISO/IEC 18023. For variant record types, the data shall be encoded to first encode the discriminant followed by the elements of the variant identified by the value of the discriminant.
These data types are used to store STF structural information as well as the information contained in the fields of object instances.
STF does not require alignment of data types to specific memory boundaries other than octet boundaries.
STF supports only big endian data types.
Figure 5.1 illustrates a big endian representation for the 16-bit word-oriented data types.
Figure 5.1 — Big-endian representation for 16-bit word-oriented data types
Figure 5.2 illustrates the big endian representation for the 32-bit word-oriented data types.
31 |
30 |
29 |
28 |
27 |
26 |
25 |
24 |
|
23 |
22 |
21 |
20 |
19 |
18 |
17 |
16 |
|
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
|
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
Byte 0 |
|
Byte 1 |
|
Byte 2 |
|
Byte 3 |
Figure 5.2 — Big-endian representation for 32-bit word-oriented data types
Figure 5.3 illustrates the big endian representation for the 64-bit word-oriented data types.
63 |
62 |
61 |
60 |
59 |
58 |
57 |
56 |
|
55 |
54 |
53 |
52 |
51 |
50 |
49 |
48 |
••• |
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
|
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
Byte 0 |
|
Byte 1 |
|
Byte 6 |
|
Byte 7 |
Figure 5.3 — Big-endian representation for 64-bit word-oriented data types
Integers used for DRM content are represented as byte chain encoded (BCE) data types. These data types are of variable length with only the minimum number of octets needed to represent the value of any particular instance of an integer. Integers used in STF constructs are of fixed size from one to four octets.
The length of a BCE8_Unsigned element is from one to five octets. The most significant bit (MSB) of each octet indicates whether another octet exists in the value. A MSB value of one indicates that another octet follows; a value of zero indicates that this is the last octet in the value. The LSB from the first octet forms the least significant bits of the integer value. The seven least significant bits (LSB) of subsequent octets are preconcatenated to form an Integer_Unsigned value. Figure 5.4 illustrates this data type.
Figure 5.4 — BCE8_Unsigned formulation
The 21 data bits identified by the letters a through u form the 21-bit non-negative integer
opqrstuhijklmnabcdefg
where zeroes fill the unspecified bits of an integer storage unit.
The length of a BCE16_Unsigned element is from two to five octets. The MSB of the second octet indicates whether another octet exists in the value. All eight bits of the first octet are used as value bits and form the least significant bits of the integer value. This extends the range of two octet representations over that which can be provided by BCE8_Unsigned representations. Figure 5.5 specifies this data type.
Figure 5.5 — BCE16_Unsigned formulation
The 22 data bits identified by the letters a through v form the 22-bit non-negative integer
pqrstuvijklmnoabcdefgh
where zeros fill the unspecified bits of an integer’s storage unit. The bit identified as x indicates whether the third octet is present: x = 1 indicates that the octet is present. The high-order bit of the third octet is always zero.
The length of a BCE8_Signed element is from one to five octets. The most significant bit (MSB) of each octet indicates whether another octet exists in the value. A MSB value of one indicates that another octet follows; a value of zero indicates that this is the last octet in the value. The LSB from the first octet forms the least significant bits of the integer value. The seven least significant bits (LSB) of subsequent octets are preconcatenated to form an Integer value. Figure 5.6 specifies this data type.
Figure 5.6 — BCE8_Signed formulation
The 21 data bits identified by the letters a through u form the 21-bit two’s-complement integer:
opqrstuhijklmnabcdefg
where bit o is sign-extended to fill an integer storage unit.
The length of an STF_Byte_Unsigned element is one octet. Figure 5.7 specifies this data type. When included in the more complex constructs, the meaning of bits is specified.
Figure 5.7 — STF_Byte_Unsigned formulation
where the bit sequence abcdefgh forms an eight-bit unsigned integer value.
The length of an STF_Short_Integer element is 16 bits. Figure 5.8 specifies this data type.
Figure 5.8 — STF_Short_Integer formulation
where the bit sequence specified by abcdefghijklmnop forms a 16-bit signed integer.
The length of an STF_Short_Integer_Unsigned element is two octets. Figure 5.9 specifies this data type. This data type is always used to represent non-negative numbers.
Figure 5.9 — STF_Short_Integer_Unsigned formulation
where the bit sequence abcdefghijklmnop forms a non-negative 16-bit integer.
The length of an STF_Integer element is four octets. Figure 5.10 specifies this data type.
31 |
30 |
29 |
28 |
27 |
26 |
25 |
24 |
23 |
22 |
21 |
20 |
19 |
18 |
17 |
16 |
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
a |
b |
c |
d |
e |
f |
g |
h |
i |
j |
k |
l |
m |
n |
o |
p |
q |
r |
s |
t |
u |
v |
w |
x |
y |
z |
0 |
1 |
2 |
3 |
4 |
5 |
Figure 5.10 — STF_Integer formulation
where the bit sequence abcdefghijklmnopqrstuvwxyz012345 forms a 32-bit signed integer.
The length of an STF_Integer_Unsigned element is four octets. Figure 5.11 specifies this data type. This data type is always used to represent non-negative numbers.
31 |
30 |
29 |
28 |
27 |
26 |
25 |
24 |
23 |
22 |
21 |
20 |
19 |
18 |
17 |
16 |
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
a |
b |
c |
d |
e |
f |
g |
h |
i |
j |
k |
l |
m |
n |
o |
p |
q |
r |
s |
t |
u |
v |
w |
x |
y |
z |
0 |
1 |
2 |
3 |
4 |
5 |
Figure 5.11 — STF_Integer_Unsigned formulation
where the bit sequence abcdefghijklmnopqrstuvwxyz012345 forms a 32-bit unsigned integer.
This format supports two types of floating point representations: single-precision and double-precision. These are encoded as specified in 2.[IEC60559].
In this part of ISO/IEC 18023, single precision elements will be depicted as shown in Figure 5.12:
31 |
30 |
29 |
28 |
27 |
26 |
25 |
24 |
23 |
22 |
21 |
20 |
19 |
18 |
17 |
16 |
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
single-precision floating point |
Figure 5.12 — single-precision floating point formulation
where the 32 bits specify a single-precision field or element.
Similarly, double-precision elements will be depicted as shown in Figure 5.13.
Figure 5.13 — Double-precision floating point formulation
where the 64 bits specify a double-precision field or element.
No attempt is made to show the characteristic and the mantissa. Such information may be found in 2.[IEC60559].
Within the encoding format, data types that are a composite of basic data types are used. These are specified below.
axes_bounds : STF_Index_Range[axes_count : Short_Integer_Unsigned] |
sentinel_value : Property_Data_Value |
mapped_sentinel_value : Integer_Unsigned |
file_index : BCE8_Unsigned (range: [1,30000]) |
block_index : BCE16_Unsigned (range: [0,4095]) |
object_index : Byte_Unsigned (range: [0,255]) |
first_index : Integer_Unsigned |
last_index : Integer_Unsigned |
STF specifies the use of null-terminated strings in the headers of its constructs. Such strings are formed by a series of UTF-8 characters followed by the NULL character (‘00’). This string data types is called STF_Characters.
The data types specified in part 1 of ISO/IEC 18023 are termed “SEDRIS data types”. These are represented explicitly as required by part 1 of ISO/IEC 18023 (see 2.[I18023-1]) or are mapped to the encoding specific data types specified in this part of ISO/IEC 18023. Only the data types specified in part 1 of ISO/IEC 18023 that may exist as part of a SEDRIS transmittal shall be encoded. Data types specified in part 1 of ISO/IEC 18023 that are not part of a SEDRIS transmittal shall not be encoded.
The following numeric data types specified in part 1 of ISO/IEC 18023 shall be encoded as specified in 5.4.2.2 BCE8_Unsigned:
Short_Integer_Unsigned
Integer_Unsigned
Short_Integer_Positive
Integer_Positive
SRM_Short_Integer_Positive
SRM_Short_Integer_Unsigned
The following numeric data types specified in part 1 of ISO/IEC 18023 shall be encoded as specified in 5.4.2.4 BCE8_Signed:
Short_Integer
Integer
EDCS_Integer
EDCS_Enumerant_Code
SRM_Integer
The following numeric data types specified in part 1 of ISO/IEC 18023 shall be encoded as 8-bit octets:
Byte
Byte_Unsigned
Byte_Positive
SRM_Byte_Positive
All floating point data types specified by part 1 of ISO/IEC 18023 shall be encoded as specified in 2.[IEC60559]. The following is a list of all floating point types specified in part 1 of ISO/IEC 18023 that are so encoded:
Float
Long_Float
SRM_Long_Float
All characters are encoded in UTF-8 as specified in 2.[I10646]. This results in individual characters that may occupy from one to six octets. The following is a list of all SEDRIS data types that are so encoded:
Character
All SEDRIS enumerated data types are encoded as BCE8_Unsigned as specified in 5.2.2.2 BCE8_Unsigned. The enumerants have values as shown below.
FALSE → 0
TRUE → 1
NORMAL → 0
PARENT_OVERRIDE → 1
RASTER → 0
CALLIGRAPHIC → 1
RIGHT_UP → 0
RIGHT_DOWN → 1
DOWN_RIGHT → 2
DOWN_LEFT → 3
LEFT_UP → 4
LEFT_DOWN → 5
UP_RIGHT → 6
UP_LEFT → 7
Z_NONE → 0
Z_BACK → 1
Z_FRONT → 2
OPEN → 0
CLOSED → 1
LOWER_CLOSED_UPPER_OPEN → 2
UPPER_CLOSED_LOWER_OPEN → 3
X → 0
Y → 1
Z → 2
ALL → 3
AXIS_REFERENCE_VECTOR → 4
COMPONENT → 0
ROOT → 1
ROOT_AND_COMPONENT → 2
JANUARY → 0
FEBRUARY → 1
MARCH → 2
APRIL → 3
MAY → 4
JUNE → 5
JULY → 6
AUGUST → 7
SEPTEMBER → 8
OCTOBER → 9
NOVEMBER → 10
DECEMBER → 11
UPPER_SOUTHWEST → 0
UPPER_NORTHWEST → 1
LOWER_SOUTHWEST → 2
LOWER_NORTHWEST → 3
UPPER_SOUTHEAST → 4
UPPER_NORTHEAST → 5
LOWER_SOUTHEAST → 6
LOWER_NORTHEAST → 7
NONE → 0
ENVIRONMENT_ROOT → 1
MODELS → 2
ENVIRONMENT_ROOT_AND_MODELS → 3
NORTHWEST → 0
NORTHEAST → 1
SOUTHWEST → 2
SOUTHEAST → 3
CLOSEST_TO_ORM_CENTRE → 0
CLOSEST_TO_VERTICAL_DATUM → 1
HIGHEST → 2
FULL → 0
LEAST_DETAILED → 1
SPRING → 0
SUMMER → 1
AUTUMN → 2
WINTER → 3
DRY → 4
WET → 5
POSITIVE_PRIMARY_AXIS → 0
POSITIVE_SECONDARY_AXIS → 1
POSITIVE_TERTIARY_AXIS → 2
NEGATIVE_PRIMARY_AXIS → 3
NEGATIVE_SECONDARY_AXIS → 4
NEGATIVE_TERTIARY_AXIS → 5
NORTHERN → 0
SOUTHERN → 1
NORTH → 0
SOUTH → 1
LAST → 0
DEFAULT → 1
NONE → 2
DAWN →
0
MORNING → 1
DAY → 2
AFTERNOON → 3
DUSK → 4
EVENING → 5
NIGHT → 6
All selection data types are encoded as BCE8_Signed as specified in 5.2.2.4 BCE8_Signed. The following is a list of SEDRIS selection data types that may be encoded in an STF:
Axis_Alignment
Camera_Projection_Type
CI_RoleCode
Colour_Mapping
Colour_Model
DRM_Class
EDCS_Attribute_Code
EDCS_Classification_Code
EDCS_Enumeration_Code
EDCS_Scale_Code
EDCS_Unit_Code
EDCS_Value_Characteristics_Code
Element_Type_Code
Feature_Topology_Level
Feature_Union_Reason
Font_Style
Geometry_Topology_Level
Grid_Overlap_Operator
Image_Component_Type
Image_Mapping_Method
Image_Projection_Type
Image_Signature
Image_Wrap
Index_Code
Interpolation_Type
Keyword_Type_Code
LOD_Data_Type
Lookup_Signature
Lookup_Type
Media_Format
Ordering_Reason
Pixel_Fill_Method
Predefined_Function
Property_Data_Value_Type
Reference_Vector_Type
Security_Restriction_Type
Shading_Method
Sound_Format
Spacing_Type
Spatial_Index_Spacing_Unit
SRM_Elevation_Unit
SRM_Epoch
SRM_Horizontal_Datum_Code
SRM_SRF_Type
SRM_Vertical_Datum_Code
Symbol_Format
Time_Configuration
Time_Data_Type
Time_Measurement_Type
Time_Significance
Traversal_Order
Underline_Style
Unmatched_State_Behaviour
Variable_Code
Volumetric_Shape
SEDRIS set data types are all encoded as 32-bit integers with different set members mapped to individual bits as shown below. The general bit layout for a set data type is depicted in Figure 5.14. Each set data type specifies a particular number of bits to be used. All other bit positions shall be set to 0. A value of 1 in a bit position indicates that that set member is part of the set. A value of zero in a bit position indicates that that set member is not part of the set.
Figure 5.14 — Set data type formulation
FRONT → Bit 0
BACK → Bit 1
SOLID → Bit 0
WIREFRAME → Bit 1
TERRAIN → Bit 0
HAT_TEST → Bit 1
COLLIDIBLE → Bit 2
PROJECTILE_COLLIDIBLE → Bit 3
BACKDROP_SKY → Bit 4
BACKDROP_GROUND → Bit 5
CUT → Bit 6
RAISED → Bit 7
DECAL → Bit 8
INACTIVE → Bit 9
INVISIBLE → Bit 10
FOOTPRINT → Bit 11
WATER → Bit 12
CLUTTER_ENHANCED → Bit 13
SHADOW → Bit 14
SUN_ILLUMINATED → Bit 15
MOON_REFLECTION → Bit 16
ENABLE_FRACTAL → Bit 17
CUT_IMAGERY → Bit 18
VISIBLE_PERIMETER → Bit 19
VISIBLE_INTERIOR → Bit 20
VISIBLE_FLOOR → Bit 21
OPAQUE_TOP → Bit 22
LASER_RANGE_FINDING → Bit 23
REFLECTIVE → Bit 24
SITE_OCCULTING → Bit 25
ENABLE_POLYGON_RANGE_BLENDING → Bit 26
ENABLE_FEATURE_SIZE_BLENDING → Bit 27
CONCAVE → Bit 28
DO_NOT_DRAPE → Bit 29
OTW → Bit 0
IR_HI_BAND → Bit 1
IR_LOW_BAND → Bit 2
NVG → Bit 3
DAY_TV_COLOUR → Bit 4
DAY_TV_BW → Bit 5
RADAR → Bit 6
SAR → Bit 7
THERMAL → Bit 8
LOW_LIGHT_TV → Bit 9
Fixed length arrays shall be encoded as a sequence of the base data type for the array. If the array is two-dimensional, the sequence shall be sorted such that all the elements of a row are represented before the first element of the next row.
Variable length arrays shall be encoded by first encoding the sizes of each dimension of the array before encoding the array. Once the dimensions are encoded, the array shall be encoded as for fixed length arrays. Some variable length arrays have their lengths specified by other parameters. In this case, the length specified by the other parameter shall be used and only the array content shall be encoded.
An example of how array data types are specified is shown in Figure 5.15:
Figure 5.15 Variable array formulation
This indicates that the first element of the array encoding is an element of type “Length_Data_Type” followed by “length_name” occurrences of an element of type “Content_Data_Type”.
All elements of the array are packed; there are no padding elements.
The following is a list of specially defined array data types from part 1 of ISO/IEC 18023 that may be encoded in an STF-encoded SEDRIS transmittal:
Matrix_3x3
Matrix_4x4
Vector_3
Since these three data types are of fixed size, no length field shall be provided.
Array data types may also be formed from any of the other SEDRIS array types.
Record data types shall be encoded as a sequence of the fields comprising the record. Each field of the record shall be encoded individually according to the requirements of the specified data type until the entire record is encoded.
Variant record data types have different encoding depending on the value of the discriminant. Thus, the value of the discriminant shall first be encoded as appropriate for the data type of the discriminant followed immediately by the encoding of the first field that corresponds with the definition of the record for that discriminant value.
All elements of the record shall be packed; there shall be no padding elements.
The following defines the specific encoding of all SEDRIS record data types that may be exist in an STF.
delivery_point : String |
city : String |
administrative_area : String |
postal_code : String |
country : String |
x : Long_Float |
y : Long_Float |
z : Long_Float |
horizontal_datum : SRM_Horizontal_Datum_Code |
vertical_datum : SRM_Vertical_Datum_Code |
geodetic_latitude : SRM_Long_Float |
geodetic_longitude : SRM_Long_Float |
x_offset : SRM_Long_Float |
y_offset : SRM_Long_Float |
central_scale_factor : SRM_Long_Float |
z_unit : SRM_Elevation_Unit |
x : Long_Float |
y : Long_Float |
z : Long_Float |
horizontal_datum : SRM_Horizontal_Datum_Code |
vertical_datum : SRM_Vertical_Datum_Code |
north_parallel_geodetic_latitude : SRM_Long_Float |
south_parallel_geodetic_latitude : SRM_Long_Float |
geodetic_latitude : SRM_Long_Float |
geodetic_longitude : SRM_Long_Float |
z_unit : SRM_Elevation_Unit |
x : Long_Float |
y : Long_Float |
z : Long_Float |
horizontal_datum : SRM_Horizontal_Datum_Code |
vertical_datum : SRM_Vertical_Datum_Code |
geodetic_longitude : SRM_Long_Float
central_scale_factor : SRM_Long_Float |
x_offset : SRM_Long_Float |
y_offset : SRM_Long_Float |
z_unit : SRM_Elevation_Unit |
beginning_frame : Short_Integer_Unsigned |
ending_frame : Short_Integer_Unsigned |
x : Long_Float |
y : Long_Float |
z : Long_Float |
horizontal_datum : SRM_Horizontal_Datum_Code |
vertical_datum : SRM_Vertical_Datum_Code |
geodetic_latitude_1 : SRM_Long_Float |
geodetic_longitude_1 : SRM_Long_Float |
geodetic_latitude_2 : SRM_Long_Float |
geodetic_longitude_2 : SRM_Long_Float |
x_offset : SRM_Long_Float |
y_offset : SRM_Long_Float |
central_scale_factor : SRM_Long_Float |
z_unit : SRM_Elevation_Unit |
x : Long_Float |
y : Long_Float |
z : Long_Float |
horizontal_datum : SRM_Horizontal_Datum_Code |
vertical_datum : SRM_Vertical_Datum_Code |
pole : SRM_PS_Pole |
geodetic_longitude : SRM_Long_Float |
central_scale_factor : SRM_Long_Float |
z_unit : SRM_Elevation_Unit |
x_offset : SRM_Long_Float |
y_offset : SRM_Long_Float |
x : Long_Float |
y : Long_Float |
z : Long_Float |
horizontal_datum : SRM_Horizontal_Datum_Code |
vertical_datum : SRM_Vertical_Datum_Code |
geodetic_latitude : SRM_Long_Float |
geodetic_longitude : SRM_Long_Float
x_offset : SRM_Long_Float |
y_offset : SRM_Long_Float |
central_scale_factor : SRM_Long_Float |
z_unit : SRM_Elevation_Unit |
x : Long_Float |
y : Long_Float |
z : Long_Float |
horizontal_datum : SRM_Horizontal_Datum_Code |
vertical_datum : SRM_Vertical_Datum_Code |
pole : SRM_PS_Pole |
x_offset : SRM_Long_Float |
y_offset : SRM_Long_Float |
z_unit : SRM_Elevation_Unit |
x : Long_Float |
y : Long_Float |
z : Long_Float |
horizontal_datum : SRM_Horizontal_Datum_Code |
vertical_datum : SRM_Vertical_Datum_Code |
x_offset : SRM_Long_Float |
y_offset : SRM_Long_Float |
z_unit : SRM_Elevation_Unit |
zone : SRM_Byte_Positive |
hemisphere : SRM_Hemisphere |
cyan : Long_Float |
magenta : Long_Float |
yellow : Long_Float |
person_name : String |
position_name : String |
organization : String |
address : Address |
voice_phone : String |
fax_phone : String |
tdd_tty_phone : String |
email_address : data_type |
web_site : String |
hours_of_service : String |
other : String |
x : Long_Float |
y : Long_Float |
horizontal_datum : SRM_Horizontal_Datum_Code |
geodetic_latitude : SRM_Long_Float |
geodetic_longitude : SRM_Long_Float |
x_offset : SRM_Long_Float |
y_offset : SRM_Long_Float |
central_scale_factor : SRM_Long_Float |
code_type : Element_Code_Type |
For code_type = ATTRIBUTE_CODE:
attribute : EDCS_Attribute_Code |
For code_type = INDEX_CODE:
index : Index_Code |
For code_type = VARIABLE_CODE:
variable : Variable_Code |
type: Interval_Type |
upper_bound : EDCS_Float |
lower_bound : EDCS_Float |
x : Long_Float |
y : Long_Float |
z : Long_Float |
x : Long_Float |
y : Long_Float |
z : Long_Float |
cell_id : SRM_Short_Integer_Positive |
x_offset : SRM_Long_Float |
y_offset : SRM_Long_Float |
geodetic_longitude : Long_Float |
geodetic_latitude : Long_Float |
horizontal_datum : SRM_Horizontal_Datum_Code |
geodetic_longitude : Long_Float |
geodetic_latitude : Long_Float
elevation : Long_Float |
horizontal_datum : SRM_Horizontal_Datum_Code |
vertical_datum : SRM_Vertical_Datum_Code |
z_unit : SRM_Elevation_Unit |
right_ascension : Long_Float |
declination : Long_Float |
radius : Long_Float |
epoch : SRM_Epoch |
geomagnetic_longitude : Long_Float |
geomagnetic_latitude : Long_Float |
radius : Long_Float |
gm_epoch : SRM_Short_Integer_Unsigned |
gm_earth_radius : SRM_Long_Float |
longitude : Long_Float |
latitude : Long_Float |
radius : Long_Float |
longitude : Long_Float |
latitude : Long_Float |
radius : Long_Float |
hue : Long_Float |
saturation : Long_Float |
value : Long_Float |
size_horizontal : Integer_Positive |
size_vertical : Integer_Positive |
size_z : Integer_Positive |
horizontal : Short_Integer_Unsigned |
vertical : Short_Integer_Unsigned |
z : Short_Integer_Unsigned |
type : Interval_Type |
lower_bound : EDCS_Integer |
upper_bound : EDCS_Integer |
type : Interval_Type |
lower_bound : EDCS_Integer_Unsigned |
upper_bound : EDCS_Integer_Unsigned |
value_minimum : Long_Float |
value_maximum : Long_Float |
code : Keyword_Type_Code |
thesaurus : String |
keyword_list : String |
x : Long_Float |
y : Long_Float |
horizontal_datum : SRM_Horizontal_Datum_Code |
north_parallel_geodetic_latitude : SRM_Long_Float |
south_parallel_geodetic_longitude : SRM_Long_Float |
geodetic_latitude : SRM_Long_Float |
geodetic_longitude : SRM_Long_Float |
x_offset : SRM_Long_Float |
y_offset : SRM_Long_Float |
language : Character[language_length : Short_Integer_Unsigned] |
x : Long_Float |
y : Long_Float |
x : Long_Float |
y : Long_Float |
z : Long_Float |
forward_direction : SRM_Forward_Direction |
up_direction : SRM_Direction |
forward_direction : SRM_Direction |
x : Long_Float |
y : Long_Float |
x : Long_Float |
y : Long_Float |
z : Long_Float |
horizontal_datum : SRM_Horizontal_Datum_Code |
geodetic_latitude : SRM_Long_Float |
geodetic_longitude : SRM_Long_Float |
azimuth : SRM_Long_Float |
x_offset : SRM_Long_Float |
y_offset : SRM_Long_Float |
horizontal_datum : SRM_Horizontal_Datum_Code |
vertical_datum : SRM_Vertical_Datum_Code |
geodetic_latitude : SRM_Long_Float |
geodetic_longitude : SRM_Long_Float |
azimuth : SRM_Long_Float |
x_offset : SRM_Long_Float |
y_offset : SRM_Long_Float |
z_unit : SRM_Elevation_Unit |
x : Long_Float |
y : Long_Float |
horizontal_datum : SRM_Horizontal_Datum_Code |
geodetic_longitude : SRM_Long_Float |
central_scale_factor : SRM_Long_Float |
x_offset : SRM_Long_Float |
y_offset : SRM_Long_Float |
x : Long_Float |
y : Long_Float |
horizontal_datum : SRM_Horizontal_Datum_Code |
geodetic_latitude_1 : SRM_Long_Float |
geodetic_longitude_1 : SRM_Long_Float |
geodetic_latitude_2 : SRM_Long_Float |
geodetic_longitude_2 : SRM_Long_Float |
x_offset : SRM_Long_Float |
y_offset : SRM_Long_Float |
central_scale_factor : SRM_Long_Float |
value_type : Property_Data_Value_Type |
For value_type = BOOLEAN:
Boolean_value : Boolean |
For value_type = BYTE:
byte_value : Byte |
For value_type = BYTE_POSITIVE:
byte_positive_value : Byte_Positive |
For value_type = BYTE_UNSIGNED:
byte_unsigned_value : Byte_Unsigned |
For value_type = SHORT_INTEGER:
short_integer_value : Short_Integer |
For value_type = SHORT_INTEGER_POSITIVE:
short_integer_positive_value : Short_Integer_Positive |
For value_type = SHORT_INTEGER_UNSIGNED:
short_integer_unsigned_value : Short_Integer_Unsigned |
For value_type = INTEGER:
integer _value : Integer |
For value_type = INTEGER_INTERVAL:
integer_interval_value : Integer_Interval |
For value_type = INTEGER_POSITIVE:
integer_positive_value : Integer_Positive |
For value_type = INTEGER_UNSIGNED:
integer_unsigned_value : Integer_Unsigned |
For value_type = INTEGER_UNSIGNED_INTERVAL:
integer_unsigned_interval_value : Integer_Unsigned_Interval |
For value_type = FLOAT:
float_value : Float |
For value_type = FLOAT_INTERVAL:
float_interval_value : Float_Interval |
For value_type = LONG_FLOAT:
long_float_value : Long_Float |
For value_type = STRING:
string_value : String |
For value_type = DATA_TABLE_COMPONENT_INDEX:
dt_component_index_value : Integer_Unsigned |
For value_type = DATA_TABLE_LIBRARY_INDEX:
dt_library_index_value : Integer_Unsigned |
For value_type = ENUMERANT_CODE:
edcs_enumerant_code_value : EDCS_Enumerant_Code |
For value_type = METADATA_CODE:
edcs_metadata_code_value : EDCS_Metadata_Code |
x : Long_Float |
y : Long_Float |
horizontal_datum : SRM_Horizontal_Datum_Code |
pole : SRM_PS_Pole |
geodetic_latitude : SRM_Long_Float |
central_scale_factor : SRM_Long_Float |
x_offset : SRM_Long_Float |
y_offset : SRM_Long_Float |
red : Long_Float |
green : Long_Float |
blue : Long_Float |
ccw_limit : Long_Float |
cw_limit : Long_Float |
system : String |
classification : String |
handling : String |
longitude : Long_Float |
latitude : Long_Float |
radius : Long_Float |
SRF_type : SRF_Type |
For SRF_type = AEC:
AEC_parameters : SRM_AEC_Parameters |
For SRF_type = ALCC:
ALCC_parameters : SRM_ALCC_Parameters |
For SRF_type = AM:
AM_parameters : SRM_AM_Parameters |
For SRF_type = AOM:
AOM_parameters : SRM_AOM_Parameters |
For SRF_type = APS:
APS_parameters : SRM_APS_Parameters |
For SRF_type = ATM:
ATM_parameters : SRM_ATM_Parameters |
For SRF_type = AUPS:
AUPS_parameters : SRM_AUPS_Parameters |
For SRF_type = AUTM:
AUTM_parameters : SRM_AUTM_Parameters |
For SRF_type = EC:
EC_parameters : SRM_EC_Parameters |
For SRF_type = GC:
No additional information encoded.
For SRF_type = GCS:
GCS_parameters : SRM_GCS_Parameters |
For SRF_type = GD2:
GD_parameters : SRM_GD2_Parameters |
For SRF_type = GD3:
GD3_parameters : SRM_GD3_Parameters |
For SRF_type = GEI:
GEI_parameters : SRM_GEI_Parameters |
For SRF_type = GM:
GM_parameters : SRM_GM_Parameters |
For SRF_type = GSE:
No additional information is encoded.
For SRF_type = GSM:
No additional information is encoded.
For SRF_type = LCC:
LCC_parameters : SRM_LCC_Parameters |
For SRF_type = LSR2:
LSR2_parameters : SRM_LSR2_Parameters |
For SRF_type = LSR3:
LSR3_parameters : SRM_LSR3_Parameters |
For SRF_type = LTP:
LTP_parameters : SRM_LTP_Parameters |
For SRF_type = M:
M_parameters : SRM_M_Parameters |
For SRF_type = OM:
AEC_parameters : SRM_OM_Parameters |
For SRF_type = PS:
AEC_parameters : SRM_PS_Parameters |
For SRF_type = SM:
No additional information is encoded.
For SRF_type = TM:
TM_parameters : SRM_TM_Parameters |
For SRF_type = UPS:
UPS_parameters : SRM_UPS_Parameters |
For SRF_type = UTM:
UTM_parameters : SRM_UTM_Parameters |
locale : Locale |
characters : Character[length : Integer_Unsigned] |
font_family : String |
font_style : Font_Style |
font_size : Float |
underline_style : Underline_Style |
x : Long_Float |
y : Long_Float |
z : Long_Float |
horizontal_datum : SRM_Horizontal_Datum_Code |
geodetic_latitude : SRM_Long_Float |
geodetic_longitude : SRM_Long_Float |
x_offset : SRM_Long_Float |
y_offset : SRM_Long_Float |
central_scale_factor : SRM_Long_Float |
x : Long_Float |
y : Long_Float |
z : Long_Float |
horizontal_datum : SRM_Horizontal_Datum_Code |
pole : SRM_PS_Pole |
x_offset : SRM_Long_Float |
y_offset : SRM_Long_Float |
characters : Character[length : Integer_Unsigned] |
x : Long_Float |
y : Long_Float |
horizontal_datum : SRM_Horizontal_Datum_Code |
x_offset : SRM_Long_Float |
y_offset : SRM_Long_Float |
zone : SRM_Byte_Positive |
hemisphere : SRM_Hemisphere |
x : Long_Float |
y : Long_Float |
z : Long_Float |
SEDRIS data types used by the SEDRIS API are not needed to represent a SEDRIS transmittal and, hence, shall not be encoded. This includes all SEDRIS private and function data types.