Documentation extraction and validation

Merge request reports

Loading
+9 −9
Changes for asn/CPM.asn: 9 added lines, 9 removed lines.
Original line number Diff line number Diff line
-- @brief Specification of the Collective Perception Message ETSI TS 103 324
-- Latest version available at @url https://forge.etsi.org/rep/ITS/CPM_TS103324
--! @brief Specification of the Collective Perception Message ETSI TS 103 324
--! Latest version available at @url https://forge.etsi.org/rep/ITS/CPM_TS103324

CPM-PDU-Descriptions {
itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (103324) cpm (1) version1 (1)
@@ -25,11 +25,11 @@ FROM CAM-PDU-Descriptions {itu-t(0) identified-organization(4) etsi(0) itsDomain
MessageSegmentInfo
FROM CPM-CommonDataTypes-Descriptions {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (103324) commonDataTypes (2) version1 (1)}

-- @brief Import Originating Vehicle Container
--! @brief Import Originating Vehicle Container
OriginatingVehicleContainer, OriginatingRSUContainer
FROM CPM-OriginatingStationData-Descriptions {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (103324) originatingStationData (3) version1 (1)}

-- @brief Import Sensor Information Container
--! @brief Import Sensor Information Container
SensorInformationContainer
FROM CPM-SensorInformation-Descriptions {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (103324) sensorInformation (4) version1 (1)}

@@ -39,7 +39,7 @@ FROM CPM-PerceivedObject-Descriptions {itu-t (0) identified-organization (4) ets
FreeSpaceAddendumContainer
FROM CPM-FreeSpaceAddendum-Descriptions {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (103324) freeSpaceAddendum (6) version1 (1)};

-- Information Object Class Definitions
--! Information Object Class Definitions
CPM-STATIONDATA-ID-AND-TYPE ::= CLASS {
    &id     CpmStationDataId UNIQUE,
    &Type
@@ -77,17 +77,17 @@ PerceptionData CPM-CONTAINER-ID-AND-TYPE ::= {
    ...
}

-- ID Assignments for Information Object Classes
-- Assignment for Originating Station Container
--! ID Assignments for Information Object Classes
--! Assignment for Originating Station Container
originatingStationVehicleContainer CpmStationDataId ::= 1
originatingStationRSUContainer CpmStationDataId ::= 2

-- Assignment for Perception Data Container
--! Assignment for Perception Data Container
sensorInformationCpmContainer CpmContainerId ::= 1
perceivedObjectCpmContainer CpmContainerId ::= 2
freeSpaceAdddendumCpmContainer CpmContainerId ::= 3

-- Collective Perception Message
--! Collective Perception Message

/** @brief Collective Perception Message Root
This DF includes DEs for the CPM protocolVersion, the CP message type identifier _messageID_ and
+94 −95
Changes for asn/CPM_CommonDataTypes.asn: 94 added lines, 95 removed lines.
Original line number Diff line number Diff line
@@ -368,10 +368,10 @@ Scaled by 100.
@unit: None
*/
CorrelationRowValue ::= INTEGER {
    full-negative-correlation    (-100),     -- Full negative correlation
    no-correlation               (0),        -- If not correlated or unavailable
    full-negative-correlation    (-100),     --< Full negative correlation
    no-correlation               (0),        --< If not correlated or unavailable
    point-one                    (10),
    full-positive-correlation    (100)       -- Full positive correlation
    full-positive-correlation    (100)       --< Full positive correlation
} (-100..100)

/** @brief Object Class Description
@@ -393,7 +393,6 @@ ObjectClassWithConfidence ::= SEQUENCE {
The class that best describes the detected object. Each class provides optional subclasses.
*/
ObjectClass ::= CHOICE {

    vehicleSubclass     VehicleSubclassType,
    personSubclass      PersonSubclassType,
    animalSubclass      AnimalSubclassType,
@@ -415,12 +414,12 @@ Describes the vertical offset from another point. This is specified in close res
to SAE J2735 _NodeOffsetPointXY_.
*/
NodeOffsetPointZ ::= CHOICE {
    node-Z1 Offset-B10, -- node is within 5.11m of last node
    node-Z2 Offset-B11, -- node is within 10.23m of last node
    node-Z3 Offset-B12, -- node is within 20.47m of last node
    node-Z4 Offset-B13, -- node is within 40.96m of last node
    node-Z5 Offset-B14, -- node is within 81.91m of last node
    node-Z6 Offset-B16  -- node is within 327.67m of last node
    node-Z1 Offset-B10, --< node is within 5.11m of last node
    node-Z2 Offset-B11, --< node is within 10.23m of last node
    node-Z3 Offset-B12, --< node is within 20.47m of last node
    node-Z4 Offset-B13, --< node is within 40.96m of last node
    node-Z5 Offset-B14, --< node is within 81.91m of last node
    node-Z6 Offset-B16  --< node is within 327.67m of last node
}

/** @brief Animal Subclass Type
@@ -428,7 +427,7 @@ Describes the subclass of a detected object for class animal.
@unit n/a
*/
AnimalSubclassType ::= INTEGER {
    unknown             (0) -- the kind of animal is not known
    unknown             (0) --< the kind of animal is not known
} (0..255)

/** @brief Person Subclass Type
@@ -438,18 +437,18 @@ classification provided in Annex 1 of Regulation EU 168/2013.
@unit n/a
*/
PersonSubclassType ::= INTEGER {
    unknown             (0),    -- the vru type for the detected object is unknown
    pedestrian          (1),    -- the detected object is a pedestrian travelling on foot
    personInWheelchair  (2),    -- the detected object is a person travelling in a wheelchair
    cyclist             (3),    -- the detected object is one or multiple persons travelling on
                                -- non-motorized unicycles, bicycles, tricycles or quadricycle
    personWithStroller  (4),    -- the detected object is a person travelling on foot pushing or
                                -- pulling a stroller potentially carrying by one or
                                -- multiple other persons
    personOnSkates      (5),    -- the detected object is a person travelling on skates, skateboards
                                -- or a small electric or foot operated scooter
    personGroup         (6)     -- the detected object is a group of persons with similar
                                -- movement characteristics
    unknown             (0),    --< the vru type for the detected object is unknown
    pedestrian          (1),    --< the detected object is a pedestrian travelling on foot
    personInWheelchair  (2),    --< the detected object is a person travelling in a wheelchair
    cyclist             (3),    --< the detected object is one or multiple persons travelling on
                                --< non-motorized unicycles, bicycles, tricycles or quadricycle
    personWithStroller  (4),    --< the detected object is a person travelling on foot pushing or
                                --< pulling a stroller potentially carrying by one or
                                --< multiple other persons
    personOnSkates      (5),    --< the detected object is a person travelling on skates, skateboards
                                --< or a small electric or foot operated scooter
    personGroup         (6)     --< the detected object is a group of persons with similar
                                --< movement characteristics
} (0..255)

/** @brief Vehicle Subclass Type
@@ -457,29 +456,29 @@ Describes the subclass of a detected object for class vehicle.
@unit n/a
*/
VehicleSubclassType ::= INTEGER {
    unknown             (0),    -- the type of vehicle is unknown
    moped               (1),    -- the detected object is a light motor vehicle with less than four
                                -- wheels as defined in UNECE/TRANS/WP.29/78/Rev.4 class L1, L2
    motorcycle          (2),    -- the detected object is a light motor vehicle with less than four
                                -- wheels as defined in UNECE/TRANS/WP.29/78/Rev.4 class L3, L4, L5, L6, L7
    passengerCar        (3),    -- the detected object is a small passenger car as defined in
                                -- UNECE/TRANS/WP.29/78/Rev.4 class M1
    bus                 (4),    -- the detected object is a large passenger vehicle as defined
                                -- in UNECE/TRANS/WP.29/78/Rev.4 class M2, M3
    lightTruck          (5),    -- the detected object is a light goods vehicle as defined
                                -- in UNECE/TRANS/WP.29/78/Rev.4 class N1
    heavyTruck          (6),    -- the detected object is a heavy goods vehicle as defined
                                -- in UNECE/TRANS/WP.29/78/Rev.4 class N2, N3
    trailer             (7),    -- the detected object is an unpowered vehicle that is intended
                                -- to be towed by a powered vehicle as defined in
                                -- UNECE/TRANS/WP.29/78/Rev.4 class O
    specialVehicles     (8),    -- the detected object is a vehicle which has a special purpose
                                -- other than the above (e.g. moving road works vehicle)
    tram                (9),    -- the detected object is a vehicle running on tracks along
                                -- public streets
    emergencyVehicle    (10),   -- the detected object is a vehicle used in an emergency situation
                                -- such as an ambulance, police car or fire engine
    agricultural        (11)    -- the detected object is a vehicle used for agricultural purposes
    unknown             (0),    --< the type of vehicle is unknown
    moped               (1),    --< the detected object is a light motor vehicle with less than four
                                --< wheels as defined in UNECE/TRANS/WP.29/78/Rev.4 class L1, L2
    motorcycle          (2),    --< the detected object is a light motor vehicle with less than four
                                --< wheels as defined in UNECE/TRANS/WP.29/78/Rev.4 class L3, L4, L5, L6, L7
    passengerCar        (3),    --< the detected object is a small passenger car as defined in
                                --< UNECE/TRANS/WP.29/78/Rev.4 class M1
    bus                 (4),    --< the detected object is a large passenger vehicle as defined
                                --< in UNECE/TRANS/WP.29/78/Rev.4 class M2, M3
    lightTruck          (5),    --< the detected object is a light goods vehicle as defined
                                --< in UNECE/TRANS/WP.29/78/Rev.4 class N1
    heavyTruck          (6),    --< the detected object is a heavy goods vehicle as defined
                                --< in UNECE/TRANS/WP.29/78/Rev.4 class N2, N3
    trailer             (7),    --< the detected object is an unpowered vehicle that is intended
                                --< to be towed by a powered vehicle as defined in
                                --< UNECE/TRANS/WP.29/78/Rev.4 class O
    specialVehicles     (8),    --< the detected object is a vehicle which has a special purpose
                                --< other than the above (e.g. moving road works vehicle)
    tram                (9),    --< the detected object is a vehicle running on tracks along
                                --< public streets
    emergencyVehicle    (10),   --< the detected object is a vehicle used in an emergency situation
                                --< such as an ambulance, police car or fire engine
    agricultural        (11)    --< the detected object is a vehicle used for agricultural purposes
} (0..255)

/** @brief Other Subclass Type
@@ -496,12 +495,12 @@ Describes the confidence value for the type of a detected object.
@unit Percent
*/
ClassConfidence ::= INTEGER {
    unknown             (0),    -- in case the confidence value is unknown but the reported
                                -- classification is still valid.
    unknown             (0),    --< in case the confidence value is unknown but the reported
                                --< classification is still valid.
    onePercent          (1),
    oneHundredPercent   (100),
    unavailable         (101)   -- In case the class confidence value computation is not available
                                -- for this object. Indicates that the class assignment is invalid.
    unavailable         (101)   --< In case the class confidence value computation is not available
                                --< for this object. Indicates that the class assignment is invalid.
} (0..101)

/** @brief WGS 84 Angle Value
@@ -558,10 +557,10 @@ The required confidence level is defined by the corresponding standards applying
AngleConfidence ::= INTEGER {
    zeroPointOneDegree  (1),
    oneDegree           (10),
    outOfRange          (126),  -- if the  accuracy is out of range, i.e. greater than
                                -- 12,5 degrees. A corresponding reported angle value shall be
                                -- considered invalid and cannot be trusted.
    unavailable         (127)   -- if the accuracy information is not available
    outOfRange          (126),  --< if the  accuracy is out of range, i.e. greater than
                                --< 12,5 degrees. A corresponding reported angle value shall be
                                --< considered invalid and cannot be trusted.
    unavailable         (127)   --< if the accuracy information is not available
} (1..127)

/** @brief Angular Speed Confidence
@@ -571,15 +570,15 @@ For correlation computation, maximum interval levels shall be assumed.
@ n/a
*/
AngularSpeedConfidence ::= ENUMERATED {
    degSec-000-01 (0),  -- if the accuracy is equal to or less than 0,01 degree/second
    degSec-000-05 (1),  -- 1 if the accuracy is equal to or less than 0,05 degrees/second
    degSec-000-10 (2),  -- if the accuracy is equal to or less than 0,1 degree/second
    degSec-001-00 (3),  -- 3 if the accuracy is equal to or less than 1 degree/second
    degSec-005-00 (4),  -- if the accuracy is equal to or less than 5 degrees/second
    degSec-010-00 (5),  -- if the accuracy is equal to or less than 10 degrees/second
    degSec-100-00 (6),  -- if the accuracy is equal to or less than 100 degrees/second
    outOfRange (7),     -- if the accuracy is out of range, i.e. greater than 100 degrees/second
    unavailable (8)     -- if the accuracy information is unavailable
    degSec-000-01 (0),  --< if the accuracy is equal to or less than 0,01 degree/second
    degSec-000-05 (1),  --< 1 if the accuracy is equal to or less than 0,05 degrees/second
    degSec-000-10 (2),  --< if the accuracy is equal to or less than 0,1 degree/second
    degSec-001-00 (3),  --< 3 if the accuracy is equal to or less than 1 degree/second
    degSec-005-00 (4),  --< if the accuracy is equal to or less than 5 degrees/second
    degSec-010-00 (5),  --< if the accuracy is equal to or less than 10 degrees/second
    degSec-100-00 (6),  --< if the accuracy is equal to or less than 100 degrees/second
    outOfRange (7),     --< if the accuracy is out of range, i.e. greater than 100 degrees/second
    unavailable (8)     --< if the accuracy information is unavailable
}

/** @brief Angular Acceleration Confidence
@@ -589,15 +588,15 @@ For correlation computation, maximum interval levels shall be assumed.
@ n/a
*/
AngularAccelerationConfidence ::= ENUMERATED {
    degSecSquared-000-01 (0),  -- if the accuracy is equal to or less than 0,01 degree/second^2
    degSecSquared-000-05 (1),  -- 1 if the accuracy is equal to or less than 0,05 degrees/second^2
    degSecSquared-000-10 (2),  -- if the accuracy is equal to or less than 0,1 degree/second^2
    degSecSquared-001-00 (3),  -- 3 if the accuracy is equal to or less than 1 degree/second^2
    degSecSquared-005-00 (4),  -- if the accuracy is equal to or less than 5 degrees/second^2
    degSecSquared-010-00 (5),  -- if the accuracy is equal to or less than 10 degrees/second^2
    degSecSquared-100-00 (6),  -- if the accuracy is equal to or less than 100 degrees/second^2
    outOfRange (7),     -- if the accuracy is out of range, i.e. greater than 100 degrees/second^2
    unavailable (8)     -- if the accuracy information is unavailable
    degSecSquared-000-01 (0),  --< if the accuracy is equal to or less than 0,01 degree/second^2
    degSecSquared-000-05 (1),  --< 1 if the accuracy is equal to or less than 0,05 degrees/second^2
    degSecSquared-000-10 (2),  --< if the accuracy is equal to or less than 0,1 degree/second^2
    degSecSquared-001-00 (3),  --< 3 if the accuracy is equal to or less than 1 degree/second^2
    degSecSquared-005-00 (4),  --< if the accuracy is equal to or less than 5 degrees/second^2
    degSecSquared-010-00 (5),  --< if the accuracy is equal to or less than 10 degrees/second^2
    degSecSquared-100-00 (6),  --< if the accuracy is equal to or less than 100 degrees/second^2
    outOfRange (7),     --< if the accuracy is out of range, i.e. greater than 100 degrees/second^2
    unavailable (8)     --< if the accuracy information is unavailable
}


@@ -627,8 +626,8 @@ Absolute accuracy of measurement to a confidence level of 95%.
DistanceConfidence ::= INTEGER {
    zeroPointZeroOneMeter   (1),
    oneMeter                (100),
    outOfRange              (4094),  -- shall be set if the accuracy is out of range
    unavailable             (4095)   -- shall be set if the accuracy data is unavailable
    outOfRange              (4094),  --< shall be set if the accuracy is out of range
    unavailable             (4095)   --< shall be set if the accuracy data is unavailable
} (0..4095)

/** @brief Dynamic Status
@@ -638,11 +637,11 @@ position.
@unit n/a
*/
DynamicStatus ::= INTEGER {
    dynamic             (0),    -- the object is moving
    hasBeenDynamic      (1),    -- indicates whether an object has been dynamic before, e.g., a car
                                -- stopping at a traffic light
    static              (2)     -- shall be used in case an object is identified to be not moving
                                -- throughout any previous observation
    dynamic             (0),    --< the object is moving
    hasBeenDynamic      (1),    --< indicates whether an object has been dynamic before, e.g., a car
                                --< stopping at a traffic light
    static              (2)     --< shall be used in case an object is identified to be not moving
                                --< throughout any previous observation
} (0..2)

/** @brief Hitch Point Offset
@@ -664,8 +663,8 @@ is not overhanging to the front with respect to the trailer reference point.
@unit 0,1 m
*/
FrontOverhang ::= INTEGER {
    noOverhang          (0),    -- trailer is not overhanging to the front with respect to the
                                -- trailer reference point
    noOverhang          (0),    --< trailer is not overhanging to the front with respect to the
                                --< trailer reference point
    zeroPointOneMeter   (1),
    oneMeter            (10)
} (0..50)
@@ -675,10 +674,10 @@ Confidence indicating that an area is not occupied by a traffic participant or o
@unit n/a
*/
FreeSpaceConfidence ::= INTEGER {
    unknown             (0),    -- if the free space confidence is unknown for the described area
    unknown             (0),    --< if the free space confidence is unknown for the described area
    onePercent          (1),
    oneHundredPercent   (100),
    unavailable         (101)   -- if the confidence could not be computed and does not apply.
    unavailable         (101)   --< if the confidence could not be computed and does not apply.
} (0..101)

/** @brief Longitudinal Lane Position Value
@@ -697,8 +696,8 @@ Absolute accuracy of longitudinal lane position measurement to a confidence leve
LongitudinalLanePositionConfidence ::= INTEGER {
    zeroPointZeroOneMeter   (1),
    oneMeter                (100),
    outOfRange              (101),  -- shall be set if the accuracy is out of range
    unavailable             (102)   -- shall be set if the accuracy data is unavailable
    outOfRange              (101),  --< shall be set if the accuracy is out of range
    unavailable             (102)   --< shall be set if the accuracy data is unavailable
} (0..102)

/** @brief Object Age
@@ -708,7 +707,7 @@ disseminating station.
*/
ObjectAge ::= INTEGER {
    oneMiliSec              (1),
    moreThan1Point5Second   (1500)  -- indicates that the object has been observed for more than 1.5s.
    moreThan1Point5Second   (1500)  --< indicates that the object has been observed for more than 1.5s.
} (0..1500)

/** @brief Object Confidence
@@ -718,9 +717,9 @@ on the computation.
@unit n/a
*/
ObjectConfidence ::= INTEGER {
    noConfidence        (0),    -- No confidence in detected object, e.g. for "ghost"-objects or
                                -- if confidence could not be computed
    fullConfidence      (15)    -- Full confidence in detected object
    noConfidence        (0),    --< No confidence in detected object, e.g. for "ghost"-objects or
                                --< if confidence could not be computed
    fullConfidence      (15)    --< Full confidence in detected object
} (0..15)

/** @brief Object Dimension Value
@@ -846,10 +845,10 @@ SensorType ::= INTEGER {
    nightvision     (5),
    ultrasonic      (6),
    pmd             (7),
    fusion          (8),    -- object information provided from sensor data fusion system
    fusion          (8),    --< object information provided from sensor data fusion system
    inductionloop   (9),
    sphericalCamera (10),
    itssaggregation (11)    -- object information gathered from other received ITS messages
    itssaggregation (11)    --< object information gathered from other received ITS messages
} (0..15)

/** @brief Segment Count
@@ -864,11 +863,11 @@ Value of a speed component.
@unit 0,01 m/s
*/
SpeedValueExtended ::= INTEGER {
    negativeSpeedMaximum   (-16383), -- shall be set for values equal to or smaller than -163,83 m/s
    negativeSpeedMaximum   (-16383), --< shall be set for values equal to or smaller than -163,83 m/s
    standstill             (0),
    oneCentimeterPerSec    (1),
    speedMaximum           (16382), -- shall be set for values equal to or greater than 163,82 m/s
    unavailable            (16383)  -- shall be set if information is not available
    speedMaximum           (16382), --< shall be set for values equal to or greater than 163,82 m/s
    unavailable            (16383)  --< shall be set if information is not available
} (-16383..16383)

/** @brief Acceleration Value
@@ -878,7 +877,7 @@ Value of an acceleration component.
AccelerationValue ::= INTEGER {
    pointOneMeterPerSecSquared          (1),
    minusPointOneMeterPerSecSquared (-1),
    unavailable                                     (161)  -- shall be set if information is not available
    unavailable                                     (161)  --< shall be set if information is not available
} (-160 .. 161)

/** @brief Time of Measurement
+1 −1
Changes for asn/SensorInformation.asn: 1 added line, 1 removed line.
Original line number Diff line number Diff line
@@ -100,7 +100,7 @@ VehicleSensor ::= SEQUENCE {
    ...
}

-- @brief Vehicle Sensor Property List
--! @brief Vehicle Sensor Property List
VehicleSensorPropertyList ::= SEQUENCE SIZE(1..10) OF VehicleSensorProperties

/** @brief Vehicle Sensor Properties
+258 −0
Changes for docs/CAM-PDU-Descriptions.md: 258 added lines, 0 removed lines.
Original line number Diff line number Diff line
# ASN.1 module CAM-PDU-Descriptions
 OID: _{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (302637) cam (2) version (2) }_

## Imports:
 * **[ITS-Container](ITS-Container.md)** *{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) version (2) }*<br/>

## Data Elements:


```asn1
CAM ::= SEQUENCE {
	header ItsPduHeader,
	cam CoopAwareness
}
```

### <a name="CoopAwareness"></a>CoopAwareness

Fields:
* generationDeltaTime [**GenerationDeltaTime**](CAM-PDU-Descriptions.md#GenerationDeltaTime) <br>
* camParameters [**CamParameters**](#CamParameters) <br>
```asn1
CoopAwareness ::= SEQUENCE {
	generationDeltaTime GenerationDeltaTime,
	camParameters CamParameters
}
```

### <a name="CamParameters"></a>CamParameters

Fields:
* basicContainer [**BasicContainer**](#BasicContainer) <br>
* highFrequencyContainer [**HighFrequencyContainer**](#HighFrequencyContainer) <br>
* lowFrequencyContainer [**LowFrequencyContainer**](#LowFrequencyContainer)  OPTIONAL<br>
* specialVehicleContainer [**SpecialVehicleContainer**](#SpecialVehicleContainer)  OPTIONAL<br>
```asn1
CamParameters ::= SEQUENCE {
	basicContainer BasicContainer,
	highFrequencyContainer HighFrequencyContainer,
	lowFrequencyContainer LowFrequencyContainer OPTIONAL,
	specialVehicleContainer SpecialVehicleContainer OPTIONAL,
	...
}
```

### <a name="HighFrequencyContainer"></a>HighFrequencyContainer

Fields:
* basicVehicleContainerHighFrequency [**BasicVehicleContainerHighFrequency**](#BasicVehicleContainerHighFrequency) <br>
* rsuContainerHighFrequency [**RSUContainerHighFrequency**](#RSUContainerHighFrequency) <br>
```asn1
HighFrequencyContainer ::= CHOICE {
	basicVehicleContainerHighFrequency BasicVehicleContainerHighFrequency,
	rsuContainerHighFrequency RSUContainerHighFrequency,
	...
}
```



```asn1
LowFrequencyContainer ::= CHOICE {
  basicVehicleContainerLowFrequency BasicVehicleContainerLowFrequency,
	...
}
```

### <a name="SpecialVehicleContainer"></a>SpecialVehicleContainer

Fields:
* publicTransportContainer [**PublicTransportContainer**](#PublicTransportContainer) <br>
* specialTransportContainer [**SpecialTransportContainer**](#SpecialTransportContainer) <br>
* dangerousGoodsContainer [**DangerousGoodsContainer**](#DangerousGoodsContainer) <br>
* roadWorksContainerBasic [**RoadWorksContainerBasic**](#RoadWorksContainerBasic) <br>
* rescueContainer [**RescueContainer**](#RescueContainer) <br>
* emergencyContainer [**EmergencyContainer**](#EmergencyContainer) <br>
* safetyCarContainer [**SafetyCarContainer**](#SafetyCarContainer) <br>
```asn1
SpecialVehicleContainer ::= CHOICE {
	publicTransportContainer PublicTransportContainer,
	specialTransportContainer SpecialTransportContainer,
	dangerousGoodsContainer DangerousGoodsContainer,
	roadWorksContainerBasic RoadWorksContainerBasic,
	rescueContainer RescueContainer,
	emergencyContainer EmergencyContainer,
	safetyCarContainer SafetyCarContainer,
	...
}
```

### <a name="BasicContainer"></a>BasicContainer

Fields:
* stationType [**StationType**](ITS-Container.md#StationType) <br>
* referencePosition [**ReferencePosition**](ITS-Container.md#ReferencePosition) <br>
```asn1
BasicContainer ::= SEQUENCE {
	stationType StationType,
	referencePosition ReferencePosition,
	...
}
```

### <a name="BasicVehicleContainerHighFrequency"></a>BasicVehicleContainerHighFrequency

Fields:
* heading [**Heading**](ITS-Container.md#Heading) <br>
* speed [**Speed**](ITS-Container.md#Speed) <br>
* driveDirection [**DriveDirection**](ITS-Container.md#DriveDirection) <br>
* vehicleLength [**VehicleLength**](ITS-Container.md#VehicleLength) <br>
* vehicleWidth [**VehicleWidth**](ITS-Container.md#VehicleWidth) <br>
* longitudinalAcceleration [**LongitudinalAcceleration**](ITS-Container.md#LongitudinalAcceleration) <br>
* curvature [**Curvature**](ITS-Container.md#Curvature) <br>
* curvatureCalculationMode [**CurvatureCalculationMode**](ITS-Container.md#CurvatureCalculationMode) <br>
* yawRate [**YawRate**](ITS-Container.md#YawRate) <br>
* accelerationControl [**AccelerationControl**](ITS-Container.md#AccelerationControl)  OPTIONAL<br>
* lanePosition [**LanePosition**](ITS-Container.md#LanePosition)  OPTIONAL<br>
* steeringWheelAngle [**SteeringWheelAngle**](ITS-Container.md#SteeringWheelAngle)  OPTIONAL<br>
* lateralAcceleration [**LateralAcceleration**](ITS-Container.md#LateralAcceleration)  OPTIONAL<br>
* verticalAcceleration [**VerticalAcceleration**](ITS-Container.md#VerticalAcceleration)  OPTIONAL<br>
* performanceClass [**PerformanceClass**](ITS-Container.md#PerformanceClass)  OPTIONAL<br>
* cenDsrcTollingZone [**CenDsrcTollingZone**](ITS-Container.md#CenDsrcTollingZone)  OPTIONAL<br>
```asn1
BasicVehicleContainerHighFrequency ::= SEQUENCE {
	heading Heading,
	speed Speed,
	driveDirection DriveDirection,
	vehicleLength VehicleLength,
	vehicleWidth VehicleWidth,
	longitudinalAcceleration LongitudinalAcceleration,
	curvature Curvature,
	curvatureCalculationMode CurvatureCalculationMode,
	yawRate YawRate,
	accelerationControl AccelerationControl OPTIONAL,
	lanePosition LanePosition OPTIONAL,
	steeringWheelAngle SteeringWheelAngle OPTIONAL,
	lateralAcceleration LateralAcceleration OPTIONAL,
	verticalAcceleration VerticalAcceleration OPTIONAL,
	performanceClass PerformanceClass OPTIONAL,
	cenDsrcTollingZone CenDsrcTollingZone OPTIONAL
}
```

### <a name="BasicVehicleContainerLowFrequency"></a>BasicVehicleContainerLowFrequency

Fields:
* vehicleRole [**VehicleRole**](ITS-Container.md#VehicleRole) <br>
* exteriorLights [**ExteriorLights**](ITS-Container.md#ExteriorLights) <br>
* pathHistory [**PathHistory**](ITS-Container.md#PathHistory) <br>
```asn1
BasicVehicleContainerLowFrequency  ::= SEQUENCE {
	vehicleRole VehicleRole,
	exteriorLights ExteriorLights,
	pathHistory PathHistory
}
```

### <a name="PublicTransportContainer"></a>PublicTransportContainer

Fields:
* embarkationStatus [**EmbarkationStatus**](ITS-Container.md#EmbarkationStatus) <br>
* ptActivation [**PtActivation**](ITS-Container.md#PtActivation)  OPTIONAL<br>
```asn1
PublicTransportContainer ::= SEQUENCE {
	embarkationStatus EmbarkationStatus,
	ptActivation PtActivation OPTIONAL
}
```

### <a name="SpecialTransportContainer"></a>SpecialTransportContainer

Fields:
* specialTransportType [**SpecialTransportType**](ITS-Container.md#SpecialTransportType) <br>
* lightBarSirenInUse [**LightBarSirenInUse**](ITS-Container.md#LightBarSirenInUse) <br>
```asn1
SpecialTransportContainer ::= SEQUENCE {
	specialTransportType SpecialTransportType,
	lightBarSirenInUse LightBarSirenInUse
}
```



```asn1
DangerousGoodsContainer ::= SEQUENCE {
  dangerousGoodsBasic DangerousGoodsBasic
 }
```



```asn1
RoadWorksContainerBasic ::= SEQUENCE {
  roadworksSubCauseCode RoadworksSubCauseCode OPTIONAL,
  lightBarSirenInUse LightBarSirenInUse,
  closedLanes ClosedLanes OPTIONAL
 }
```

### <a name="RescueContainer"></a>RescueContainer

Fields:
* lightBarSirenInUse [**LightBarSirenInUse**](ITS-Container.md#LightBarSirenInUse) <br>
```asn1
RescueContainer ::= SEQUENCE {
	lightBarSirenInUse LightBarSirenInUse
}
```

### <a name="EmergencyContainer"></a>EmergencyContainer

Fields:
* lightBarSirenInUse [**LightBarSirenInUse**](ITS-Container.md#LightBarSirenInUse) <br>
* incidentIndication [**CauseCode**](ITS-Container.md#CauseCode)  OPTIONAL<br>
* emergencyPriority [**EmergencyPriority**](ITS-Container.md#EmergencyPriority)  OPTIONAL<br>
```asn1
EmergencyContainer ::= SEQUENCE {
	lightBarSirenInUse LightBarSirenInUse,
	incidentIndication CauseCode OPTIONAL,
	emergencyPriority EmergencyPriority OPTIONAL
}
```

### <a name="SafetyCarContainer"></a>SafetyCarContainer

Fields:
* lightBarSirenInUse [**LightBarSirenInUse**](ITS-Container.md#LightBarSirenInUse) <br>
* incidentIndication [**CauseCode**](ITS-Container.md#CauseCode)  OPTIONAL<br>
* trafficRule [**TrafficRule**](ITS-Container.md#TrafficRule)  OPTIONAL<br>
* speedLimit [**SpeedLimit**](ITS-Container.md#SpeedLimit)  OPTIONAL<br>
```asn1
SafetyCarContainer ::= SEQUENCE {
	lightBarSirenInUse LightBarSirenInUse,
	incidentIndication CauseCode OPTIONAL,
	trafficRule TrafficRule OPTIONAL,
	speedLimit SpeedLimit OPTIONAL
}
```

### <a name="RSUContainerHighFrequency"></a>RSUContainerHighFrequency

Fields:
* protectedCommunicationZonesRSU [**ProtectedCommunicationZonesRSU**](ITS-Container.md#ProtectedCommunicationZonesRSU)  OPTIONAL<br>
```asn1
RSUContainerHighFrequency ::= SEQUENCE {
	protectedCommunicationZonesRSU ProtectedCommunicationZonesRSU OPTIONAL,
	...
}
```

### <a name="GenerationDeltaTime"></a>GenerationDeltaTime

```asn1
GenerationDeltaTime ::= INTEGER { oneMilliSec(1) } (0..65535)
```


+1582 −0
Changes for docs/CPM-CommonDataTypes-Descriptions.md: 1582 added lines, 0 removed lines.
Original line number Diff line number Diff line
# ASN.1 module CPM-CommonDataTypes-Descriptions
 OID: _{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (103324) commonDataTypes (2) version1 (1) }_

## Imports:
 * **[ITS-Container](ITS-Container.md)** *{itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) version (2)}*<br/>
   Include ETSI TS 102 894-2 v1.3.1
   Include references from https://forge.etsi.org/rep/ITS/asn1/cdd_ts102894_2/blob/v1.3.1/ITS-Container.asn

 * **[DSRC](DSRC.md)** *{iso (1) standard (0) signalizedIntersection (19091) profilec(2) dsrc (2) version2 (2)}*<br/>
   Include ISO 19091
   Include references from https://standards.iso.org/iso/ts/19091/ed-2/en/ISO-TS-19091-addgrp-C-2018.asn

## Data Elements:
### <a name="AreaCircular"></a>Area Circular

Describes a circular area. The circle is centred about the reference point of the ITS-S or about
the nodeCenterPoint (if provided). The DF shall include the following information:


Fields:
* nodeCenterPoint [**OffsetPoint**](#OffsetPoint)  OPTIONAL<br>
   
   Optional offset point about which the circle is centred with respect to the reference
   position of the ITS-S.
   
* radius [**Radius**](#Radius) <br>
   
   The radius of the circular area
   
```asn1
AreaCircular ::= SEQUENCE {
        nodeCenterPoint      OffsetPoint OPTIONAL,
        radius               Radius
}
```

### <a name="AreaEllipse"></a>Area Ellipse

Describes an elliptical area. The ellipse is centred about the reference point of the ITS-S or
about the nodeCenterPoint (if provided).


Fields:
* nodeCenterPoint [**OffsetPoint**](#OffsetPoint)  OPTIONAL<br>
   
   Optional offset point about which the ellipse is centred with respect to the reference
   position of the ITS-S.
   
* semiMinorRangeLength [**SemiRangeLength**](#SemiRangeLength) <br>
   
   Major radius of the ellipse.
   
* semiMajorRangeLength [**SemiRangeLength**](#SemiRangeLength) <br>
   
   Minor radius of the ellipse.
   
* semiMajorRangeOrientation [**WGS84AngleValue**](#WGS84AngleValue) <br>
   
   Orientation of the semiMajorRangeLength of the ellipse in the WGS84 coordinate system.
   
* semiHeight [**SemiRangeLength**](#SemiRangeLength)  OPTIONAL<br>
```asn1
AreaEllipse  ::= SEQUENCE {
        nodeCenterPoint             OffsetPoint OPTIONAL,
        semiMinorRangeLength        SemiRangeLength,
        semiMajorRangeLength        SemiRangeLength,
        semiMajorRangeOrientation   WGS84AngleValue,
    semiHeight                  SemiRangeLength OPTIONAL
}
```

### <a name="AreaRectangle"></a>Area Rectangle

Describes a rectangular area. The rectangle is centred about the reference point of the ITS-S or
about the nodeCenterPoint (if provided).


Fields:
* nodeCenterPoint [**OffsetPoint**](#OffsetPoint)  OPTIONAL<br>
   
   Optional offset point about which the rectangle is centred with respect to the reference
   position of the ITS-S.
   
* semiMajorRangeLength [**SemiRangeLength**](#SemiRangeLength) <br>
   
   Half length of the rectangle.
   
* semiMinorRangeLength [**SemiRangeLength**](#SemiRangeLength) <br>
   
   Half width of the rectangle.
   
* semiMajorRangeOrientation [**WGS84AngleValue**](#WGS84AngleValue) <br>
   
   Orientation of the semiMajorRangeLength of the rectangle in the WGS84 coordinate system.
   
* semiHeight [**SemiRangeLength**](#SemiRangeLength)  OPTIONAL<br>
```asn1
AreaRectangle ::= SEQUENCE {
        nodeCenterPoint             OffsetPoint OPTIONAL,
        semiMajorRangeLength        SemiRangeLength,
        semiMinorRangeLength        SemiRangeLength,
        semiMajorRangeOrientation   WGS84AngleValue,
    semiHeight                  SemiRangeLength OPTIONAL
}
```

### <a name="AreaPolygon"></a>Area Polygon

Describes a polygonal area constructed by connecting the offset points in the sequence
provided. The last point shall be connected with the first point to close the polygon.


Fields:
* polyPointList [**PolyPointList**](#PolyPointList) <br>
```asn1
AreaPolygon ::= SEQUENCE {
    polyPointList   PolyPointList
}
```

### <a name="PolyPointList"></a>Poly Point List

Describes a list of points representing a polygon. The last point shall be connected with the
first point to close the polygon.


```asn1
PolyPointList ::= SEQUENCE (SIZE(3..16, ...)) OF OffsetPoint
```

### <a name="AreaRadial"></a>Area Radial

Describes a radial area scanned by a stationary sensor. The triangular or cone-shaped area is
constructed by sweeping the provided range about the reference point of the ITS-S or about the
point described by the sensor offset point (if provided) with respect to the reference point
between a horizontal start and a horizontal end angle in positive angular direction of the WGS84
coordinate system. A vertical opening angle may be provided in a Cartesian coordinate system with
the x-axis located in the North-East plane of the WGS84 coordinate system. The sensor height may
be provided to reflect characteristics of sensors mounted at an altitude (e.g. sensors mounted
above intersections).


Fields:
* range [**Range**](#Range) <br>
   
   The radial range of the sensor from the reference point or sensor point offset.
   
* stationaryHorizontalOpeningAngleStart [**WGS84AngleValue**](#WGS84AngleValue) <br>
   
   The orientation indicating the beginning of the stationary sensor’s horizontal opening angle
   in positive angular direction with respect to the WGS84 coordinate system.
   
* stationaryHorizontalOpeningAngleEnd [**WGS84AngleValue**](#WGS84AngleValue) <br>
   
   The orientation indicating the end of the stationary sensor’s horizontal opening angle in
   positive angular direction with respect to the WGS84 coordinate system.
   
* verticalOpeningAngleStart [**CartesianAngleValue**](#CartesianAngleValue)  OPTIONAL<br>
   
   The orientation indicating the beginning of the stationary sensor’s vertical opening angle in
   positive angular direction of a Cartesian coordinate system with its x-axis located in the
   north-east plane of the WGS84 coordinate system.
   
* verticalOpeningAngleEnd [**CartesianAngleValue**](#CartesianAngleValue)  OPTIONAL<br>
   
   The orientation indicating the end of the stationary sensor’s vertical opening angle in
   positive angular direction of a Cartesian coordinate system with its x-axis located in the
   north-east plane of the WGS84 coordinate system.
   
* sensorPositionOffset [**OffsetPoint**](#OffsetPoint)  OPTIONAL<br>
   
   The offset of the mounting poinf of this sensor from the station's @see ReferencePosition.
   
* sensorHeight [**SensorHeight**](#SensorHeight)  OPTIONAL<br>
   
   The height of the sensor mounting point.
   
```asn1
AreaRadial ::= SEQUENCE {
        range                                   Range,
        stationaryHorizontalOpeningAngleStart   WGS84AngleValue,
        stationaryHorizontalOpeningAngleEnd     WGS84AngleValue,
        verticalOpeningAngleStart               CartesianAngleValue OPTIONAL,
        verticalOpeningAngleEnd                 CartesianAngleValue OPTIONAL,
        sensorPositionOffset                    OffsetPoint OPTIONAL,
        sensorHeight                            SensorHeight OPTIONAL,
    ...
}
```

### <a name="ObjectDistance"></a>Object Distance With Confidence

A general Data Frame to describe a distance component along with a confidence with a
predefined confidence level of 95% for the component.


Fields:
* value [**DistanceValue**](#DistanceValue) <br>
   
   The distance value which can be estimated as the mean of the current distribution.
   
* confidence [**DistanceConfidence**](#DistanceConfidence) <br>
   
   The distance accuracy associated to the provided value at a predefined confidence level
   of 95% for the component.
   
```asn1
ObjectDistance ::= SEQUENCE {
        value        DistanceValue,
        confidence   DistanceConfidence
}
```

### <a name="ObjectDimension"></a>Object Dimension

A general Data Frame to describe a dimension of an object along with a confidence with a
predefined confidence level of 95% for the component.


Fields:
* value [**ObjectDimensionValue**](#ObjectDimensionValue) <br>
   
   The object dimension value which can be estimated as the mean of the current distribution.
   
* confidence [**ObjectDimensionConfidence**](#ObjectDimensionConfidence) <br>
   
   The dimension accuracy associated to the provided value at a predefined confidence level
   of 95% for the component.
   
```asn1
ObjectDimension ::= SEQUENCE {
        value       ObjectDimensionValue,
        confidence  ObjectDimensionConfidence
}
```

### <a name="CartesianAngle"></a>Cartesian Angle

A general Data Frame to describe an angle component along with a confidence with a predefined
confidence level of 95% for the component in a Cartesian coordinate system.


Fields:
* value [**CartesianAngleValue**](#CartesianAngleValue) <br>
   
   The angle value which can be estimated as the mean of the current distribution.
   
* confidence [**AngleConfidence**](#AngleConfidence) <br>
   
   The accuracy associated to the provided value at a predefined confidence level
   of 95% for the component.
   
```asn1
CartesianAngle ::= SEQUENCE {
        value       CartesianAngleValue,
        confidence  AngleConfidence
}
```

### <a name="CartesianAngularSpeed"></a>CartesianAngularSpeed

A general Data Frame to describe an angular speed component along with a confidence with a predefined
confidence level of 95% for the component in a Cartesian coordinate system.


Fields:
* value [**CartesianAngularSpeedValue**](#CartesianAngularSpeedValue) <br>
   
   The angular speed (rate) value which can be estimated as the mean of the current distribution.
   
* confidence [**AngularSpeedConfidence**](#AngularSpeedConfidence) <br>
   
   The accuracy associated to the provided value at a predefined confidence level
   of 95% for the component.
   
```asn1
CartesianAngularSpeed ::= SEQUENCE {
        value       CartesianAngularSpeedValue,
        confidence  AngularSpeedConfidence
}
```

### <a name="CartesianAngularAcceleration"></a>CartesianAngularAcceleration

A general Data Frame to describe an angular acceleration component along with a confidence with a predefined
confidence level of 95% for the component in a Cartesian coordinate system.


Fields:
* value [**CartesianAngularAccelerationValue**](#CartesianAngularAccelerationValue) <br>
   
   The angular acceleration value which can be estimated as the mean of the current distribution.
   
* confidence [**AngularAccelerationConfidence**](#AngularAccelerationConfidence) <br>
   
   The accuracy associated to the provided value at a predefined confidence level
   of 95% for the component.
   
```asn1
CartesianAngularAcceleration ::= SEQUENCE {
        value       CartesianAngularAccelerationValue,
        confidence  AngularAccelerationConfidence
}
```

### <a name="WGS84Angle"></a>WGS 84 Angle

A general Data Frame to describe an angular component along with a confidence with a predefined
confidence level of 95% for the component in the WGS84 coordinate system.


Fields:
* value [**WGS84AngleValue**](#WGS84AngleValue) <br>
   
   The angle value which can be estimated as the mean of the current distribution.
   
* confidence [**AngleConfidence**](#AngleConfidence) <br>
   
   The accuracy associated to the provided value at a predefined confidence level
   of 95% for the component.
   
```asn1
WGS84Angle ::= SEQUENCE {
        value       WGS84AngleValue,
        confidence  AngleConfidence
}
```

### <a name="SpeedExtended"></a>Speed Extended

A general Data Frame to describe a speed component along with a confidence with a predefined
confidence level of 95% for the component.


Fields:
* value [**SpeedValueExtended**](#SpeedValueExtended) <br>
   
   The speed value which can be estimated as the mean of the current distribution.
   
* confidence [**SpeedConfidence**](ITS-Container.md#SpeedConfidence) <br>
   
   The accuracy associated to the provided value at a predefined confidence level
   of 95% for the component.
   
```asn1
SpeedExtended ::= SEQUENCE {
        value       SpeedValueExtended,
        confidence  SpeedConfidence
}
```

### <a name="Acceleration"></a>Acceleration

A general Data Frame to describe an acceleration component along with a confidence with a predefined
confidence level of 95% for the component.


Fields:
* value [**AccelerationValue**](#AccelerationValue) <br>
   
   The acceleration value which can be estimated as the mean of the current distribution.
   
* confidence [**AccelerationConfidence**](ITS-Container.md#AccelerationConfidence) <br>
   
   The accuracy associated to the provided value at a predefined confidence level
   of 95% for the component.
   
```asn1
Acceleration ::= SEQUENCE {
        value       AccelerationValue,
        confidence  AccelerationConfidence
}
```

### <a name="SensorIdList"></a>Sensor ID List

List of sensor IDs.


```asn1
SensorIdList ::= SEQUENCE SIZE(1..128, ...) OF Identifier
```

### <a name="TrailerDataContainer"></a>Trailer Data Container

List of information about attached trailers.


```asn1
TrailerDataContainer ::= SEQUENCE SIZE(1..2) OF TrailerData
```

### <a name="TrailerData"></a>Trailer Data

Provides detailed information about the dimensions and orientation of an attached trailer.


Fields:
* refPointId [**RefPointId**](#RefPointId) <br>
* hitchPointOffset [**HitchPointOffset**](#HitchPointOffset) <br>
* frontOverhang [**FrontOverhang**](#FrontOverhang) <br>
* rearOverhang [**RearOverhang**](#RearOverhang) <br>
* trailerWidth [**VehicleWidth**](ITS-Container.md#VehicleWidth)  OPTIONAL<br>
* hitchAngle [**CartesianAngle**](#CartesianAngle)  OPTIONAL<br>
```asn1
TrailerData ::= SEQUENCE {
    refPointId          RefPointId,
    hitchPointOffset    HitchPointOffset,
    frontOverhang       FrontOverhang,
    rearOverhang        RearOverhang,
    trailerWidth        VehicleWidth OPTIONAL,
    hitchAngle          CartesianAngle OPTIONAL,
    ...
}
```

### <a name="MatchedPosition"></a>Matched Position

Indicates the position of the object mapped on the intersection topology description transmitted
in MAP messages.


Fields:
* laneID [**LaneID**](DSRC.md#LaneID)  OPTIONAL<br>
   
   Conveys an assigned index that is unique within the intersection with InterSectionReferenceId
   of the OriginatingRSUContainer. It shall be presented as specified in
   Clause 7.88 of SAE J2735.
   
* longitudinalLanePosition [**LongitudinalLanePosition**](#LongitudinalLanePosition)  OPTIONAL<br>
   
   Indicates the longitudinal offset of the map-matched position of the object along the lane.
   
```asn1
MatchedPosition ::= SEQUENCE {
        laneID                      LaneID OPTIONAL,
        longitudinalLanePosition    LongitudinalLanePosition OPTIONAL,
    ...
}
```

### <a name="LongitudinalLanePosition"></a>Longitudinal Lane Position

Estimated position along the longitudinal length of a particular lane. A lane is provided by
a corresponding MAP message.


Fields:
* longitudinalLanePositionValue [**LongitudinalLanePositionValue**](#LongitudinalLanePositionValue) <br>
   
   The mean value of the longitudinal position within a particular length.
   
* longitudinalLanePositionConfidence [**LongitudinalLanePositionConfidence**](#LongitudinalLanePositionConfidence) <br>
   
   The confidence associated to the provided value.
   
```asn1
LongitudinalLanePosition ::= SEQUENCE {
        longitudinalLanePositionValue        LongitudinalLanePositionValue,
        longitudinalLanePositionConfidence   LongitudinalLanePositionConfidence
}
```

### <a name="MessageSegmentInfo"></a>Message Segment Information

Information about segmented CPM and the number of generated segments.


Fields:
* totalMsgSegments [**SegmentCount**](#SegmentCount) <br>
   
   The total number of messages required on the transmitter side to distribute the information
   to several messages.
   
* thisSegmentNum [**SegmentCount**](#SegmentCount) <br>
   
   Indicates the number of the received message out of the total number of messages
   used to realize segmentation.
   
```asn1
MessageSegmentInfo ::= SEQUENCE {
        totalMsgSegments    SegmentCount,
        thisSegmentNum      SegmentCount
}
```

### <a name="LowerTriangularPositiveSemidefiniteMatrix"></a>Lower Triangular Positive Semi-Definite Matrix

A general data frame to express the elements of a lower triangular positive semi-definite matrix, not
including the main diagonal elements of the matrix.
Given a matrix "A" of size n x n, the number of columns to be included in the lower triangular matrix is k=n-1.


```asn1
LowerTriangularPositiveSemidefiniteMatrix ::= SEQUENCE SIZE (1..17) OF CorrelationColumn
```

### <a name="CorrelationColumn"></a>Correlation Column

The column of the lower triangular positive semi-definite matrix consists of correlation row values.
Given a matrix "A" of size n x n, the number of columns to be included in the lower triangular matrix is k=n-1.
Each column "i" of the lower triangular then contains k-(i-1) values, where "i" refers to the column number count
starting at 1 from the left.


```asn1
CorrelationColumn ::= SEQUENCE SIZE (1..17) OF CorrelationRowValue
```

### <a name="CorrelationRowValue"></a>Correlation Row Value

The Bravais-Pearson correlation value for each cell of the lower triangular correlation matrix.
Scaled by 100.
@unit: None


Values:
* **full-negative-correlation** (-100)<br>
Full negative correlation
* **no-correlation** (0)<br>
If not correlated or unavailable
* **point-one** (10)<br>
* **full-positive-correlation** (100)       <br>
Full positive correlation
```asn1
CorrelationRowValue ::= INTEGER {
    full-negative-correlation    (-100),     
    no-correlation               (0),        
    point-one                    (10),
    full-positive-correlation    (100)       
} (-100..100)
```

### <a name="ObjectClassDescription"></a>Object Class Description

A list of object classes.


```asn1
ObjectClassDescription ::= SEQUENCE (SIZE(1..8)) OF ObjectClassWithConfidence
```

### <a name="ObjectClassWithConfidence"></a>Object Class with Confidence

Describes the classification of a detected object. The object can be classified into one of four
categories: vehicle, person, animal and other. The classification is provided with a
confidence indication.


Fields:
* objectClass [**ObjectClass**](#ObjectClass) <br>
* confidence [**ClassConfidence**](#ClassConfidence) <br>
```asn1
ObjectClassWithConfidence ::= SEQUENCE {
    objectClass ObjectClass,
    confidence  ClassConfidence
}
```

### <a name="ObjectClass"></a>Object Class

The class that best describes the detected object. Each class provides optional subclasses.


Fields:
* vehicleSubclass [**VehicleSubclassType**](#VehicleSubclassType) <br>
* personSubclass [**PersonSubclassType**](#PersonSubclassType) <br>
* animalSubclass [**AnimalSubclassType**](#AnimalSubclassType) <br>
* otherSubclass [**OtherSubclassType**](#OtherSubclassType) <br>
```asn1
ObjectClass ::= CHOICE {
    vehicleSubclass     VehicleSubclassType,
    personSubclass      PersonSubclassType,
    animalSubclass      AnimalSubclassType,
    otherSubclass       OtherSubclassType,
    ...
}
```

### <a name="OffsetPoint"></a>Offset Point

Describes an offset position in a two- or three-dimensional plane as imported from
CEN ISO/TS 19091. Excludes the node-LatLon DF and regional DF defined therein.


Fields:
* nodeOffsetPointxy [**NodeOffsetPointXY**](DSRC.md#NodeOffsetPointXY)  (WITH COMPONENTS {..., node-LatLon ABSENT, regional ABSENT})<br>
* nodeOffsetPointZ [**NodeOffsetPointZ**](#NodeOffsetPointZ)  OPTIONAL<br>
```asn1
OffsetPoint ::= SEQUENCE{
    nodeOffsetPointxy   NodeOffsetPointXY (WITH COMPONENTS {..., node-LatLon ABSENT, regional ABSENT}),
    nodeOffsetPointZ    NodeOffsetPointZ OPTIONAL
}
```

### <a name="NodeOffsetPointZ"></a>Node Offset Point in Z-direction

Describes the vertical offset from another point. This is specified in close resemblance
to SAE J2735 _NodeOffsetPointXY_.


Fields:
* node-Z1 [**Offset-B10**](DSRC.md#Offset-B10) <br>
node is within 5.11m of last node
* node-Z2 [**Offset-B11**](DSRC.md#Offset-B11) <br>
node is within 10.23m of last node
* node-Z3 [**Offset-B12**](DSRC.md#Offset-B12) <br>
node is within 20.47m of last node
* node-Z4 [**Offset-B13**](DSRC.md#Offset-B13) <br>
node is within 40.96m of last node
* node-Z5 [**Offset-B14**](DSRC.md#Offset-B14) <br>
node is within 81.91m of last node
* node-Z6 [**Offset-B16**](DSRC.md#Offset-B16)   <br>
node is within 327.67m of last node
```asn1
NodeOffsetPointZ ::= CHOICE {
    node-Z1 Offset-B10, 
    node-Z2 Offset-B11, 
    node-Z3 Offset-B12, 
    node-Z4 Offset-B13, 
    node-Z5 Offset-B14, 
    node-Z6 Offset-B16  
}
```

### <a name="AnimalSubclassType"></a>Animal Subclass Type

Describes the subclass of a detected object for class animal.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _n/a_

Values:
* **unknown** (0) <br>
the kind of animal is not known
```asn1
AnimalSubclassType ::= INTEGER {
    unknown             (0) 
} (0..255)
```

### <a name="PersonSubclassType"></a>Person Subclass Type

Describes the subclass of a detected object for class persons. Persons are a subset of the
vulnerable road users as defined in Section 4.2 of ETSI TR 103 300-2 as well as in the
classification provided in Annex 1 of Regulation EU 168/2013.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _n/a_

Values:
* **unknown** (0)<br>
the vru type for the detected object is unknown
* **pedestrian** (1)<br>
the detected object is a pedestrian travelling on foot
* **personInWheelchair** (2)<br>
the detected object is a person travelling in a wheelchair
* **cyclist** (3)<br>
the detected object is one or multiple persons travelling on
non-motorized unicycles, bicycles, tricycles or quadricycle
* **personWithStroller** (4)<br>
the detected object is a person travelling on foot pushing or
pulling a stroller potentially carrying by one or
multiple other persons
* **personOnSkates** (5)<br>
the detected object is a person travelling on skates, skateboards
or a small electric or foot operated scooter
* **personGroup** (6)     <br>
the detected object is a group of persons with similar
movement characteristics
```asn1
PersonSubclassType ::= INTEGER {
    unknown             (0),    
    pedestrian          (1),    
    personInWheelchair  (2),    
    cyclist             (3),    
    personWithStroller  (4),    
    personOnSkates      (5),    
    personGroup         (6)     
} (0..255)
```

### <a name="VehicleSubclassType"></a>Vehicle Subclass Type

Describes the subclass of a detected object for class vehicle.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _n/a_

Values:
* **unknown** (0)<br>
the type of vehicle is unknown
* **moped** (1)<br>
the detected object is a light motor vehicle with less than four
wheels as defined in UNECE/TRANS/WP.29/78/Rev.4 class L1, L2
* **motorcycle** (2)<br>
the detected object is a light motor vehicle with less than four
wheels as defined in UNECE/TRANS/WP.29/78/Rev.4 class L3, L4, L5, L6, L7
* **passengerCar** (3)<br>
the detected object is a small passenger car as defined in
UNECE/TRANS/WP.29/78/Rev.4 class M1
* **bus** (4)<br>
the detected object is a large passenger vehicle as defined
in UNECE/TRANS/WP.29/78/Rev.4 class M2, M3
* **lightTruck** (5)<br>
the detected object is a light goods vehicle as defined
in UNECE/TRANS/WP.29/78/Rev.4 class N1
* **heavyTruck** (6)<br>
the detected object is a heavy goods vehicle as defined
in UNECE/TRANS/WP.29/78/Rev.4 class N2, N3
* **trailer** (7)<br>
the detected object is an unpowered vehicle that is intended
to be towed by a powered vehicle as defined in
UNECE/TRANS/WP.29/78/Rev.4 class O
* **specialVehicles** (8)<br>
the detected object is a vehicle which has a special purpose
other than the above (e.g. moving road works vehicle)
* **tram** (9)<br>
the detected object is a vehicle running on tracks along
public streets
* **emergencyVehicle** (10)<br>
the detected object is a vehicle used in an emergency situation
such as an ambulance, police car or fire engine
* **agricultural** (11)    <br>
the detected object is a vehicle used for agricultural purposes
```asn1
VehicleSubclassType ::= INTEGER {
    unknown             (0),    
    moped               (1),    
    motorcycle          (2),    
    passengerCar        (3),    
    bus                 (4),    
    lightTruck          (5),    
    heavyTruck          (6),    
    trailer             (7),    
    specialVehicles     (8),    
    tram                (9),    
    emergencyVehicle    (10),   
    agricultural        (11)    
} (0..255)
```

### <a name="OtherSubclassType"></a>Other Subclass Type

Describes the subclass of a detected object for class other.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _n/a_

Values:
* **unknown** (0)<br>
* **roadSideUnit** (1)<br>
```asn1
OtherSubclassType ::= INTEGER {
    unknown         (0),
    roadSideUnit    (1)
} (0..255)
```

### <a name="ClassConfidence"></a>Class Confidence

Describes the confidence value for the type of a detected object.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _Percent_

Values:
* **unknown** (0)<br>
in case the confidence value is unknown but the reported
classification is still valid.
* **onePercent** (1)<br>
* **oneHundredPercent** (100)<br>
* **unavailable** (101)   <br>
In case the class confidence value computation is not available
for this object. Indicates that the class assignment is invalid.
```asn1
ClassConfidence ::= INTEGER {
    unknown             (0),    
    onePercent          (1),
    oneHundredPercent   (100),
    unavailable         (101)   
} (0..101)
```

### <a name="WGS84AngleValue"></a>WGS 84 Angle Value

An angle value in degrees described in the WGS84 reference system with respect to the WGS84 north.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,1 degrees_

Values:
* **wgs84North** (0)<br>
* **wgs84East** (900)<br>
* **wgs84South** (1800)<br>
* **wgs84West** (2700)<br>
* **unavailable** (3601)<br>
```asn1
WGS84AngleValue ::= INTEGER {
    wgs84North          (0),
    wgs84East           (900),
    wgs84South          (1800),
    wgs84West           (2700),
    unavailable         (3601)
} (0..3601)
```

### <a name="CartesianAngleValue"></a>Cartesian Angle Value

An angle value described in a local Cartesian coordinate system, counted positive in
a right-hand local coordinate system from the abscissa.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,1 degrees_

Values:
* **zeroPointOneDegree** (1)<br>
* **oneDegree** (10)<br>
* **unavailable** (3601)<br>
```asn1
CartesianAngleValue ::= INTEGER {
    zeroPointOneDegree  (1),
    oneDegree           (10),
    unavailable         (3601)
} (0..3601)
```

### <a name="CartesianAngularSpeedValue"></a>Cartesian Angular Speed Value

An angular speed value described in a local Cartesian coordinate system, counted positive in
a right-hand local coordinate system from the abscissa.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,01 degrees/s_

Values:
* **noSpeed** (0)<br>
* **oneDegreePerSecondAntiClockwise** (100)<br>
* **oneDegreePerSecondClockwise** (-100)<br>
```asn1
CartesianAngularSpeedValue ::= INTEGER {
    noSpeed                             (0),
    oneDegreePerSecondAntiClockwise     (100),
    oneDegreePerSecondClockwise         (-100)
} (-32766..32767)
```

### <a name="CartesianAngularAccelerationValue"></a>Cartesian Angular Acceleration Value

An angular acceleration value described in a local Cartesian coordinate system, counted positive in
a right-hand local coordinate system from the abscissa.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,01 degrees/s^2 (degrees per second squared)_

Values:
* **noAcceleration** (0)<br>
* **oneDegreePerSecondSquaredAntiClockwise** (100)<br>
* **oneDegreePerSecondSquaredClockwise** (-100)<br>
```asn1
CartesianAngularAccelerationValue ::= INTEGER {
    noAcceleration                             (0),
    oneDegreePerSecondSquaredAntiClockwise     (100),
    oneDegreePerSecondSquaredClockwise         (-100)
} (-32766..32767)
```

### <a name="AngleConfidence"></a>Angle Confidence

The absolute accuracy of a reported angle value for a predefined confidence level (e.g. 95 %).
The required confidence level is defined by the corresponding standards applying this DE.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,1 degrees_

Values:
* **zeroPointOneDegree** (1)<br>
* **oneDegree** (10)<br>
* **outOfRange** (126)<br>
if the  accuracy is out of range, i.e. greater than
12,5 degrees. A corresponding reported angle value shall be
considered invalid and cannot be trusted.
* **unavailable** (127)   <br>
if the accuracy information is not available
```asn1
AngleConfidence ::= INTEGER {
    zeroPointOneDegree  (1),
    oneDegree           (10),
    outOfRange          (126),  
    unavailable         (127)   
} (1..127)
```

### <a name="AngularSpeedConfidence"></a>Angular Speed Confidence

The absolute accuracy of a reported angular speed value for a predefined confidence level (e.g. 95 %).
The required confidence level is defined by the corresponding standards applying this DE.
For correlation computation, maximum interval levels shall be assumed.
@ n/a


Values:
* **degSec-000-01** (0)<br>
if the accuracy is equal to or less than 0,01 degree/second
* **degSec-000-05** (1)<br>
1 if the accuracy is equal to or less than 0,05 degrees/second
* **degSec-000-10** (2)<br>
if the accuracy is equal to or less than 0,1 degree/second
* **degSec-001-00** (3)<br>
3 if the accuracy is equal to or less than 1 degree/second
* **degSec-005-00** (4)<br>
if the accuracy is equal to or less than 5 degrees/second
* **degSec-010-00** (5)<br>
if the accuracy is equal to or less than 10 degrees/second
* **degSec-100-00** (6)<br>
if the accuracy is equal to or less than 100 degrees/second
* **outOfRange** (7)<br>
if the accuracy is out of range, i.e. greater than 100 degrees/second
* **unavailable** (8)     <br>
if the accuracy information is unavailable
```asn1
AngularSpeedConfidence ::= ENUMERATED {
    degSec-000-01 (0),  
    degSec-000-05 (1),  
    degSec-000-10 (2),  
    degSec-001-00 (3),  
    degSec-005-00 (4),  
    degSec-010-00 (5),  
    degSec-100-00 (6),  
    outOfRange (7),     
    unavailable (8)     
}
```

### <a name="AngularAccelerationConfidence"></a>Angular Acceleration Confidence

The absolute accuracy of a reported angular acceleration value for a predefined confidence level (e.g. 95 %).
The required confidence level is defined by the corresponding standards applying this DE.
For correlation computation, maximum interval levels shall be assumed.
@ n/a


Values:
* **degSecSquared-000-01** (0)<br>
if the accuracy is equal to or less than 0,01 degree/second^2
* **degSecSquared-000-05** (1)<br>
1 if the accuracy is equal to or less than 0,05 degrees/second^2
* **degSecSquared-000-10** (2)<br>
if the accuracy is equal to or less than 0,1 degree/second^2
* **degSecSquared-001-00** (3)<br>
3 if the accuracy is equal to or less than 1 degree/second^2
* **degSecSquared-005-00** (4)<br>
if the accuracy is equal to or less than 5 degrees/second^2
* **degSecSquared-010-00** (5)<br>
if the accuracy is equal to or less than 10 degrees/second^2
* **degSecSquared-100-00** (6)<br>
if the accuracy is equal to or less than 100 degrees/second^2
* **outOfRange** (7)<br>
if the accuracy is out of range, i.e. greater than 100 degrees/second^2
* **unavailable** (8)     <br>
if the accuracy information is unavailable
```asn1
AngularAccelerationConfidence ::= ENUMERATED {
    degSecSquared-000-01 (0),  
    degSecSquared-000-05 (1),  
    degSecSquared-000-10 (2),  
    degSecSquared-001-00 (3),  
    degSecSquared-005-00 (4),  
    degSecSquared-010-00 (5),  
    degSecSquared-100-00 (6),  
    outOfRange (7),     
    unavailable (8)     
}
```

### <a name="SemiRangeLength"></a>Semi Range Length

The length of an axis of an ellipsoid or rectangle, used to describe the extension in a
particular direction.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,1 m_

Values:
* **zeroPointOneMeter** (1)<br>
* **oneMeter** (10)<br>
```asn1
SemiRangeLength ::= INTEGER {
    zeroPointOneMeter   (1),
    oneMeter            (10)
} (0..10000)
```

### <a name="DistanceValue"></a>Distance Value

Distance from one point to another.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,01 m_

Values:
* **zeroPointZeroOneMeter** (1)<br>
* **oneMeter** (100)<br>
```asn1
DistanceValue ::= INTEGER {
    zeroPointZeroOneMeter   (1),
    oneMeter                (100)
} (-132768..132767)
```

### <a name="DistanceConfidence"></a>Distance Confidence

Absolute accuracy of measurement to a confidence level of 95%.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,01 m_

Values:
* **zeroPointZeroOneMeter** (1)<br>
* **oneMeter** (100)<br>
* **outOfRange** (4094)<br>
shall be set if the accuracy is out of range
* **unavailable** (4095)   <br>
shall be set if the accuracy data is unavailable
```asn1
DistanceConfidence ::= INTEGER {
    zeroPointZeroOneMeter   (1),
    oneMeter                (100),
    outOfRange              (4094),  
    unavailable             (4095)   
} (0..4095)
```

### <a name="DynamicStatus"></a>Dynamic Status

Indication whether the detected object is classified as a dynamic (i.e. moving) object.
This value indicates whether an object has the general capability to move, i.e. change its
position.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _n/a_

Values:
* **dynamic** (0)<br>
the object is moving
* **hasBeenDynamic** (1)<br>
indicates whether an object has been dynamic before, e.g., a car
stopping at a traffic light
* **static** (2)     <br>
shall be used in case an object is identified to be not moving
throughout any previous observation
```asn1
DynamicStatus ::= INTEGER {
    dynamic             (0),    
    hasBeenDynamic      (1),    
    static              (2)     
} (0..2)
```

### <a name="HitchPointOffset"></a>Hitch Point Offset

Position of the hitch point in negative x-direction (according to ISO 8855) from the
vehicle Reference Point.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,1 m_

Values:
* **zeroPointOneMeter** (1)<br>
* **oneMeter** (10)<br>
* **outOfRange** (254)<br>
* **unavailable** (255)<br>
```asn1
HitchPointOffset ::= INTEGER {
    zeroPointOneMeter   (1),
    oneMeter            (10),
    outOfRange          (254),
    unavailable         (255)
} (0..255)
```

### <a name="FrontOverhang"></a>Front Overhang

Length of the trailer overhang in the positive x direction (according to ISO 8855) from the
trailer Reference Point indicated by the refPointID. The value defaults to 0 in case the trailer
is not overhanging to the front with respect to the trailer reference point.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,1 m_

Values:
* **noOverhang** (0)<br>
trailer is not overhanging to the front with respect to the
trailer reference point
* **zeroPointOneMeter** (1)<br>
* **oneMeter** (10)<br>
```asn1
FrontOverhang ::= INTEGER {
    noOverhang          (0),    
    zeroPointOneMeter   (1),
    oneMeter            (10)
} (0..50)
```

### <a name="FreeSpaceConfidence"></a>Free Space Confidence

Confidence indicating that an area is not occupied by a traffic participant or obstacle.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _n/a_

Values:
* **unknown** (0)<br>
if the free space confidence is unknown for the described area
* **onePercent** (1)<br>
* **oneHundredPercent** (100)<br>
* **unavailable** (101)   <br>
if the confidence could not be computed and does not apply.
```asn1
FreeSpaceConfidence ::= INTEGER {
    unknown             (0),    
    onePercent          (1),
    oneHundredPercent   (100),
    unavailable         (101)   
} (0..101)
```

### <a name="LongitudinalLanePositionValue"></a>Longitudinal Lane Position Value

Indicates the longitudinal offset of the map-matched position of a particular object along the
matched lane, beginning from the lane’s starting point as defined in CEN ISO/TS 19091


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,1 m_

Values:
* **zeroPointOneMeter** (1)<br>
```asn1
LongitudinalLanePositionValue ::= INTEGER {
    zeroPointOneMeter   (1)
} (0..32767)
```

### <a name="LongitudinalLanePositionConfidence"></a>Longitudinal Lane Position Confidence

Absolute accuracy of longitudinal lane position measurement to a confidence level of 95%.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,01 m_

Values:
* **zeroPointZeroOneMeter** (1)<br>
* **oneMeter** (100)<br>
* **outOfRange** (101)<br>
shall be set if the accuracy is out of range
* **unavailable** (102)   <br>
shall be set if the accuracy data is unavailable
```asn1
LongitudinalLanePositionConfidence ::= INTEGER {
    zeroPointZeroOneMeter   (1),
    oneMeter                (100),
    outOfRange              (101),  
    unavailable             (102)   
} (0..102)
```

### <a name="ObjectAge"></a>Object Age

Age of object in milliseconds, i.e. for how long the object has been observed by the
disseminating station.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _1 ms_

Values:
* **oneMiliSec** (1)<br>
* **moreThan1Point5Second** (1500)  <br>
indicates that the object has been observed for more than 1.5s.
```asn1
ObjectAge ::= INTEGER {
    oneMiliSec              (1),
    moreThan1Point5Second   (1500)  
} (0..1500)
```

### <a name="ObjectConfidence"></a>Object Confidence

A single-value indication about the overall information quality of a perceived object. Its computation
is based on several scaling factors and moving averages. See Clause 7.6.4 of ETSI TS 103 324 for details
on the computation.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _n/a_

Values:
* **noConfidence** (0)<br>
No confidence in detected object, e.g. for "ghost"-objects or
if confidence could not be computed
* **fullConfidence** (15)    <br>
Full confidence in detected object
```asn1
ObjectConfidence ::= INTEGER {
    noConfidence        (0),    
    fullConfidence      (15)    
} (0..15)
```

### <a name="ObjectDimensionValue"></a>Object Dimension Value

A dimension for an object.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,1 m_

Values:
* **zeroPointOneMeter** (1)<br>
* **oneMeter** (10)<br>
```asn1
ObjectDimensionValue ::= INTEGER {
    zeroPointOneMeter   (1),
    oneMeter            (10)
} (0..1023)
```

### <a name="ObjectDimensionConfidence"></a>Object Dimension Confidence

Accuracy of provided dimension value with a predefined confidence level (e.g. 95%)


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,01 m_

Values:
* **zeroPointZeroOneMeter** (1)<br>
* **oneMeter** (100)<br>
* **outOfRange** (101)<br>
* **unavailable** (102)<br>
```asn1
ObjectDimensionConfidence ::= INTEGER {
    zeroPointZeroOneMeter   (1),
    oneMeter                (100),
    outOfRange              (101),
    unavailable             (102)
} (0..102)
```

### <a name="ObjectRefPoint"></a>Object Reference Point

Reference point of measurement for the object dimensions. All provided state variables of this
object are given relative to the reference point. The point is included in the plane
perpendicular to the direction of the @see yawAngleValue.


Values:
* **mid** (0)<br>
* **bottomLeft** (1)<br>
* **midLeft** (2)<br>
* **topLeft** (3)<br>
* **bottomMid** (4)<br>
* **topMid** (5)<br>
* **bottomRight** (6)<br>
* **midRight** (7)<br>
* **topRight** (8)<br>
```asn1
ObjectRefPoint ::= INTEGER {
    mid             (0),
    bottomLeft      (1),
    midLeft         (2),
    topLeft         (3),
    bottomMid       (4),
    topMid          (5),
    bottomRight     (6),
    midRight        (7),
    topRight        (8)
} (0..8)
```

### <a name="Radius"></a>Radius

The dimension of a sensor area in the shape of a circle or a rectangle.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,1 m_

Values:
* **zeroPointOneMeter** (1)<br>
* **oneMeter** (10)<br>
```asn1
Radius ::= INTEGER {
    zeroPointOneMeter   (1),
    oneMeter            (10)
}  (0..10000)
```

### <a name="Range"></a>Range

Range of sensor within the indicated azimuth Angle defined by the start and end opening angle.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,1 m_

Values:
* **zeroPointOneMeter** (1)<br>
* **oneMeter** (10)<br>
```asn1
Range ::= INTEGER {
    zeroPointOneMeter   (1),
    oneMeter            (10)
} (0..10000)
```

### <a name="RearOverhang"></a>Rear Overhang

Length of the trailer overhang in the negative x direction (according to ISO 8855) from the
trailer Reference Point indicated by the @see refPointID


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,1 m_

Values:
* **zeroPointOneMeter** (1)<br>
* **oneMeter** (10)<br>
```asn1
RearOverhang ::= INTEGER {
    zeroPointOneMeter   (1),
    oneMeter            (10)
    } (0..150)
```

### <a name="RefPointId"></a>Reference Point ID

Reference point counter for a trailer.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _n/a_

```asn1
RefPointId ::= INTEGER (0..255)
```

### <a name="SensorHeight"></a>Sensor Height

Height of sensor position relative to altitude provided by the reference position.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,01 m_

Values:
* **zeroPointZeroOneMeter** (1)<br>
```asn1
SensorHeight ::= INTEGER  {
    zeroPointZeroOneMeter   (1)
} (-5000..5000)
```

### <a name="VehicleHeight"></a>Vehicle Height

The height if the vehicle, measured from the ground to the highest point, excluding any antennas.
In case vehicles are equipped with adjustable ride heights, camper shells, and any other
equipment which may result in varying height, the largest possible height shall be used.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _5 cm (DE ranges to 6.35 m)_

```asn1
VehicleHeight ::= INTEGER (0..127)
```

### <a name="ShadowingApplies"></a>Shadowing Applies Indication

Boolean indication if tracing approach shall be used to compute a shadowed area behind an object.
If set to TRUE, the simple tracing approach shall be applied for each object intersecting or
located within the area or volume described by the freeSpaceAddendum container. If set to FALSE,
the simple tracing approach shall not be applied for each object intersecting or located within
the area or volume described by the freeSpaceAddenum container.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _n/a_

```asn1
ShadowingApplies ::= BOOLEAN
```

### <a name="Identifier"></a>Identifier

General identifier data element.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _n/a_

```asn1
Identifier ::= INTEGER (0..255)
```

### <a name="NumberOfPerceivedObjects"></a>Number of Perceived Objects

A data element for representing the total number of detected and shared objects of an ITS-S
transmitting a CPM.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _n/a_

```asn1
NumberOfPerceivedObjects ::= INTEGER (0..255)
```

### <a name="SensorType"></a>Sensor Type

Describes the type of attached sensor


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _n/a_

Values:
* **undefined** (0)<br>
* **radar** (1)<br>
* **lidar** (2)<br>
* **monovideo** (3)<br>
* **stereovision** (4)<br>
* **nightvision** (5)<br>
* **ultrasonic** (6)<br>
* **pmd** (7)<br>
* **fusion** (8)<br>
object information provided from sensor data fusion system
* **inductionloop** (9)<br>
* **sphericalCamera** (10)<br>
* **itssaggregation** (11)    <br>
object information gathered from other received ITS messages
```asn1
SensorType ::= INTEGER {
    undefined       (0),
    radar           (1),
    lidar           (2),
    monovideo       (3),
    stereovision    (4),
    nightvision     (5),
    ultrasonic      (6),
    pmd             (7),
    fusion          (8),    
    inductionloop   (9),
    sphericalCamera (10),
    itssaggregation (11)    
} (0..15)
```

### <a name="SegmentCount"></a>Segment Count

A data element for representing either the total number of generated segments by the transmitter
or the identification of the received message segment.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _n/a_

```asn1
SegmentCount ::= INTEGER( 1..127)
```

### <a name="SpeedValueExtended"></a>Speed Value Extended

Value of a speed component.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,01 m/s_

Values:
* **negativeSpeedMaximum** (-16383)<br>
shall be set for values equal to or smaller than -163,83 m/s
* **standstill** (0)<br>
* **oneCentimeterPerSec** (1)<br>
* **speedMaximum** (16382)<br>
shall be set for values equal to or greater than 163,82 m/s
* **unavailable** (16383)  <br>
shall be set if information is not available
```asn1
SpeedValueExtended ::= INTEGER {
    negativeSpeedMaximum   (-16383), 
    standstill             (0),
    oneCentimeterPerSec    (1),
    speedMaximum           (16382), 
    unavailable            (16383)  
} (-16383..16383)
```

### <a name="AccelerationValue"></a>Acceleration Value

Value of an acceleration component.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,1 m/s2_

Values:
* **pointOneMeterPerSecSquared** (1)<br>
* **minusPointOneMeterPerSecSquared** (-1)<br>
* **unavailable** (161)  <br>
shall be set if information is not available
```asn1
AccelerationValue ::= INTEGER {
    pointOneMeterPerSecSquared          (1),
    minusPointOneMeterPerSecSquared (-1),
    unavailable                                     (161)  
} (-160 .. 161)
```

### <a name="TimeOfMeasurement"></a>Time of Measurement

Time difference with respect to the @see generationDeltaTime for the provided measurement for the
object. Negative values indicate that the provided object state refers to a point in time after
the @see generationDeltaTime has been computed, i.e. after the latest disseminating ITS-S
position update which is used to calculate the generationDeltaTime.


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _1 ms_

Values:
* **oneMilliSecond** (1)<br>
```asn1
TimeOfMeasurement ::= INTEGER {
    oneMilliSecond  (1)
} (-1500..1500)
```

### <a name="XSensorOffset"></a>X Sensor Offset

Describes the mounting position of a sensor along the negative x-direction from Reference Point
indicated by the @see refPointID


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,01 m_

Values:
* **negativeZeroPointZeroOneMeter** (-1)<br>
* **negativeOneMeter** (-100)<br>
* **negativeOutOfRange** (-3094)<br>
* **positiveOneMeter** (100)<br>
* **positiveOutOfRange** (1001)<br>
```asn1
XSensorOffset ::= INTEGER {
    negativeZeroPointZeroOneMeter   (-1),
    negativeOneMeter                (-100),
    negativeOutOfRange              (-3094),
    positiveOneMeter                (100),
    positiveOutOfRange              (1001)
} (-3094..1001)
```

### <a name="YSensorOffset"></a>Y Sensor Offset

Described the mounting position of a sensor in y-direction from Reference Point
indicated by the @see refPointID


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,01 m_

Values:
* **zeroPointZeroOneMeter** (1)<br>
* **oneMeter** (100)<br>
```asn1
YSensorOffset ::= INTEGER {
    zeroPointZeroOneMeter   (1),
    oneMeter                (100)
} (-1000..1000)
```

### <a name="ZSensorOffset"></a>Z Sensor Offset

Described the mounting position of a sensor in y-direction from Reference Point
indicated by the @see refPointID


&nbsp;&nbsp;&nbsp;&nbsp;**Unit**: _0,01 m_

Values:
* **zeroPointZeroOneMeter** (1)<br>
* **oneMeter** (100)<br>
```asn1
ZSensorOffset ::= INTEGER {
    zeroPointZeroOneMeter   (1),
    oneMeter                (100)
} (0..1000)
```


Loading
Loading