ETSI-ITS-CDD.asn 294 KB
Newer Older
tijinkj's avatar
tijinkj committed
 * Other countries may use different message sets defined by the local administration.
 * @category: Vehicle information
 * @revision: V1.3.1
 */
PtActivation ::= SEQUENCE {
    ptActivationType    PtActivationType,
    ptActivationData    PtActivationData
}

/**
tijinkj's avatar
tijinkj committed
 * This DF describes a radial shape. The circular sector or cone is constructed by sweeping      
 * the provided range about the reference position specified outside of the context of this DF or 
 * about the optional shapeReferencePoint. The range is swept between a horizontal start and a 
 * horizontal end angle in the X-Y plane of a cartesian coordinate system specified outside of the 
 * context of this DF, in a right-hand positive angular direction w.r.t. the x-axis. 
 * A vertical opening angle in the X-Z plane may optionally be provided in a right-hand positive 
 * angular direction w.r.t. the x-axis. 
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * It shall include the following components:
tijinkj's avatar
tijinkj committed
 * 
tijinkj's avatar
tijinkj committed
 * @field shapeReferencePoint: the optional reference point used for the definition of the shape, 
 * relative to an externally specified reference position. If this component is absent, the  
 * externally specified reference position represents the shape's reference point. 
tijinkj's avatar
tijinkj committed
 *
 * @field range: the radial range of the shape from the shape's reference point. 
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field horizontalOpeningAngleStart: the start of the shape's horizontal opening angle. 
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field horizontalOpeningAngleEnd: the end of the shape's horizontal opening angle. 
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field verticalOpeningAngleStart: optional start of the shape's vertical opening angle. 
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field verticalOpeningAngleEnd: optional end of the shape's vertical opening angle. 
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @category GeoReference information
tijinkj's avatar
tijinkj committed
 * @revision: created in V2.1.1, names and types of the horizontal opening angles changed, constraint added and description revised in V2.2.1
tijinkj's avatar
tijinkj committed
*/
RadialShape ::= SEQUENCE { 
tijinkj's avatar
tijinkj committed
    shapeReferencePoint                      CartesianPosition3d OPTIONAL,
tijinkj's avatar
tijinkj committed
    range                                    StandardLength12b,
tijinkj's avatar
tijinkj committed
    horizontalOpeningAngleStart              CartesianAngleValue, 
    horizontalOpeningAngleEnd                CartesianAngleValue, 
tijinkj's avatar
tijinkj committed
    verticalOpeningAngleStart                CartesianAngleValue OPTIONAL,
tijinkj's avatar
tijinkj committed
    verticalOpeningAngleEnd                  CartesianAngleValue OPTIONAL
tijinkj's avatar
tijinkj committed
}
tijinkj's avatar
tijinkj committed
   ((WITH COMPONENTS {..., verticalOpeningAngleStart ABSENT, verticalOpeningAngleEnd ABSENT }) |
    (WITH COMPONENTS {..., verticalOpeningAngleStart PRESENT, verticalOpeningAngleEnd PRESENT }))
tijinkj's avatar
tijinkj committed


/**
tijinkj's avatar
tijinkj committed
 * This DF describes a list of radial shapes positioned w.r.t. to an offset position defined  
 * relative to a reference position specified outside of the context of this DF and oriented w.r.t.  
 * a cartesian coordinate system specified outside of the context of this DF. 
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * It shall include the following components:
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field refPointId: the identification of the reference point in case of a sensor mounted to trailer. Defaults to ITS ReferencePoint (0).
 * 
tijinkj's avatar
tijinkj committed
 * @field xCoordinate: the x-coordinate of the offset position.
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field yCoordinate: the y-coordinate of the offset position.
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field zCoordinate: the optional z-coordinate of the offset position.
tijinkj's avatar
tijinkj committed
 *
 * @field radialShapesList: the list of radial shape details.
 *
 * @category: Georeference information
tijinkj's avatar
tijinkj committed
 * @revision: created in V2.1.1, description revised in V2.2.1
tijinkj's avatar
tijinkj committed
 */ 
RadialShapes ::= SEQUENCE {
    refPointId          Identifier1B,
tijinkj's avatar
tijinkj committed
    xCoordinate         CartesianCoordinateSmall, 
tijinkj's avatar
tijinkj committed
    yCoordinate         CartesianCoordinateSmall,
    zCoordinate         CartesianCoordinateSmall OPTIONAL,
tijinkj's avatar
tijinkj committed
    radialShapesList    RadialShapesList
tijinkj's avatar
tijinkj committed
}

/** 
 * The DF contains a list of @ref RadialShapeDetails.
 *
 * @category: Georeference information
 * @revision: created in V2.1.1
 */

RadialShapesList ::= SEQUENCE SIZE(1..16,...) OF RadialShapeDetails

/**
tijinkj's avatar
tijinkj committed
 * This DF describes radial shape details. The circular sector or cone is
 * constructed by sweeping the provided range about the position specified outside of the  
 * context of this DF. The range is swept between a horizontal start and a horizontal end angle in 
 * the X-Y plane of a right-hand cartesian coordinate system specified outside of the context of 
 * this DF, in positive angular direction w.r.t. the x-axis. A vertical opening angle in the X-Z 
 * plane may optionally be provided in positive angular direction w.r.t. the x-axis.
 * 
tijinkj's avatar
tijinkj committed
 * It shall include the following components:
tijinkj's avatar
tijinkj committed
 * 
 * @field range: the radial range of the sensor from the reference point or sensor point offset. 
 *
tijinkj's avatar
tijinkj committed
 * @field horizontalOpeningAngleStart:  the start of the shape's horizontal opening angle.
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field horizontalOpeningAngleEnd: the end of the shape's horizontal opening angle. 
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field verticalOpeningAngleStart: optional start of the shape's vertical opening angle. 
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field verticalOpeningAngleEnd: optional end of the shape's vertical opening angle. 
tijinkj's avatar
tijinkj committed
 *
 * @category: Georeference information
tijinkj's avatar
tijinkj committed
 * @revision: created in V2.1.1, description revised and constraint added in V2.2.1
tijinkj's avatar
tijinkj committed
 */
RadialShapeDetails ::= SEQUENCE {
    range                          StandardLength12b,
    horizontalOpeningAngleStart    CartesianAngleValue,
    horizontalOpeningAngleEnd      CartesianAngleValue,
    verticalOpeningAngleStart      CartesianAngleValue OPTIONAL,
tijinkj's avatar
tijinkj committed
    verticalOpeningAngleEnd        CartesianAngleValue OPTIONAL
tijinkj's avatar
tijinkj committed
}
tijinkj's avatar
tijinkj committed
   ((WITH COMPONENTS {..., verticalOpeningAngleStart ABSENT, verticalOpeningAngleEnd ABSENT }) |
    (WITH COMPONENTS {..., verticalOpeningAngleStart PRESENT, verticalOpeningAngleEnd PRESENT }))
tijinkj's avatar
tijinkj committed

/** 
tijinkj's avatar
tijinkj committed
 * This DF represents the shape of a rectangular area or a right rectangular prism that is centred 
 * on a reference position defined outside of the context of this DF and oriented w.r.t. a cartesian    
 * coordinate system defined outside of the context of this DF. 
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * It shall include the following components: 
tijinkj's avatar
tijinkj committed
 * 
tijinkj's avatar
tijinkj committed
 * @field shapeReferencePoint: represents an optional offset point which the rectangle is centred on with 
 * respect to the reference position. If this component is absent, the externally specified  
 * reference position represents the shape's reference point. 
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field semiLength: represents half the length of the rectangle located in the X-Y Plane.
tijinkj's avatar
tijinkj committed
 * 
tijinkj's avatar
tijinkj committed
 * @field semiBreadth: represents half the breadth of the rectangle located in the X-Y Plane.
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field orientation: represents the optional orientation of the length of the rectangle, 
 * measured with positive values turning around the Z-axis using the right-hand rule, starting from
 * the X-axis. 
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field height: represents the optional height, present if the shape is a right rectangular prism 
 * with height extending in the positive Z-axis.
tijinkj's avatar
tijinkj committed
 *
 * @category GeoReference information
tijinkj's avatar
tijinkj committed
 * @revision: created in V2.1.1, centerPoint renamed to shapeReferencePoint, the type of the field orientation changed and description revised in V2.2.1
tijinkj's avatar
tijinkj committed
 */
RectangularShape ::= SEQUENCE { 
tijinkj's avatar
tijinkj committed
    shapeReferencePoint   CartesianPosition3d OPTIONAL,
    semiLength            StandardLength12b,
    semiBreadth           StandardLength12b,
    orientation           CartesianAngleValue OPTIONAL,
    height                StandardLength12b OPTIONAL
tijinkj's avatar
tijinkj committed
}

/**
tijinkj's avatar
tijinkj committed
 * A position within a geographic coordinate system together with a confidence ellipse. 
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * It shall include the following components: 
tijinkj's avatar
tijinkj committed
 *
 * @field latitude: the latitude of the geographical point.
 *
 * @field longitude: the longitude of the geographical point.
 *
tijinkj's avatar
tijinkj committed
 * @field positionConfidenceEllipse: the confidence ellipse associated to the geographical position.
tijinkj's avatar
tijinkj committed
 *
 * @field altitude: the altitude and an altitude accuracy of the geographical point.
 *
tijinkj's avatar
tijinkj committed
 * @note: this DE is kept for backwards compatibility reasons only. It is recommended to use the @ref ReferencePositionWithConfidence instead. 
tijinkj's avatar
tijinkj committed
 * @category: GeoReference information
 * @revision: description updated in V2.1.1
 */
ReferencePosition ::= SEQUENCE {
    latitude                     Latitude,
    longitude                    Longitude,
    positionConfidenceEllipse    PosConfidenceEllipse,
    altitude                     Altitude
}

/**
tijinkj's avatar
tijinkj committed
 * A position within a geographic coordinate system together with a confidence ellipse. 
 *
 * It shall include the following components: 
 *
 * @field latitude: the latitude of the geographical point.
 *
 * @field longitude: the longitude of the geographical point.
 *
 * @field positionConfidenceEllipse: the confidence ellipse associated to the geographical position.
 *
 * @field altitude: the altitude and an altitude accuracy of the geographical point.
 *
 * @category: GeoReference information
 * @revision: created in V2.1.1 based on @ref ReferencePosition but using @ref PositionConfidenceEllipse.
 */
ReferencePositionWithConfidence ::= SEQUENCE {
    latitude                     Latitude,
    longitude                    Longitude,
    positionConfidenceEllipse    PositionConfidenceEllipse,
    altitude                     Altitude
}

/**
 * This DF shall contain a list of @ref StationType. to which a certain traffic restriction, e.g. the speed limit, applies.
tijinkj's avatar
tijinkj committed
 * 
 * @category: Infrastructure information, Traffic information
 * @revision: V1.3.1
 */
RestrictedTypes ::= SEQUENCE (SIZE(1..3, ...)) OF StationType

tijinkj's avatar
tijinkj committed
/** 
 * This DF provides configuration information about a road section.
 *
 * It shall include the following components: 
 *
 * @field roadSectionDefinition: the topological definition of the road section.
 * 
 * @field roadType: the optional type of road on which the section is located.
 * 
 * @field laneConfiguration: the optional configuration of the road section in terms of basic information per lane.
 *
 * @field mapemConfiguration: the optional configuration of the road section in terms of MAPEM lanes or connections.
 *
 * @category: Road topology information
 * @revision: Created in V2.2.1
*/

RoadConfigurationSection ::= SEQUENCE {
  roadSectionDefinition  RoadSectionDefinition,
  roadType               RoadType OPTIONAL, 
  laneConfiguration      LanePositionAndType OPTIONAL,
  mapemConfiguration     MapemConfiguration OPTIONAL,
  ...
} 
  ((WITH COMPONENTS {..., laneConfiguration PRESENT}) |
   (WITH COMPONENTS {..., mapemConfiguration PRESENT})) 

/**
 * This DF shall contain a list of @ref RoadConfigurationSection.
 * 
 * @category: Road Topology information
 * @revision: Created in V2.2.1
 */
RoadConfigurationSectionList::=  SEQUENCE (SIZE(1..8,...))  OF RoadConfigurationSection

/** 
 * This DF provides the basic topological definition of a road section.
 *
 * It shall include the following components: 
 * 
 * @field startingPointSection: the position of the starting point of the section. 
 * 
 * @field lengthOfSection: the optional length of the section along the road profile (i.e. including curves).
 * 
 * @field endingPointSection: the optional position of the ending point of the section. 
 * If this component is absent, the ending position is implicitly defined by other means, e.g. the starting point of the next RoadConfigurationSection, or the section’s length.
 *
 * @field connectedTraces: the identifier(s) of the trace(s) having one or an ordered subset of waypoints located upstream of the RoadConfigurationSection’ starting point. 
 * 
 * @field includedTraces: the identifier(s) of the trace(s) that covers (either with all its length or with a part of it) a RoadConfigurationSection. 
 *
 * @field isEventZoneIncluded: indicates, if set to TRUE, that the eventZone (either with all its length or with a part of it) covers a RoadConfigurationSection. 
 * 
 * @field isEventZoneConnected: indicates, if set to TRUE, that the eventZone has one or an ordered subset of waypoints located upstream of the RoadConfigurationSection’ starting point.
 *
 * @category: Road topology information
 * @revision: Created in V2.2.1
*/
RoadSectionDefinition::= SEQUENCE {
  startingPointSection      GeoPosition,
  lengthOfSection	  	    StandardLength2B OPTIONAL,
  endingPointSection       	GeoPosition OPTIONAL, 
  connectedTraces		    TraceReferences,	
  includedTraces          	TraceReferences,
  isEventZoneIncluded       BOOLEAN,  
  isEventZoneConnected      BOOLEAN,
  ...
}  

tijinkj's avatar
tijinkj committed
/**
 * This DF represents a unique id for a road segment
 *
tijinkj's avatar
tijinkj committed
 * It shall include the following components: 
tijinkj's avatar
tijinkj committed
 *
 * @field region: the optional identifier of the entity that is responsible for the region in which the road segment is placed.
 * It is the duty of that entity to guarantee that the @ref Id is unique within the region.
 *
tijinkj's avatar
tijinkj committed
 * @field id: the identifier of the road segment.
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @note: when the component region is present, the RoadSegmentReferenceId is guaranteed to be globally unique.
tijinkj's avatar
tijinkj committed
 * @category: GeoReference information
 * @revision: created in V2.1.1
 */
RoadSegmentReferenceId ::= SEQUENCE {
    region    Identifier2B OPTIONAL,
    id        Identifier2B
}

/**
 * This DF provides the safe distance indication of a traffic participant with other traffic participant(s).
 *
tijinkj's avatar
tijinkj committed
 * It shall include the following components: 
tijinkj's avatar
tijinkj committed
 * 
 * @field subjectStation: optionally indicates one "other" traffic participant identified by its ITS-S.
 *  
 * @field safeDistanceIndicator: indicates whether the distance between the ego ITS-S and the traffic participant(s) is safe.
tijinkj's avatar
tijinkj committed
 * If subjectStation is present then it indicates whether the distance between the ego ITS-S and the traffic participant indicated in the component subjectStation is safe. 
tijinkj's avatar
tijinkj committed
 *
ASN.1 Documenter's avatar
ASN.1 Documenter committed
 * @field timeToCollision: optionally indicated the time-to-collision calculated as sqrt(LaDi^2 + LoDi^2 + VDi^2/relative speed 
tijinkj's avatar
tijinkj committed
 * and represented in  the  nearest 100  ms. This component may be present only if subjectStation is present. 
 *
tijinkj's avatar
tijinkj committed
 * @note: the abbreviations used are Lateral Distance (LaD),  Longitudinal Distance (LoD) and Vertical Distance (VD) 
tijinkj's avatar
tijinkj committed
 * and their respective  thresholds, Minimum  Safe  Lateral  Distance (MSLaD), Minimum  Safe  Longitudinal Distance  (MSLoD),  and  Minimum  Safe Vertical Distance (MSVD).
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @category: Traffic information, Kinematic information
tijinkj's avatar
tijinkj committed
 * @revision: created in V2.1.1
 */
SafeDistanceIndication ::= SEQUENCE {
tijinkj's avatar
tijinkj committed
    subjectStation           StationId OPTIONAL,
tijinkj's avatar
tijinkj committed
    safeDistanceIndicator    SafeDistanceIndicator,
tijinkj's avatar
tijinkj committed
    timeToCollision          DeltaTimeTenthOfSecond OPTIONAL,
tijinkj's avatar
tijinkj committed
    ...
}

/** 
tijinkj's avatar
tijinkj committed
 * This DF shall contain a list of DF @ref CartesianPosition3d.
tijinkj's avatar
tijinkj committed
 * 
 * @category: GeoReference information
 * @revision: created in V2.1.1
 */
SequenceOfCartesianPosition3d ::= SEQUENCE (SIZE(1..16, ...)) OF CartesianPosition3d

/** 
tijinkj's avatar
tijinkj committed
 * The DF contains a list of DE @ref Identifier1B.
tijinkj's avatar
tijinkj committed
 *
 * @category: Basic information
 * @revision: created in V2.1.1
*/
SequenceOfIdentifier1B ::= SEQUENCE SIZE(1..128, ...) OF Identifier1B

/**
tijinkj's avatar
tijinkj committed
 * The DF contains a list of DF @ref SafeDistanceIndication.
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @category: Traffic information, Kinematic information
tijinkj's avatar
tijinkj committed
 * @revision: created in V2.1.1
*/
tijinkj's avatar
tijinkj committed
SequenceOfSafeDistanceIndication ::= SEQUENCE(SIZE(1..8,...)) OF SafeDistanceIndication
tijinkj's avatar
tijinkj committed

/**
tijinkj's avatar
tijinkj committed
 * The DF shall contain a list of DF @ref TrajectoryInterceptionIndication.
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @category: Traffic information, Kinematic information
tijinkj's avatar
tijinkj committed
 * @revision: created in V2.1.1
*/
tijinkj's avatar
tijinkj committed
SequenceOfTrajectoryInterceptionIndication ::=  SEQUENCE (SIZE(1..8,...)) OF TrajectoryInterceptionIndication
tijinkj's avatar
tijinkj committed

/**
 * This DF provides the definition of a geographical area or volume, based on different options.
 *
tijinkj's avatar
tijinkj committed
 * It is a choice of the following components: 
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field rectangular: definition of an rectangular area or a right rectangular prism (with a rectangular base) also called a cuboid, or informally a rectangular box.
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field circular: definition of an area of circular shape or a right circular cylinder.
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field polygonal: definition of an area of polygonal shape or a right prism.
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field elliptical: definition of an area of elliptical shape or a right elliptical cylinder.
tijinkj's avatar
tijinkj committed
 *
 * @field radial: definition of a radial shape.
 *
tijinkj's avatar
tijinkj committed
 * @field radialList: definition of list of radial shapes.
tijinkj's avatar
tijinkj committed
 *
 * @category: GeoReference information
 * @revision: Created in V2.1.1
 */
Shape::= CHOICE {
tijinkj's avatar
tijinkj committed
   rectangular       RectangularShape,
   circular          CircularShape, 
   polygonal         PolygonalShape,
   elliptical        EllipticalShape,
   radial            RadialShape,
   radialShapes      RadialShapes,
tijinkj's avatar
tijinkj committed
   ...
}

/**
tijinkj's avatar
tijinkj committed
 * This DF represents the speed and associated confidence value.
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * It shall include the following components: 
tijinkj's avatar
tijinkj committed
 * 
 * @field speedValue: the speed value.
 * 
tijinkj's avatar
tijinkj committed
 * @field speedConfidence: the confidence value of the speed value.
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @category: Kinematic information
tijinkj's avatar
tijinkj committed
 * @revision: V1.3.1
 */
Speed ::= SEQUENCE {
    speedValue         SpeedValue,
    speedConfidence    SpeedConfidence
}

/**
 * This DF  provides the  indication of  change in stability.
 *
tijinkj's avatar
tijinkj committed
 * It shall include the following components: 
tijinkj's avatar
tijinkj committed
 * 
 * @field lossProbability: the probability of stability loss. 
 * 
tijinkj's avatar
tijinkj committed
 * @field actionDeltaTime: the period over which the the probability of stability loss is estimated. 
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @category: Kinematic information
tijinkj's avatar
tijinkj committed
 * @revision: V2.1.1
 */
StabilityChangeIndication ::= SEQUENCE {
    lossProbability     StabilityLossProbability,
    actionDeltaTime     DeltaTimeTenthOfSecond,
    ...
}

/**
 * This DF represents the steering wheel angle of the vehicle at certain point in time.
 *
tijinkj's avatar
tijinkj committed
 * It shall include the following components: 
tijinkj's avatar
tijinkj committed
 * 
 * @field steeringWheelAngleValue: steering wheel angle value.
 * 
tijinkj's avatar
tijinkj committed
 * @field steeringWheelAngleConfidence: confidence value of the steering wheel angle value.
tijinkj's avatar
tijinkj committed
 * 
 * @category: Vehicle information
 * @revision: Created in V2.1.1
 */
SteeringWheelAngle ::= SEQUENCE {
    steeringWheelAngleValue         SteeringWheelAngleValue,
    steeringWheelAngleConfidence    SteeringWheelAngleConfidence
}

tijinkj's avatar
tijinkj committed
/** 
 * This DF represents a list of references to the components of a @ref Traces or @ref TracesExtended DF using the @ref TraceId. 
 *
 * @category: Road topology information
 * @revision: Created in V2.2.1
*/
TraceReferences ::= SEQUENCE (SIZE(1..14)) OF TraceId

tijinkj's avatar
tijinkj committed
/**
tijinkj's avatar
tijinkj committed
 * This DF represents one or more paths using @ref Path.
tijinkj's avatar
tijinkj committed
 * 
 * @category: GeoReference information
 * @revision: Description revised in V2.1.1. Is is now based on Path and not on PathHistory
 */
Traces ::= SEQUENCE SIZE(1..7) OF Path

/**
 * Ths DF represents the a position on a traffic island between two lanes. 
 *
tijinkj's avatar
tijinkj committed
 * It shall include the following components: 
tijinkj's avatar
tijinkj committed
 *
 * @field oneSide: represents one lane.
 * 
 * @field otherSide: represents the other lane.
 * 
 * @category: Road Topology information
 * @revision: Created in V2.1.1
 */
TrafficIslandPosition ::= SEQUENCE {
    oneSide      LanePositionAndType,
    otherSide    LanePositionAndType,
    ...
}

/** 
 * This DF provides detailed information about an attached trailer.
 *
tijinkj's avatar
tijinkj committed
 * It shall include the following components: 
tijinkj's avatar
tijinkj committed
 *
 * @field refPointId: identifier of the reference point of the trailer.
 *
 * @field hitchPointOffset: optional position of the hitch point in negative x-direction (according to ISO 8855) from the
 * vehicle Reference Point.
 *
tijinkj's avatar
tijinkj committed
 * @field frontOverhang: optional length of the trailer overhang in the positive x direction (according to ISO 8855) from the
tijinkj's avatar
tijinkj committed
 * 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.
 *
tijinkj's avatar
tijinkj committed
 * @field rearOverhang: optional length of the trailer overhang in the negative x direction (according to ISO 8855) from the
tijinkj's avatar
tijinkj committed
 * trailer Reference Point indicated by the refPointID.
 *
 * @field trailerWidth: optional width of the trailer.
 *
tijinkj's avatar
tijinkj committed
 * @field hitchAngle: optional Value and confidence value of the angle between the trailer orientation (corresponding to the x
tijinkj's avatar
tijinkj committed
 * direction of the ISO 8855 [21] coordinate system centered on the trailer) and the direction of
tijinkj's avatar
tijinkj committed
 * the segment having as end points the reference point of the trailer and the reference point of
 * the pulling vehicle, which can be another trailer or a vehicle looking on the horizontal plane
tijinkj's avatar
tijinkj committed
 * xy, described in the local Cartesian coordinate system of the trailer. The
tijinkj's avatar
tijinkj committed
 * angle is measured with negative values considering the trailer orientation turning clockwise
 * starting from the segment direction. The angle value accuracy is provided with the
 * confidence level of 95 %.
 *
 * @category: Vehicle information
 * @revision: Created in V2.1.1
*/
tijinkj's avatar
tijinkj committed
TrailerData ::= SEQUENCE { 
tijinkj's avatar
tijinkj committed
    refPointId          Identifier1B,
tijinkj's avatar
tijinkj committed
    hitchPointOffset    StandardLength1B, 
    frontOverhang       StandardLength1B OPTIONAL, 
    rearOverhang        StandardLength1B OPTIONAL, 
    trailerWidth        VehicleWidth OPTIONAL,
tijinkj's avatar
tijinkj committed
    hitchAngle          CartesianAngle,
    ...
}

/**
 * This DF  provides the trajectory  interception  indication  of  ego-VRU  ITS-S  with another ITS-Ss. 
 *
tijinkj's avatar
tijinkj committed
 * It shall include the following components: 
tijinkj's avatar
tijinkj committed
 * 
 * @field subjectStation: indicates the subject station.
 * 
 * @field trajectoryInterceptionProbability: indicates the propbability of the interception of the subject station trajectory 
 * with the trajectory of the station indicated in the component subjectStation.
 *
 * @field trajectoryInterceptionConfidence: indicates the confidence of interception of the subject station trajectory 
 * with the trajectory of the station indicated in the component subjectStation.
 * 
 * @category: Vehicle information
 * @revision: Created in V2.1.1
 */
TrajectoryInterceptionIndication  ::= SEQUENCE {
tijinkj's avatar
tijinkj committed
   subjectStation                     StationId OPTIONAL, 
   trajectoryInterceptionProbability  TrajectoryInterceptionProbability,
   trajectoryInterceptionConfidence   TrajectoryInterceptionConfidence OPTIONAL,
tijinkj's avatar
tijinkj committed
        ... 
tijinkj's avatar
tijinkj committed
}
tijinkj's avatar
tijinkj committed

/**
 * This DF together with its sub DFs Ext1, Ext2 and the DE Ext3 provides the custom (i.e. not ASN.1 standard) definition of an integer with variable lenght, that can be used for example to encode the ITS-AID. 
 *
tijinkj's avatar
tijinkj committed
 * @category: Basic information
tijinkj's avatar
tijinkj committed
 * @revision: Created in V2.1.1
 */
VarLengthNumber::=CHOICE{
	content	    [0] INTEGER(0..127), -- one octet length
	extension	[1]	Ext1
	}
Ext1::=CHOICE{
	content	    [0]	INTEGER(128..16511), -- two octets length
	extension	[1]	Ext2
}
Ext2::=CHOICE{
	content	    [0]	INTEGER(16512..2113663), -- three octets length
	extension	[1]	Ext3
	}
Ext3::= INTEGER(2113664..270549119,...) -- four and more octets length

/**
tijinkj's avatar
tijinkj committed
 * This DF indicates the vehicle acceleration at vertical direction and the associated confidence value.
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * It shall include the following components: 
tijinkj's avatar
tijinkj committed
 * 
 * @field verticalAccelerationValue: vertical acceleration value at a point in time.
 * 
tijinkj's avatar
tijinkj committed
 * @field verticalAccelerationConfidence: confidence value of the vertical acceleration value with a predefined confidence level.
tijinkj's avatar
tijinkj committed
 * 
tijinkj's avatar
tijinkj committed
 * @note: this DF is kept for backwards compatibility reasons only. It is recommended to use @ref AccelerationComponent instead.
tijinkj's avatar
tijinkj committed
 * @category Vehicle information
tijinkj's avatar
tijinkj committed
 * @revision: Description revised in V2.1.1
tijinkj's avatar
tijinkj committed
 */
VerticalAcceleration ::= SEQUENCE {
    verticalAccelerationValue         VerticalAccelerationValue,
    verticalAccelerationConfidence    AccelerationConfidence
}

/**
 * This DF provides information related to the identification of a vehicle.
 *
tijinkj's avatar
tijinkj committed
 * It shall include the following components: 
tijinkj's avatar
tijinkj committed
 * 
 * @field wMInumber: World Manufacturer Identifier (WMI) code.
 * 
 * @field vDS: Vehicle Descriptor Section (VDS). 
 * 
 * @category: Vehicle information
 * @revision: V1.3.1
 */
VehicleIdentification ::= SEQUENCE {
    wMInumber    WMInumber OPTIONAL,
    vDS          VDS OPTIONAL,
    ...
}

/**
 * This DF represents the length of vehicle and accuracy indication information.
 *
tijinkj's avatar
tijinkj committed
 * It shall include the following components: 
tijinkj's avatar
tijinkj committed
 * 
 * @field vehicleLengthValue: length of vehicle. 
 * 
tijinkj's avatar
tijinkj committed
 * @field vehicleLengthConfidenceIndication: indication of the length value confidence.
tijinkj's avatar
tijinkj committed
 * 
tijinkj's avatar
tijinkj committed
 * @note: this DF is kept for backwards compatibility reasons only. It is recommended to use @ref VehicleLengthV2 instead.
tijinkj's avatar
tijinkj committed
 * @category: Vehicle information
 * @revision: V1.3.1
 */
VehicleLength ::= SEQUENCE {
    vehicleLengthValue                   VehicleLengthValue,
    vehicleLengthConfidenceIndication    VehicleLengthConfidenceIndication
}

tijinkj's avatar
tijinkj committed
/**
 * This DF represents the length of vehicle and accuracy indication information.
 *
 * It shall include the following components: 
 * 
 * @field vehicleLengthValue: length of vehicle. 
 * 
 * @field trailerPresenceInformation: information about the trailer presence.
 * 
 * @category: Vehicle information
tijinkj's avatar
tijinkj committed
 * @revision: created in V2.1.1 based on @ref VehicleLength but using @ref TrailerPresenceInformation.
tijinkj's avatar
tijinkj committed
 */
VehicleLengthV2 ::= SEQUENCE {
    vehicleLengthValue            VehicleLengthValue,
    trailerPresenceInformation    TrailerPresenceInformation
}

/**
 * This DF represents a velocity vector with associated confidence value.
 *
 * The following options are available:
 * 
tijinkj's avatar
tijinkj committed
 * @field polarVelocity: the representation of the velocity vector in a polar or cylindrical coordinate system. 
tijinkj's avatar
tijinkj committed
 * 
 * @field cartesianVelocity: the representation of the velocity vector in a cartesian coordinate system.
 * 
tijinkj's avatar
tijinkj committed
 * @category: Kinematic information
tijinkj's avatar
tijinkj committed
 * @revision: Created in V2.1.1
 */
Velocity3dWithConfidence::= CHOICE{
tijinkj's avatar
tijinkj committed
    polarVelocity          VelocityPolarWithZ, 
    cartesianVelocity      VelocityCartesian
tijinkj's avatar
tijinkj committed
}

/**
 * This DF represents a velocity vector in a cartesian coordinate system.
 
 * It shall include the following components: 
 * 
 * @field xVelocity: the x component of the velocity vector with the associated confidence value.
 * 
 * @field yVelocity: the y component of the velocity vector with the associated confidence value.
 *
 * @field zVelocity: the optional z component of the velocity vector with the associated confidence value.
 * 
tijinkj's avatar
tijinkj committed
 * @category: Kinematic information
tijinkj's avatar
tijinkj committed
 * @revision: Created in V2.1.1
 */
VelocityCartesian::= SEQUENCE {
    xVelocity   VelocityComponent,
    yVelocity   VelocityComponent,
    zVelocity   VelocityComponent OPTIONAL
}

/**
 * This DF represents a component of the velocity vector and the associated confidence value.
 *
 * It shall include the following components: 
 * 
 * @field value: the value of the component.
 * 
 * @field confidence: the confidence value of the value.
 *
tijinkj's avatar
tijinkj committed
 * @category: Kinematic information
tijinkj's avatar
tijinkj committed
 * @revision: V2.1.1
 */
VelocityComponent ::= SEQUENCE {
tijinkj's avatar
tijinkj committed
    value         VelocityComponentValue,
tijinkj's avatar
tijinkj committed
    confidence    SpeedConfidence
}

/**
tijinkj's avatar
tijinkj committed
 * This DF represents a velocity vector in a polar or cylindrical coordinate system.
 *
tijinkj's avatar
tijinkj committed
 * It shall include the following components: 
 * 
tijinkj's avatar
tijinkj committed
 * @field velocityMagnitude: magnitude of the velocity vector on the reference plane, with the associated confidence value.
tijinkj's avatar
tijinkj committed
 * 
tijinkj's avatar
tijinkj committed
 * @field velocityDirection: polar angle of the velocity vector on the reference plane, with the associated confidence value.
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field zVelocity: the optional z component of the velocity vector along the reference axis of the cylindrical coordinate system, with the associated confidence value.
tijinkj's avatar
tijinkj committed
 * 
tijinkj's avatar
tijinkj committed
 * @category: Kinematic information
tijinkj's avatar
tijinkj committed
 * @revision: Created in V2.1.1
 */
VelocityPolarWithZ::= SEQUENCE {
tijinkj's avatar
tijinkj committed
    velocityMagnitude    Speed, 
tijinkj's avatar
tijinkj committed
    velocityDirection    CartesianAngle,
    zVelocity            VelocityComponent OPTIONAL
}

tijinkj's avatar
tijinkj committed
/** 
 * This DF provides information about a VRU cluster.
 *
tijinkj's avatar
tijinkj committed
 * It shall include the following components: 
tijinkj's avatar
tijinkj committed
 *
 * @field clusterId: optional identifier of a VRU cluster .
 *
tijinkj's avatar
tijinkj committed
 * @field clusterBoundingBoxShape: optionally indicates the shape of the cluster bounding box, per default inside an East-North-Up coordinate system 
 * centered around a reference point defined outside of the context of this DF.
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field clusterCardinalitySize: indicates an estimation of the number of VRUs in the group, e.g. the known members in the cluster + 1 (for the cluster leader) .
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field clusterProfiles: optionally identifies all the VRU profile types that are estimated to be within the cluster.
tijinkj's avatar
tijinkj committed
 * if this component is absent it means that the information is unavailable. 
tijinkj's avatar
tijinkj committed
 *
 * @category: VRU information
tijinkj's avatar
tijinkj committed
 * @revision: Created in V2.1.1, description revised in V2.2.1
tijinkj's avatar
tijinkj committed
*/
VruClusterInformation ::= SEQUENCE { 
tijinkj's avatar
tijinkj committed
   clusterId                  Identifier1B OPTIONAL,
   clusterBoundingBoxShape    Shape (WITH COMPONENTS{..., elliptical ABSENT, radial ABSENT, radialShapes ABSENT}) OPTIONAL,
   clusterCardinalitySize     CardinalNumber1B,
tijinkj's avatar
tijinkj committed
   clusterProfiles            VruClusterProfiles OPTIONAL,
tijinkj's avatar
tijinkj committed
   ...
}

tijinkj's avatar
tijinkj committed
/**
 * This DF represents the status of the exterior light switches of a VRU.
 * This DF is an extension of the vehicular DE @ref ExteriorLights.
 *
 * It shall include the following components: 
 * 
 * @field vehicular:  represents the status of the exterior light switches of a road vehicle.
 * 
 * @field vruSpecific: represents the status of the exterior light switches of a VRU.
 *
 * @category: VRU information
 * @revision: created in V2.1.1
 */
VruExteriorLights ::= SEQUENCE {
   vehicular      ExteriorLights, 
   vruSpecific    VruSpecificExteriorLights,
   ...
}

tijinkj's avatar
tijinkj committed
/**
 * This DF indicates the profile of a VRU including sub-profile information
tijinkj's avatar
tijinkj committed
 * It identifies four options corresponding to the four types of VRU profiles specified in ETSI TS 103 300-2 [18]:
tijinkj's avatar
tijinkj committed
 *
 * @field pedestrian: VRU Profile 1 - Pedestrian.
 *
 * @field bicyclistAndLightVruVehicle: VRU Profile  2 - Bicyclist.
 *
 * @field motorcyclist: VRU Profile 3  - Motorcyclist.
 *
tijinkj's avatar
tijinkj committed
 * @field animal: VRU Profile  4 -  Animal.
tijinkj's avatar
tijinkj committed
 *
 * @category: VRU information
 * @revision: Created in V2.1.1
 */
VruProfileAndSubprofile ::= CHOICE {
   pedestrian                     VruSubProfilePedestrian,
   bicyclistAndLightVruVehicle    VruSubProfileBicyclist,
tijinkj's avatar
tijinkj committed
   motorcyclist                   VruSubProfileMotorcyclist,
tijinkj's avatar
tijinkj committed
   animal                         VruSubProfileAnimal,
   ...
}

/** 
tijinkj's avatar
tijinkj committed
 * This DF represents an angular component along with a confidence value in the WGS84 coordinate system.
 * The specific WGS84 coordinate system is specified by the corresponding standards applying this DE.
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * It shall include the following components: 
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field value: the angle value, which can be estimated as the mean of the current distribution.
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @field confidence: the confidence value associated to the angle value.
tijinkj's avatar
tijinkj committed
 *
 * @category: GeoReference information
 * @revision: Created in V2.1.1
*/
Wgs84Angle ::= SEQUENCE {
    value         Wgs84AngleValue,
    confidence    Wgs84AngleConfidence
}


/**
 * This DF represents a yaw rate of vehicle at a point in time.
 *
tijinkj's avatar
tijinkj committed
 * It shall include the following components: 
tijinkj's avatar
tijinkj committed
 * 
 * @field yawRateValue: yaw rate value at a point in time.
 * 
tijinkj's avatar
tijinkj committed
 * @field yawRateConfidence: confidence value associated to the yaw rate value.
tijinkj's avatar
tijinkj committed
 * 
 * @category: Vehicle Information
 * @revision: V1.3.1
 */
YawRate::= SEQUENCE {
    yawRateValue         YawRateValue,
    yawRateConfidence    YawRateConfidence
}

tijinkj's avatar
tijinkj committed
------------------------------------------
/** 
 * ## References:
 * 1.   ETSI TS 103 900: "Intelligent Transport Systems (ITS); Vehicular Communications; Basic Set of Applications; Part 2: Specification of Cooperative Awareness Basic Service; Release 2".
 * 2.   ETSI TS 103 831: "Intelligent Transport Systems (ITS); Vehicular Communications; Basic Set of Applications; Part 3: Specifications of Decentralized Environmental Notification Basic Service"; Release 2.
 * 3.   [European Agreement (Applicable as from 1 January 2011): "Concerning the International Carriage of Dangerous Goods by Road"](http://www.unece.org/trans/danger/publi/adr/adr2011/11ContentsE.html).
 * 4.   [United Nations: "Recommendations on the Transport of Dangerous Goods - Model Regulations", Twelfth revised edition](http://www.unece.org/trans/danger/publi/unrec/12_e.html).
 * 5.   ETSI TS 101 539-1: "Intelligent Transport Systems (ITS); V2X Applications; Part 1: Road Hazard Signalling (RHS) application requirements specification".
 * 6.   ISO 3779 (2011-07): "Road vehicles - Vehicle identification number (VIN) Content and structure".
 * 7.   VDV recommendation 420 (1992): "Technical Requirements for Automatic Vehicle Location / Control Systems - Radio Data Transmission (BON Version) with Supplement 1 and Supplement 2".
 * 8.   ISO 1176:1990: "Road vehicles - Masses - Vocabulary and codes".
 * 9.   ETSI TS 101 556-1: "Intelligent Transport Systems (ITS); Infrastructure to Vehicle Communication; Electric Vehicle Charging Spot Notification Specification".
 * 10.  ETSI TS 101 556-2: "Intelligent Transport Systems (ITS); Infrastructure to Vehicle Communication; Part 2: Communication system specification to support application requirements for Tyre Information System (TIS) and Tyre Pressure Gauge (TPG) interoperability".
 * 11.  ETSI TS 101 556-3: "Intelligent Transport Systems (ITS); Infrastructure to Vehicle Communications; Part 3: Communications system for the planning and reservation of EV energy supply using wireless networks".
 * 12.  ETSI TS 103 300-3: "Intelligent Transport Systems (ITS);  Vulnerable Road Users (VRU) awareness;  Part 3: Specification of VRU awareness basic service; Release 2"
 * 13.  ETSI TS 103 724: "Intelligent Transport Systems (ITS); Facilities layer  function; Interference Management Zone Message (IMZM); Release 2"
 * 14.	ETSI TS 102 792: "Intelligent Transport Systems (ITS); Mitigation techniques to avoid interference between European CEN Dedicated Short Range Communication (CEN DSRC) equipment and Intelligent Transport Systems (ITS) operating in the 5 GHz frequency range".
 * 15.	ETSI TS 103 301: "Intelligent Transport Systems (ITS); Vehicular Communications; Basic Set of Applications; Facilities layer protocols and communication requirements for infrastructure services; Release 2".
 * 16.	UNECE/TRANS/WP.29/78/Rev.4: "Consolidated Resolution on the Construction of Vehicles (R.E.3)".
 * 17.	ETSI EN 302 890-1: "Intelligent Transport Systems (ITS); Facilities layer function; Part 1: Services Announcement (SA) specification".
 * 18.	ETSI TS 103 300-2 "Intelligent Transport System (ITS); Vulnerable Road Users (VRU) awareness; Part 2: Functional  Architecture and Requirements definition; Release 2"
 * 19.	ETSI TS 103 175  "Intelligent Transport Systems (ITS); Cross  Layer DCC Management  Entity for operation in  the ITS G5A  and ITS G5B medium"
 * 20.	ETSI EN 302 571  "Intelligent Transport Systems (ITS); Radiocommunications equipment operating in the 5 855 MHz to 5 925 MHz frequency  band; Harmonised Standard  covering  the essential  requirements of article 3.2 of  Directive 2014/53/EU"
 * 21.	ISO 8855: "Road vehicles - Vehicle dynamics and road-holding ability - Vocabulary".
 * 22.  ISO 3833, "Road vehicles - Types - Terms and definitions".