IS_TS103301.md 262 KB
Newer Older
Thomas Ritter's avatar
Thomas Ritter committed
# <a name="IVIM-PDU-Descriptions"></a>ASN.1 module IVIM-PDU-Descriptions
OID: _{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts103301 (103301) ivim (2) major-version-2 (2) minor-version-1 (1) }_
Thomas Ritter's avatar
Thomas Ritter committed
draft 001 of the IVIM-PDU-Descriptions module for TS 103 301 V2.2.1 integrating:
 initial revision based on ASN.1 files of [ISO TS 19091] and [SAE J2735]

## Imports:
* **[IVI](IVI.md)** *{ iso (1) standard (0) ivi (19321) major-version-3 (3) minor-version-1 (1) } WITH SUCCESSORS*<br/>
Thomas Ritter's avatar
Thomas Ritter committed
* **[ETSI-ITS-CDD](ETSI-ITS-CDD.md)** *{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-4 (4) minor-version-1 (1) } WITH SUCCESSORS*<br/>
## Data Elements:
### <a name="IVIM"></a>IVIM
In vehicle information Message Message
 This DF includes DEs for the IVIM protocolVersion, the IVI message type identifier `messageID`,
 the station identifier `stationID` of the originating ITS-S and the IVI data from ISO TS 19321.
Thomas Ritter's avatar
Thomas Ritter committed

* _header_ of type [**ItsPduHeader**](ETSI-ITS-CDD.md#ItsPduHeader) <br>
  The DE `protocolVersion` is used to select the appropriate protocol decoder at the receiving ITS-S. 
                  It shall be set to 2.
                  The DE `messageID` shall be ivim(6).
Thomas Ritter's avatar
Thomas Ritter committed

* _ivi_ of type [**IviStructure**](IVI.md#IviStructure) <br>
  contains the IVI data as defined in ISO TS 19321.
Thomas Ritter's avatar
Thomas Ritter committed


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Basic Information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
IVIM ::= SEQUENCE {
    header  ItsPduHeader,
    ivi     IviStructure
}
```



# <a name="MAPEM-PDU-Descriptions"></a>ASN.1 module MAPEM-PDU-Descriptions
OID: _{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts103301 (103301) mapem (1) version2 (2) }_
draft 001 of the MAPEM-PDU-Descriptions module for TS 103 831 V2.2.1 integrating:
 initial revision based on ASN.1 files of [ISO TS 19091] and [SAE J2735]

## Imports:
* **[ETSI-ITS-DSRC](ETSI-ITS-DSRC.md)** *{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts103301 (103301) dsrc (6) major-version-2 (2) minor-version-1 (1) } WITH SUCCESSORS*<br/>
Thomas Ritter's avatar
Thomas Ritter committed
   Includes from ETSI-ITS-DSRC* **[ETSI-ITS-CDD](ETSI-ITS-CDD.md)** *{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-4 (4) minor-version-1 (1) } WITH SUCCESSORS*<br/>
   Include ETSI TS 102 894-2 (ETSI-ITS-CDD)## Data Elements:
### <a name="MAPEM"></a>MAPEM
Map (lane topology) extended Message
 This DF includes DEs for the MAPEM: protocolVersion, the MAPEM message type identifier `messageID`, 
 the station identifier `stationID` of the originating ITS-S and the Map data from ETSI-ITS-DSRC.
Thomas Ritter's avatar
Thomas Ritter committed

* _header_ of type [**ItsPduHeader**](ETSI-ITS-CDD.md#ItsPduHeader) <br>
  The DE `protocolVersion` is used to select the appropriate protocol decoder at the receiving ITS-S. 
                   It shall be set to 2.
                   The DE `messageID` shall be mapem(5).
Thomas Ritter's avatar
Thomas Ritter committed

* _map_ of type [**MapData**](ETSI-ITS-DSRC.md#MapData) <br>
  contains the MAP data as defined in ETSI-ITS-DSRC.
Thomas Ritter's avatar
Thomas Ritter committed


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Basic Information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
MAPEM ::= SEQUENCE {
    header  ItsPduHeader,
    map	    MapData
}
```



# <a name="SPATEM-PDU-Descriptions"></a>ASN.1 module SPATEM-PDU-Descriptions
OID: _{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts103301 (103301) spatem (0) major-version-2 (2) minor-version-1 (1) }_
draft 001 of the SPATEM-PDU-Descriptions module for TS 103 301 V2.2.1 integrating:
 initial revision based on ASN.1 files of [ISO TS 19091] and [SAE J2735]

## Imports:
* **[ETSI-ITS-DSRC](ETSI-ITS-DSRC.md)** *{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts103301 (103301) dsrc (6) major-version-2 (2) minor-version-1 (1) } WITH SUCCESSORS*<br/>
Thomas Ritter's avatar
Thomas Ritter committed
   Includes from ETSI-ITS-DSRC* **[ETSI-ITS-CDD](ETSI-ITS-CDD.md)** *{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-4 (4) minor-version-1 (1) } WITH SUCCESSORS*<br/>
   Include ETSI TS 102 894-2 (ETSI-ITS-CDD)## Data Elements:
### <a name="SPATEM"></a>SPATEM
Signal phase and timing extended Message

 Signal phase and timing extended Message Root
 This DF includes DEs for the SPATEM: protocolVersion, the SPATEM message type identifier `messageID`,
 the station identifier `stationID` of the originating ITS-S and the SPaT data from ETSI-ITS-DSRC module.
Thomas Ritter's avatar
Thomas Ritter committed

* _header_ of type [**ItsPduHeader**](ETSI-ITS-CDD.md#ItsPduHeader) <br>
  The DE `protocolVersion` used to select the appropriate protocol decoder at the receiving ITS-S. 
                   It shall be set to 2.
                   The DE `messageID` shall be spatem(4).
Thomas Ritter's avatar
Thomas Ritter committed

* _spat_ of type [**SPAT**](ETSI-ITS-DSRC.md#SPAT) <br>
  contains the SPaT data as defined in ETSI-ITS-DSRC.
Thomas Ritter's avatar
Thomas Ritter committed


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Basic Information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SPATEM ::= SEQUENCE {
    header  ItsPduHeader,
    spat    SPAT
}
```



# <a name="SREM-PDU-Descriptions"></a>ASN.1 module SREM-PDU-Descriptions
OID: _{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts103301 (103301) srem (3) version2 (2) }_
draft 001 of the SREM-PDU-Descriptions module for TS 103 831 V2.2.1 integrating:
 initial revision based on ASN.1 files of [ISO TS 19091] and [SAE J2735]

## Imports:
* **[ETSI-ITS-DSRC](ETSI-ITS-DSRC.md)** *{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts103301 (103301) dsrc (6) major-version-2 (2) minor-version-1 (1) } WITH SUCCESSORS*<br/>
Thomas Ritter's avatar
Thomas Ritter committed
   Includes from ETSI-ITS-DSRC* **[ETSI-ITS-CDD](ETSI-ITS-CDD.md)** *{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-4 (4) minor-version-1 (1) } WITH SUCCESSORS*<br/>
   Include ETSI TS 102 894-2 (ETSI-ITS-CDD)## Data Elements:
### <a name="SREM"></a>SREM
Signal request extended Message Message
 This DF includes DEs for the SREM: protocolVersion, the SREM message type identifier `messageID`,
 the station identifier `stationID` of the originating ITS-S and the signal request data from ETSI-ITS-DSRC.
Thomas Ritter's avatar
Thomas Ritter committed

* _header_ of type [**ItsPduHeader**](ETSI-ITS-CDD.md#ItsPduHeader) <br>
  The DE `protocolVersion` is used to select the appropriate protocol decoder at the receiving ITS-S. 
                  It shall be set to 2.
                  The DE `messageID` shall be srem(9).
Thomas Ritter's avatar
Thomas Ritter committed

* _srm_ of type [**SignalRequestMessage**](ETSI-ITS-DSRC.md#SignalRequestMessage) <br>
  contains the Signal request data as defined in ETSI-ITS-DSRC.
Thomas Ritter's avatar
Thomas Ritter committed


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Basic Information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SREM ::= SEQUENCE {
    header  ItsPduHeader,
    srm     SignalRequestMessage
}
```



# <a name="SSEM-PDU-Descriptions"></a>ASN.1 module SSEM-PDU-Descriptions
OID: _{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts103301 (103301) ssem (4) version2 (2) }_
draft 001 of the SSEM-PDU-Descriptions module for TS 103 831 V2.2.1 integrating:
 initial revision based on ASN.1 files of [ISO TS 19091] and [SAE J2735]

## Imports:
* **[ETSI-ITS-DSRC](ETSI-ITS-DSRC.md)** *{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts103301 (103301) dsrc (6) major-version-2 (2) minor-version-1 (1) } WITH SUCCESSORS*<br/>
Thomas Ritter's avatar
Thomas Ritter committed
   Includes from ETSI-ITS-DSRC* **[ETSI-ITS-CDD](ETSI-ITS-CDD.md)** *{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-4 (4) minor-version-1 (1) } WITH SUCCESSORS*<br/>
   Include ETSI TS 102 894-2 (ETSI-ITS-CDD)## Data Elements:
### <a name="SSEM"></a>SSEM
Signal status extended Message
 
 This DF includes DEs for the SSEM: protocolVersion, the SSEM message type identifier `messageID` and
 the station identifier `stationID` of the originating ITS-S and the signal status data from ETSI-ITS-DSRC.
Thomas Ritter's avatar
Thomas Ritter committed

* _header_ of type [**ItsPduHeader**](ETSI-ITS-CDD.md#ItsPduHeader) <br>
  The DE `protocolVersion` is used to select the appropriate protocol decoder at the receiving ITS-S. 
                  It shall be set to 2.
                  The DE `messageID` shall be ssem(10).
Thomas Ritter's avatar
Thomas Ritter committed

* _ssm_ of type [**SignalStatusMessage**](ETSI-ITS-DSRC.md#SignalStatusMessage) <br>
  contains the Signal status data as defined in ETSI-ITS-DSRC.
Thomas Ritter's avatar
Thomas Ritter committed


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Basic Information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SSEM ::= SEQUENCE {
    header  ItsPduHeader,
    ssm     SignalStatusMessage
}
```



# <a name="RTCMEM-PDU-Descriptions"></a>ASN.1 module RTCMEM-PDU-Descriptions
OID: _{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts103301 (103301) rtcmem (5) version1 (1) }_
draft 001 of the RTCMEM-PDU-Descriptions module for TS 103 831 V2.2.1 integrating:
 initial revision based on ASN.1 files of [ISO TS 19091] and [SAE J2735]

## Imports:
* **[ETSI-ITS-DSRC](ETSI-ITS-DSRC.md)** *{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts103301 (103301) dsrc (6) major-version-2 (2) minor-version-1 (1) } WITH SUCCESSORS*<br/>
Thomas Ritter's avatar
Thomas Ritter committed
   Includes from ETSI-ITS-DSRC* **[ETSI-ITS-CDD](ETSI-ITS-CDD.md)** *{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-4 (4) minor-version-1 (1) } WITH SUCCESSORS*<br/>
   Include ETSI TS 102 894-2 (ETSI-ITS-CDD)## Data Elements:
### <a name="RTCMEM"></a>RTCMEM
RTCM corrections extended extended Message
 This DF includes DEs for the RTCMEM: protocolVersion, the RTCMEM message type identifier `messageID`,
 the station identifier `stationID` of the originating ITS-S and the RTCM corrections as of ETSI-ITS-DSRC.
Thomas Ritter's avatar
Thomas Ritter committed

* _header_ of type [**ItsPduHeader**](ETSI-ITS-CDD.md#ItsPduHeader) <br>
  The DE `protocolVersion` is used to select the appropriate protocol decoder at the receiving ITS-S. 
                  It shall be set to 1.
                  The DE `messageID` shall be rtcmem(13).
Thomas Ritter's avatar
Thomas Ritter committed

* _rtcmc_ of type [**RTCMcorrections**](ETSI-ITS-DSRC.md#RTCMcorrections) <br>
  contains the RTCM corrections data as defined in ETSI-ITS-DSRC.
Thomas Ritter's avatar
Thomas Ritter committed


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Basic Information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RTCMEM ::= SEQUENCE {
    header  ItsPduHeader,
    rtcmc   RTCMcorrections
}
```



# <a name="ETSI-ITS-DSRC"></a>ASN.1 module ETSI-ITS-DSRC
OID: _{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts103301 (103301) dsrc (6) major-version-2 (2) minor-version-1 (1) }_
Thomas Ritter's avatar
Thomas Ritter committed
draft 001 of the ETSI-ITS-DSRC module for TS 103 301 V2.2.1 integrating:
 initial revision based on ASN.1 files of [ISO TS 19091] and [SAE J2735]

## Imports:
* **[ETSI-ITS-CDD](ETSI-ITS-CDD.md)** *{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-4 (4) minor-version-1 (1) } WITH SUCCESSORS*<br/>
* **[ETSI-ITS-DSRC-REGION](ETSI-ITS-DSRC-REGION.md)** *{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts103301 (103301) dsrc (6) region (1) major-version-2 (2) minor-version-1 (1) } WITH SUCCESSORS*<br/>
Thomas Ritter's avatar
Thomas Ritter committed
## Data Elements:
### <a name="REG-EXT-ID-AND-TYPE"></a>REG-EXT-ID-AND-TYPE
This information object class is an abstract template to instantiate region extension.

* _id_ of type [**RegionId**](#RegionId)  UNIQUE<br>
  the identifier of the region type.

* Type<br>
  the extension content


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Basic Information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
REG-EXT-ID-AND-TYPE ::= CLASS {
  &id     RegionId UNIQUE,
  &Type
} WITH SYNTAX {&Type IDENTIFIED BY &id}
```

### <a name="RegionalExtension"></a>RegionalExtension
This DF represents a Region extension preceded by its type identifier and a lenght indicator.

 It shall include the following components:

* _regionId_ of type [**REG-EXT-ID-AND-TYPE**](ETSI-ITS-DSRC.md#REG-EXT-ID-AND-TYPE) .&id( {Set} )<br>
  the identifier of the region.

* _regExtValue_ of type [**REG-EXT-ID-AND-TYPE**](ETSI-ITS-DSRC.md#REG-EXT-ID-AND-TYPE) .&Type( {Set}{@regionId} )<br>
  the extension content consistent with the region type.


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Basic Information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RegionalExtension {REG-EXT-ID-AND-TYPE : Set} ::= SEQUENCE {
  regionId     REG-EXT-ID-AND-TYPE.&id( {Set} ),
  regExtValue  REG-EXT-ID-AND-TYPE.&Type( {Set}{@regionId} )
}
```

### <a name="MapData"></a>MapData
This DF is used to convey many types of geographic road information. At the current time its primary
 use is to convey one or more intersection lane geometry maps within a single message. The map message content
 includes such items as complex intersection descriptions, road segment descriptions, high speed curve outlines (used in
 curve safety messages), and segments of roadway (used in some safety applications). A given single MapData message
 may convey descriptions of one or more geographic areas or intersections. The contents of this message involve defining
 the details of indexing systems that are in turn used by other messages to relate additional information (for example, the
 signal phase and timing via the SPAT message) to events at specific geographic locations on the roadway.

Values:
* _timeStamp_ of type [**MinuteOfTheYear**](#MinuteOfTheYear)  OPTIONAL<br>
  time reference

* _msgIssueRevision_ of type [**MsgCount**](#MsgCount) <br>
  The MapData revision is defined by the data element `revision` for each intersection
                            geometry (see [ISO TS 19091] G.8.2.4.1). Therefore, an additional revision indication of the overall
                            MapData message is not used in this profile. It shall be set to "0" for this profile.

* _layerType_ of type [**LayerType**](#LayerType)  OPTIONAL<br>
  There is no need to additionally identify the topological content by an additional identifier. The ASN.1
                     definition of the data frames `intersections` and `roadSegments` are clearly defined and need no
                     additional identifier. Therefore, this optional data element shall not be used in this profile.

* _layerID_ of type [**LayerID**](#LayerID)   OPTIONAL<br>
  This profile extends the purpose of the `layerID` data element as defined in SAE J2735 as follows: For
                   large intersections, the length of a MapData description may exceed the maximum data length of the
                   communication message. Therefore, a fragmentation of the MapData message (at application layer) in
                   two or more MapData fragments may be executed. If no MapData fragmentation is needed, the `layerID`
                   shall not be used. For more details, see the definition of the data element [**LayerID**](#LayerID).

* _intersections_ of type [**IntersectionGeometryList**](#IntersectionGeometryList)  OPTIONAL<br>
  All Intersection definitions.

* _roadSegments_ of type [**RoadSegmentList**](#RoadSegmentList)  OPTIONAL<br>
  All roadway descriptions.

* _dataParameters_ of type [**DataParameters**](#DataParameters)  OPTIONAL<br>
  Any meta data regarding the map contents.

* _restrictionList_ of type [**RestrictionClassList**](#RestrictionClassList)  OPTIONAL<br>
  Any restriction ID tables which have established for these map entries

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  This profile extends the MapData message with the regional data element [**MapData-addGrpC**](ETSI-ITS-DSRC-AddGrpC.md#MapData-addGrpC)

* **RegionalExtension** {{Reg-MapData}} OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Road topology information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
MapData ::= SEQUENCE {
  timeStamp         MinuteOfTheYear OPTIONAL,
  msgIssueRevision  MsgCount,
  layerType         LayerType OPTIONAL,
  layerID           LayerID  OPTIONAL,
  intersections     IntersectionGeometryList OPTIONAL,
  roadSegments      RoadSegmentList OPTIONAL,
  dataParameters    DataParameters OPTIONAL,
  restrictionList   RestrictionClassList OPTIONAL,
  regional          SEQUENCE (SIZE(1..4)) OF
                    RegionalExtension {{Reg-MapData}} OPTIONAL,
  ...
}
```

### <a name="RTCMcorrections"></a>RTCMcorrections
This DF is used to encapsulate RTCM differential corrections for GPS and other radio
 navigation signals as defined by the RTCM (Radio Technical Commission For Maritime Services) special committee
 number 104 in its various standards. Here, in the work of DSRC, these messages are "wrapped" for transport on the
 DSRC media, and then can be re-constructed back into the final expected formats defined by the RTCM standard and
 used directly by various positioning systems to increase the absolute and relative accuracy estimates produced.

Values:
* _msgCnt_ of type [**MsgCount**](#MsgCount) <br>
  monotonic incrementing identifier.

* _rev_ of type [**RTCM-Revision**](#RTCM-Revision) <br>
  the specific edition of the standard that is being sent.

* _timeStamp_ of type [**MinuteOfTheYear**](#MinuteOfTheYear)   OPTIONAL<br>
  time reference

* _anchorPoint_ of type [**FullPositionVector**](#FullPositionVector)  OPTIONAL<br>
  Observer position, if needed.

* _rtcmHeader_ of type [**RTCMheader**](#RTCMheader)  OPTIONAL<br>
  Precise antenna position and noise data for a rover

* _msgs_ of type [**RTCMmessageList**](#RTCMmessageList) <br>
  one or more RTCM messages.

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  optional region specific data.

* **RegionalExtension** {{Reg-RTCMcorrections}} OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RTCMcorrections ::= SEQUENCE {
   msgCnt      MsgCount,
   rev         RTCM-Revision,
   timeStamp   MinuteOfTheYear  OPTIONAL,
   anchorPoint FullPositionVector OPTIONAL,
   rtcmHeader  RTCMheader OPTIONAL,
   msgs        RTCMmessageList,
   regional    SEQUENCE (SIZE(1..4)) OF
               RegionalExtension {{Reg-RTCMcorrections}} OPTIONAL,
   ...
}
```

### <a name="SPAT"></a>SPAT
This DF is used to convey the current status of one or more signalized
 intersections. Along with the MapData message (which describes a full geometric layout of an intersection) the
 receiver of this message can determine the state of the signal phasing and when the next expected phase will occur.
 The SPAT message sends the current movement state of each active phase in the system as needed (such as values of
 what states are active and values at what time a state has begun/does begin earliest, is expected to begin most likely and
 will end latest). The state of inactive movements is not normally transmitted. Movements are mapped to specific
 approaches and connections of ingress to egress lanes and by use of the SignalGroupID in the MapData message

 The current signal preemption and priority status values (when present or active) are also sent. A more complete
 summary of any pending priority or preemption events can be found in the Signal Status message.

Values:
* _timeStamp_ of type [**MinuteOfTheYear**](#MinuteOfTheYear)  OPTIONAL<br>
  time reference

* _name_ of type [**DescriptiveName**](#DescriptiveName)  OPTIONAL<br>
  human readable name for this collection. to be used only in debug mode.

* _intersections_ of type [**IntersectionStateList**](#IntersectionStateList) <br>
  sets of SPAT data (one per intersection)

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  optional region specific data.

* **RegionalExtension** {{Reg-SPAT}} OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SPAT ::= SEQUENCE {
  timeStamp     MinuteOfTheYear OPTIONAL,
  name          DescriptiveName OPTIONAL,
  intersections IntersectionStateList,
  regional      SEQUENCE (SIZE(1..4)) OF
                RegionalExtension {{Reg-SPAT}} OPTIONAL,
  ...
}
```

### <a name="SignalRequestMessage"></a>SignalRequestMessage
This DF is a message sent by a DSRC equipped entity (such as a vehicle) to the RSU in a
 signalized intersection. It is used for either a priority signal request or a preemption signal request depending on the way
 each request is set. Each request defines a path through the intersection which is desired in terms of lanes and
 approaches to be used. Each request can also contain the time of arrival and the expected duration of the service.
 Multiple requests to multiple intersections are supported. The requestor identifies itself in various ways (using methods
 supported by the @refRequestorDescription data frame), and its current speed, heading and location can be placed in this
Thomas Ritter's avatar
Thomas Ritter committed
 structure as well. The specific request for service is typically based on previously decoding and examining the list of lanes
 and approaches for that intersection (sent in MAP messages). The outcome of all of the pending requests to a signal can
 be found in the Signal Status Message (SSM), and may be reflected in the SPAT message contents if successful.

Values:
* _timeStamp_ of type [**MinuteOfTheYear**](#MinuteOfTheYear)   OPTIONAL<br>
  time reference

* _second_ of type [**DSecond**](#DSecond) <br>
  time reference

* _sequenceNumber_ of type [**MsgCount**](#MsgCount)          OPTIONAL<br>
  monotonic incrementing identifier

* _requests_ of type [**SignalRequestList**](#SignalRequestList)  OPTIONAL<br>
  Request Data for one or more signalized intersections that support SRM dialogs

* _requestor_ of type [**RequestorDescription**](#RequestorDescription) <br>
  Requesting Device and other User Data contains vehicle ID (if from a vehicle) as well as type data and current
                     position and may contain additional transit data

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  optional region specific data.

* **RegionalExtension** {{Reg-SignalRequestMessage}} OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SignalRequestMessage ::= SEQUENCE {
  timeStamp       MinuteOfTheYear  OPTIONAL,
  second          DSecond,
  sequenceNumber  MsgCount         OPTIONAL,
  requests        SignalRequestList OPTIONAL,
  requestor       RequestorDescription,
  regional        SEQUENCE (SIZE(1..4)) OF
                  RegionalExtension {{Reg-SignalRequestMessage}} OPTIONAL,
  ...
}
```

### <a name="SignalStatusMessage"></a>SignalStatusMessage
This DF is a message sent by an RSU in a signalized intersection. It is used to relate the current
 status of the signal and the collection of pending or active preemption or priority requests acknowledged by the controller.
 It is also used to send information about preemption or priority requests which were denied. This in turn allows a dialog
 acknowledgment mechanism between any requester and the signal controller. The data contained in this message allows
 other users to determine their "ranking" for any request they have made as well as to see the currently active events.
 When there have been no recently received requests for service messages, this message may not be sent. While the
 outcome of all pending requests to a signal can be found in the Signal Status Message, the current active event (if any)
 will be reflected in the SPAT message contents.

Values:
* _timeStamp_ of type [**MinuteOfTheYear**](#MinuteOfTheYear)   OPTIONAL<br>
  time reference

* _second_ of type [**DSecond**](#DSecond) <br>
  time reference

* _sequenceNumber_ of type [**MsgCount**](#MsgCount)          OPTIONAL<br>
  monotonic incrementing identifier

* _status_ of type [**SignalStatusList**](#SignalStatusList) <br>
  Status Data for one of more signalized intersections.

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  optional region specific data.

* **RegionalExtension** {{Reg-SignalStatusMessage}} OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SignalStatusMessage ::= SEQUENCE {
  timeStamp       MinuteOfTheYear  OPTIONAL,
  second          DSecond,
  sequenceNumber  MsgCount         OPTIONAL,
  status          SignalStatusList,
  regional        SEQUENCE (SIZE(1..4)) OF
                  RegionalExtension {{Reg-SignalStatusMessage}} OPTIONAL,
  ...
}
```

### <a name="AdvisorySpeed"></a>AdvisorySpeed
This DF is used to convey a recommended traveling approach speed to an intersection
 from the message issuer to various travelers and vehicle types. Besides support for various eco-driving applications, this
 allows transmitting recommended speeds for specialty vehicles such as transit buses.

Values:
* _type_ of type [**AdvisorySpeedType**](#AdvisorySpeedType) <br>
  the type of advisory which this is.

* _speed_ of type [**SpeedAdvice**](#SpeedAdvice)  OPTIONAL<br>
  See [**SpeedAdvice**](#SpeedAdvice) for converting and translating speed expressed in mph into units of m/s.
                 This element is optional ONLY when superceded by the presence of a regional speed element found in Reg-AdvisorySpeed entry

* _confidence_ of type [**SpeedConfidenceDSRC**](#SpeedConfidenceDSRC)  OPTIONAL<br>
  A confidence value for the above speed

* _distance_ of type [**ZoneLength**](#ZoneLength)  OPTIONAL<br>
  The distance indicates the region for which the advised speed is recommended, it is specified upstream from the stop bar
                    along the connected egressing lane. Unit = 1 meter 

* _class_ of type [**RestrictionClassID**](#RestrictionClassID)  OPTIONAL<br>
  the vehicle types to which it applies when absent, the AdvisorySpeed applies to all motor vehicle types

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  optional region specific data.

* **RegionalExtension** {{Reg-AdvisorySpeed}} OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
AdvisorySpeed ::= SEQUENCE {
  type        AdvisorySpeedType,
  speed       SpeedAdvice OPTIONAL,
  confidence  SpeedConfidenceDSRC OPTIONAL,
  distance    ZoneLength OPTIONAL,
  class       RestrictionClassID OPTIONAL,
  regional    SEQUENCE (SIZE(1..4)) OF
              RegionalExtension {{Reg-AdvisorySpeed}} OPTIONAL,
  ...
}
```

### <a name="AdvisorySpeedList"></a>AdvisorySpeedList
This DF consists of a list of [**AdvisorySpeed**](#AdvisorySpeed) entries.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
AdvisorySpeedList ::= SEQUENCE (SIZE(1..16)) OF AdvisorySpeed
```

### <a name="AntennaOffsetSet"></a>AntennaOffsetSet
This DF is a collection of three offset values in an orthogonal coordinate system
 which describe how far the electrical phase center of an antenna is in each axis from a nearby known anchor point in units of 1 cm.

 When the antenna being described is on a vehicle, the signed offset shall be in the coordinate system defined in section 11.4.

* _antOffsetX_ of type [**Offset-B12**](#Offset-B12) <br>
  a range of +- 20.47 meters.

* _antOffsetY_ of type [**Offset-B09**](#Offset-B09) <br>
  a range of +- 2.55 meters.

* _antOffsetZ_ of type [**Offset-B10**](#Offset-B10) <br>
  a range of +- 5.11 meters.


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
AntennaOffsetSet ::= SEQUENCE {
   antOffsetX  Offset-B12,
   antOffsetY  Offset-B09,
   antOffsetZ  Offset-B10
}
```

### <a name="ComputedLane"></a>ComputedLane
This DE is used to contain information needed to compute one lane from another
 (hence the name). This concept is used purely as a means of saving size in the message payload. The new lane is
 expressed as an X,Y offset from the first point of the source lane. It can be optionally rotated and scaled. Any attribute
 information found within the node of the source lane list cannot be changed and must be reused.

Values:
* _referenceLaneId_ of type [**LaneID**](ETSI-ITS-DSRC.md#LaneID) <br>
  the lane ID upon which this computed lane will be based Lane Offset in X and Y direction

* _offsetXaxis_ of type [**CHOICE**](#CHOICE)  {
                        small   DrivenLineOffsetSm,
                        large   DrivenLineOffsetLg
                        }<br>
  A path X offset value for translations of the path's points when creating translated lanes.

* _offsetYaxis_ of type [**CHOICE**](#CHOICE)  {
                        small   DrivenLineOffsetSm,
                        large   DrivenLineOffsetLg
                        }<br>
  The values found in the reference lane are all offset based on the X and Y values from
                       the coordinates of the reference lane's initial path point.

* _rotateXY_ of type [**Angle**](#Angle)  OPTIONAL<br>
  A path rotation value for the entire lane
                    Observe that this rotates the existing orientation
                    of the referenced lane, it does not replace it.
                    Rotation occurs about the initial path point.

* _scaleXaxis_ of type [**Scale-B12**](#Scale-B12)  OPTIONAL<br>
  value for translations or zooming of the path's points. The values found in the reference lane

* _scaleYaxis_ of type [**Scale-B12**](#Scale-B12)  OPTIONAL<br>
  are all expanded or contracted based on the X and Y and width values from the coordinates of  the reference lane's initial path point.
                      The Z axis remains untouched.

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  optional region specific data.

* **RegionalExtension** {{Reg-ComputedLane}} OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;The specified transformation shall be applied to the reference lane without any intermediary loss of precision
        (truncation). The order of the transformations shall be: the East-West and North-South offsets, the scaling factors, and
        finally the rotation.
>>>

```asn1
ComputedLane ::= SEQUENCE {
  referenceLaneId    LaneID,
  offsetXaxis        CHOICE {
                        small   DrivenLineOffsetSm,
                        large   DrivenLineOffsetLg
                        },
  offsetYaxis        CHOICE {
                        small   DrivenLineOffsetSm,
                        large   DrivenLineOffsetLg
                        },
  rotateXY           Angle OPTIONAL,
  scaleXaxis         Scale-B12 OPTIONAL,
  scaleYaxis         Scale-B12 OPTIONAL,
  regional  SEQUENCE (SIZE(1..4)) OF
            RegionalExtension {{Reg-ComputedLane}} OPTIONAL,
  ...
}
```

### <a name="ConnectsToList"></a>ConnectsToList
This DF is used in the generic lane descriptions to provide a sequence of other defined
Thomas Ritter's avatar
Thomas Ritter committed
 lanes to which each lane connects beyond its stop point. See the Connection data frame entry for details. Note that this
 data frame is not used in some lane object types.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;The assignment of lanes in the Connection structure shall start with the leftmost lane from the vehicle
   perspective (the u-turn lane in some cases) followed by subsequent lanes in a clockwise assignment order. Therefore, the
   rightmost lane to which this lane connects would always be listed last. Note that this order is observed regardless of which
   side of the road vehicles use. If this structure is used in the lane description, then all valid lanes to which the subject lane
   connects shall be listed.
>>>

```asn1
ConnectsToList ::= SEQUENCE (SIZE(1..16)) OF Connection
```

### <a name="ConnectingLane"></a>ConnectingLane
The data concept ties a single lane to a single maneuver needed to reach it from another lane.
 It is typically used to connect the allowed maneuver from the end of a lane to the outbound lane so that these can be
 mapped to the SPAT message to which both lanes apply.

* _lane_ of type [**LaneID**](ETSI-ITS-DSRC.md#LaneID) <br>
  Index of the connecting lane.

* _maneuver_ of type [**AllowedManeuvers**](#AllowedManeuvers)  OPTIONAL<br>
  This data element allows only the description of a subset of possible manoeuvres and therefore
      represents an incomplete list of possible travel directions. The connecting `lane` data element gives the
      exact information about the manoeuvre relation from ingress to egress lane. Therefore the "maneuver"
      data element may be used only additionally if the travel direction of the manoeuvre is unanmbigoulsy
      represented (e.g. left, right, straight, etc.).


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
ConnectingLane ::= SEQUENCE {
  lane      LaneID,
  maneuver  AllowedManeuvers OPTIONAL
}
```

### <a name="Connection"></a>Connection
This DF is used to combine/connect multiple physical lanes (i.e. within intersections or road
 segments). For signalized movements, the `connectsTo` data frame defines e.g. the relation between
 ingress and egress lanes within an intersection. It describes the allowed manoeuvres and includes the
 link (`signalGroup` identifier) between the [**MapData**](#MapData) and the [**PAT**](#PAT) message. The data frame is also used
 to describe the relation of lanes within a non signalized intersection (e.g. ingress lanes which are
 bypassing the conflict area and ending in an egress lane without signalization). Within a road segment,
 it is used to combine two or multiple physical lanes into a single lane object.

* _connectingLane_ of type [**ConnectingLane**](#ConnectingLane) <br>
* _remoteIntersection_ of type [**IntersectionReferenceID**](#IntersectionReferenceID)  OPTIONAL<br>
  When the data element `remoteIntersection` is used, it indicates
                              that the connecting lane belongs to another intersection. 
                              (see clause [ISO TS 19091] G.9.1 for further explainations).
Thomas Ritter's avatar
Thomas Ritter committed

* _signalGroup_ of type [**SignalGroupID**](ETSI-ITS-DSRC.md#SignalGroupID)  OPTIONAL<br>
* _userClass_ of type [**RestrictionClassID**](#RestrictionClassID)  OPTIONAL<br>
* _connectionID_ of type [**LaneConnectionID**](ETSI-ITS-DSRC.md#LaneConnectionID)  OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
Connection ::= SEQUENCE {
  connectingLane     ConnectingLane,
  remoteIntersection IntersectionReferenceID OPTIONAL,
  signalGroup        SignalGroupID OPTIONAL,
  userClass          RestrictionClassID OPTIONAL,
  connectionID       LaneConnectionID OPTIONAL
}
```

### <a name="ConnectionManeuverAssist"></a>ConnectionManeuverAssist
This DF contains information about the the dynamic flow of traffic for the lane(s)
 and maneuvers in question (as determined by the [**LaneConnectionID**](ETSI-ITS-DSRC.md#LaneConnectionID)). Note that this information can be sent regarding
 any lane-to-lane movement; it need not be limited to the lanes with active (non-red) phases when sent.

Values:
* _connectionID_ of type [**LaneConnectionID**](ETSI-ITS-DSRC.md#LaneConnectionID) <br>
  the common connectionID used by all lanes to which this data applies
                       (this value traces to ConnectsTo entries in lanes)

* _queueLength_ of type [**ZoneLength**](#ZoneLength)  OPTIONAL<br>
  The distance from the stop line to the back edge of the last vehicle in the queue,
                       as measured along the lane center line. (Unit = 1 meter, 0 = no queue)

* _availableStorageLength_ of type [**ZoneLength**](#ZoneLength)  OPTIONAL<br>
  Distance (e.g. beginning from the downstream stop-line up to a given distance) with a high
                       probability for successfully executing the connecting maneuver between the two lanes
                       during the current cycle.
                       Used for enhancing the awareness of vehicles to anticipate if they can pass the stop line
                       of the lane. Used for optimizing the green wave, due to knowledge of vehicles waiting in front
                       of a red light (downstream).
                       The element nextTime in [**TimeChangeDetails**](#TimeChangeDetails) in the containing data frame contains the next
                       timemark at which an active phase is expected, a form of storage flush interval.
                       (Unit = 1 meter, 0 = no space remains)

* _waitOnStop_ of type [**WaitOnStopline**](#WaitOnStopline)  OPTIONAL<br>
  If true, the vehicles on this specific connecting
                       maneuver have to stop on the stop-line and not to enter the collision area

* _pedBicycleDetect_ of type [**PedestrianBicycleDetect**](#PedestrianBicycleDetect)  OPTIONAL<br>
  true if ANY ped or bicycles are detected crossing the above lanes. Set to false ONLY if there is a
                       high certainty that there are none present, otherwise element is not sent.

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  This data element includes additional data content [**ConnectionManeuverAssist-addGrpC**](ETSI-ITS-DSRC-AddGrpC.md#ConnectionManeuverAssist-addGrpC) defined in
                       this profile (see [ISO TS 19091] G.5.1.1). The content is included using the regional extension framework as defined in

* **RegionalExtension** {{Reg-ConnectionManeuverAssist}} OPTIONAL<br>
[**ConnectionManeuverAssist-addGrpC**](ETSI-ITS-DSRC-AddGrpC.md#ConnectionManeuverAssist-addGrpC) is used for position feedback to moving ITS stations for executing
                     safe manoeuvres and is included for this purpose in the data element "intersectionState"

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
ConnectionManeuverAssist ::= SEQUENCE {
  connectionID         LaneConnectionID,
  queueLength          ZoneLength OPTIONAL,
  availableStorageLength ZoneLength OPTIONAL,
  waitOnStop           WaitOnStopline OPTIONAL,
  pedBicycleDetect     PedestrianBicycleDetect OPTIONAL,
  regional  SEQUENCE (SIZE(1..4)) OF
            RegionalExtension {{Reg-ConnectionManeuverAssist}} OPTIONAL,
  ...
}
```

### <a name="DataParameters"></a>DataParameters
This DF is used to provide basic (static) information on how a map fragment was processed or determined.

* _processMethod_ of type [**IA5String**](#IA5String) (SIZE(1..255)) OPTIONAL<br>
* _processAgency_ of type [**IA5String**](#IA5String) (SIZE(1..255)) OPTIONAL<br>
* _lastCheckedDate_ of type [**IA5String**](#IA5String) (SIZE(1..255)) OPTIONAL<br>
* _geoidUsed_ of type [**IA5String**](#IA5String) (SIZE(1..255)) OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
DataParameters ::= SEQUENCE {
  processMethod     IA5String(SIZE(1..255)) OPTIONAL,
  processAgency     IA5String(SIZE(1..255)) OPTIONAL,
  lastCheckedDate   IA5String(SIZE(1..255)) OPTIONAL,
  geoidUsed         IA5String(SIZE(1..255)) OPTIONAL,
  ...
}
```

### <a name="DDateTime"></a>DDateTime
The DSRC style date is a compound value consisting of finite-length sequences of integers (not characters) of the
 form: "yyyy, mm, dd, hh, mm, ss (sss+)" - as defined below.

* _year_ of type [**DYear**](#DYear)     OPTIONAL<br>
* _month_ of type [**DMonth**](#DMonth)    OPTIONAL<br>
* _day_ of type [**DDay**](#DDay)      OPTIONAL<br>
* _hour_ of type [**DHour**](#DHour)     OPTIONAL<br>
* _minute_ of type [**DMinute**](#DMinute)   OPTIONAL<br>
* _second_ of type [**DSecond**](#DSecond)   OPTIONAL<br>
* _offset_ of type [**DOffset**](#DOffset)   OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;Note that some elements of this structure may not be sent when not needed. At least one element shall be present.
>>>

```asn1
DDateTime ::= SEQUENCE {
   year    DYear    OPTIONAL,
   month   DMonth   OPTIONAL,
   day     DDay     OPTIONAL,
   hour    DHour    OPTIONAL,
   minute  DMinute  OPTIONAL,
   second  DSecond  OPTIONAL,
   offset  DOffset  OPTIONAL
 }
```

### <a name="EnabledLaneList"></a>EnabledLaneList
This DF is a sequence of lane IDs for lane objects that are activated in the current map
 configuration. These lanes, unlike most lanes, have their RevocableLane bit set to one (asserted). Such lanes are not
 considered to be part of the current map unless they are in the Enabled Lane List. This concept is used to describe all the
 possible regulatory states for a given physical lane. For example, it is not uncommon to enable or disable the ability to
 make a right hand turn on red during different periods of a day. Another similar example would be a lane which is used for
 driving during one period and where parking is allowed at another. Traditionally, this information is conveyed to the vehicle
 driver by local signage. By using the Enabled Lane List data frame in conjunction with the RevocableLane bit and
 constructing a separate lane object in the intersection map for each different configuration, a single unified map can be
 developed and used.

 Contents are the unique ID numbers for each lane object which is 'active' as part of the dynamic map contents.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
EnabledLaneList ::= SEQUENCE (SIZE(1..16)) OF LaneID
```

### <a name="FullPositionVector"></a>FullPositionVector
A complete report of the vehicle's position, speed, and heading at an instant in time. Used in the probe vehicle
 message (and elsewhere) as the initial position information. Often followed by other data frames that may provide offset
 path data.

* _utcTime_ of type [**DDateTime**](#DDateTime)  OPTIONAL<br>
  time with mSec precision

* _long_ of type [**Longitude**](ETSI-ITS-CDD.md#Longitude) <br>
  Longitude in 1/10th microdegree

* _lat_ of type [**Latitude**](ETSI-ITS-CDD.md#Latitude) <br>
  Latitude in 1/10th microdegree

* _elevation_ of type [**Elevation**](#Elevation)   OPTIONAL<br>
  Elevation in units of 0.1 m

* _heading_ of type [**HeadingDSRC**](#HeadingDSRC)  OPTIONAL<br>
  Heading value 

Thomas Ritter's avatar
Thomas Ritter committed
* _speed_ of type [**TransmissionAndSpeed**](#TransmissionAndSpeed)  OPTIONAL<br>
  Speed value

Thomas Ritter's avatar
Thomas Ritter committed
* _posAccuracy_ of type [**PositionalAccuracy**](#PositionalAccuracy)  OPTIONAL<br>
  position accuracy

Thomas Ritter's avatar
Thomas Ritter committed
* _timeConfidence_ of type [**TimeConfidence**](#TimeConfidence)  OPTIONAL<br>
  time confidence

Thomas Ritter's avatar
Thomas Ritter committed
* _posConfidence_ of type [**PositionConfidenceSet**](#PositionConfidenceSet)  OPTIONAL<br>
  position confidence

Thomas Ritter's avatar
Thomas Ritter committed
* _speedConfidence_ of type [**SpeedandHeadingandThrottleConfidence**](#SpeedandHeadingandThrottleConfidence)  OPTIONAL<br>
  speed confidence 

Thomas Ritter's avatar
Thomas Ritter committed

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
FullPositionVector ::= SEQUENCE {
   utcTime             DDateTime OPTIONAL,
Thomas Ritter's avatar
Thomas Ritter committed
915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256
   long                Longitude,
   lat                 Latitude,
   elevation           Elevation  OPTIONAL,
   heading             HeadingDSRC OPTIONAL,
   speed               TransmissionAndSpeed OPTIONAL,
   posAccuracy         PositionalAccuracy OPTIONAL,
   timeConfidence      TimeConfidence OPTIONAL,
   posConfidence       PositionConfidenceSet OPTIONAL,
   speedConfidence     SpeedandHeadingandThrottleConfidence OPTIONAL,
   ...
}
```

### <a name="GenericLane"></a>GenericLane
This DF is used for all types of lanes, e.g. motorized vehicle lanes, crosswalks, medians. The
 GenericLane describes the basic attribute information of the lane. The LaneID value for each lane is unique within an
 intersection. One use for the LaneID is in the SPAT message, where a given signal or movement phase is mapped to a
 set of applicable lanes using their respective LaneIDs. The NodeList2 data frame includes a sequence of offset points (or
 node points) representing the center line path of the lane. As described in this standard, node points are sets of variable
 sized delta orthogonal offsets from the prior point in the node path. (The initial point is offset from the LLH anchor point
 used in the intersection.) Each node point may convey optional attribute data as well. The use of attributes is described
 further in the Node definition, and in a later clause, but an example use would be to indicate a node point where the lane
 width changes.

 It should be noted that a "lane" is an abstract concept that can describe objects other than motorized vehicle lanes, and
 that the generic lane structure (using features drawn from Japanese usage) also allows combining multiple physical lanes
 into a single lane object. In addition, such lanes can describe connectivity points with other lanes beyond a single
 intersection, extending such a lane description over multiple nearby physical intersections and side streets which
 themselves may not be equipped or assigned an index number in the regional intersection numbering system. (See the
 ConnectsTo entry for details) This has value when describing a broader service area in terms of the roadway network,
 probably with less precision and detail.

Values:
* _laneID_ of type [**LaneID**](ETSI-ITS-DSRC.md#LaneID) <br>
  The unique ID number assigned to this lane object

* _name_ of type [**DescriptiveName**](#DescriptiveName)  OPTIONAL<br>
  often for debug use only but at times used to name ped crossings

* _ingressApproach_ of type [**ApproachID**](#ApproachID)  OPTIONAL<br>
  inbound Approach ID to which this lane belongs

* _egressApproach_ of type [**ApproachID**](#ApproachID)  OPTIONAL<br>
  outbound Approach ID to which this lane belongs

* _laneAttributes_ of type [**LaneAttributes**](#LaneAttributes) <br>
  All Attribute information about the basic selected lane type
                          Directions of use, Geometric co-sharing and Type Specific Attributes
                          These Attributes are 'lane - global' that is, they are true for the entire length of the lane

* _maneuvers_ of type [**AllowedManeuvers**](#AllowedManeuvers)  OPTIONAL<br>
  This data element allows only the description of a subset of possible manoeuvres and therefore
                      reperesents an incomplete list of possible travel directions. The connecting `lane` data element gives
                      the exact information about the manoeuvre relation from ingress to egress lane. Therefore the
                      "maneuver" data element is used only additionally if the travel direction of the manoeuvre is

* _nodeList_ of type [**NodeListXY**](#NodeListXY) <br>
  Lane spatial path information as well as various Attribute information along the node path
                      Attributes found here are more general and may come and go over the length of the lane.

* _connectsTo_ of type [**ConnectsToList**](#ConnectsToList)  OPTIONAL<br>
  a list of other lanes and their signal group IDs each connecting lane and its signal group ID
                      is given, therefore this element provides the information formerly in "signalGroups" in prior editions.

* _overlays_ of type [**OverlayLaneList**](#OverlayLaneList)  OPTIONAL<br>
  A list of any lanes which have spatial paths that overlay (run on top of, and not simply cross)
                      the path of this lane when used

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  optional region specific data.

* **RegionalExtension** {{Reg-GenericLane}} OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;The data elements `ingressApproach` and `egressApproach` are used for grouping lanes whin an
       approach (e.g. lanes defined in travel direction towards the intersection, lanes in exiting direction and
       cross walks). For a bidirectrional lane (e.g. bike lane) both dataelements are used for the same lane. The
       integer value used for identifying the `ingressApproach` and the `egressAproach`, based on the
       topology, may be e.g. the same for all lanes within an approach of an intersection.
>>>

```asn1
GenericLane ::= SEQUENCE {
  laneID           LaneID,
  name             DescriptiveName OPTIONAL,
  ingressApproach  ApproachID OPTIONAL,
  egressApproach   ApproachID OPTIONAL,
  laneAttributes   LaneAttributes,
  maneuvers        AllowedManeuvers OPTIONAL,
  nodeList         NodeListXY,
  connectsTo       ConnectsToList OPTIONAL,
  overlays         OverlayLaneList OPTIONAL,
  regional  SEQUENCE (SIZE(1..4)) OF
            RegionalExtension {{Reg-GenericLane}} OPTIONAL,
  ...
}
```

### <a name="IntersectionAccessPoint"></a>IntersectionAccessPoint
This DF is used to specify the index of either a single approach or a single lane at
 which a service is needed. This is used, for example, with the Signal Request Message (SRM) to indicate the inbound
 and outbound points by which the requestor (such as a public safety vehicle) can traverse an intersection.

* _lane_ of type [**LaneID**](ETSI-ITS-DSRC.md#LaneID) <br>
  the representation of the point as lane identifier.

* _approach_ of type [**ApproachID**](#ApproachID) <br>
  the representation of the point as approach identifier.

* _connection_ of type [**LaneConnectionID**](ETSI-ITS-DSRC.md#LaneConnectionID) <br>
  the representation of the point as connection identifier.


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;Note that the value of zero has a reserved meaning for these two indexing systems. In both cases, this value
    is used to indicate the concept of "none" in use. When the value is of zero is used here, it implies the center of the
    intersection itself. For example, requesting an outbound point of zero implies the requestor wishes to have the intersection
    itself be the destination. Alternatively, an inbound value of zero implies the requestor is within the intersection itself and
    wishes to depart for the outbound value provided. This special meaning for the value zero can be used in either the lane
    or approach with the same results.
>>>

```asn1
IntersectionAccessPoint ::= CHOICE {
  lane       LaneID,
  approach   ApproachID,
  connection LaneConnectionID,
  ...
}
```

### <a name="IntersectionGeometry"></a>IntersectionGeometry
A complete description of an intersection's roadway geometry and its allowed navigational paths (independent of
 any additional regulatory restrictions that may apply over time or from user classification).

Values:
* _name_ of type [**DescriptiveName**](#DescriptiveName)  OPTIONAL<br>
  For debug use only

* _id_ of type [**IntersectionReferenceID**](#IntersectionReferenceID) <br>
  A globally unique value set, consisting of a regionID and intersection ID assignment

* _revision_ of type [**MsgCount**](#MsgCount) <br>
  This profile extends the purpose of the `revision` data element as defined in SAE J2735 as follows.
             The revision data element is used to communicate the valid release of the intersection geometry
             description. If there are no changes in the deployed intersection description, the same revision counter
             is transmitted. Due to a revised deployment of the intersection description (e.g. new lane added, ID's
             changed, etc.), the revision is increased by one. After revision equal to 127, the increment restarts by 0.
             The intersection geometry and the signal phase and timing information is related each other. Therefore,
             the revision of the intersection geometry of the MapData message shall be the same as the revision of
             the intersection state of the SPAT (see data element `revision` of `DF_IntersectionState` in [ISO TS 19091] G.8.2.9)

* _refPoint_ of type [**Position3D**](#Position3D) <br>
  The reference from which subsequent data points are offset until a new point is used.

* _laneWidth_ of type [**LaneWidth**](#LaneWidth)  OPTIONAL<br>
  Reference width used by all subsequent lanes unless a new width is given

* _speedLimits_ of type [**SpeedLimitList**](#SpeedLimitList)  OPTIONAL<br>
  Reference regulatory speed limits used by all subsequent lanes unless a new speed is given

* _laneSet_ of type [**LaneList**](#LaneList) <br>
  Data about one or more lanes (all lane data is found here) Data describing how to use and request preemption and
             priority services from this intersection (if supported)

* _preemptPriorityData_ of type [**PreemptPriorityList**](#PreemptPriorityList)  OPTIONAL<br>
  This DF is not used.

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  optional region specific data.

* **RegionalExtension** {{Reg-IntersectionGeometry}} OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
IntersectionGeometry ::= SEQUENCE {
  name        DescriptiveName OPTIONAL,
  id          IntersectionReferenceID,
  revision    MsgCount,
  refPoint    Position3D,
  laneWidth   LaneWidth OPTIONAL,
  speedLimits SpeedLimitList OPTIONAL,
  laneSet     LaneList,
  preemptPriorityData PreemptPriorityList OPTIONAL,
  regional     SEQUENCE (SIZE(1..4)) OF
               RegionalExtension {{Reg-IntersectionGeometry}} OPTIONAL,
  ...
}
```

### <a name="IntersectionGeometryList"></a>IntersectionGeometryList
This DF consists of a list of IntersectionGeometry entries.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
IntersectionGeometryList ::= SEQUENCE (SIZE(1..32)) OF IntersectionGeometry
```

### <a name="IntersectionReferenceID"></a>IntersectionReferenceID
This DF conveys the combination of an optional RoadRegulatorID and of an
 IntersectionID that is unique within that region. When the RoadRegulatorID is present the IntersectionReferenceID is
 guaranteed to be globally unique.

* _region_ of type [**RoadRegulatorID**](#RoadRegulatorID)  OPTIONAL<br>
  a globally unique regional assignment value typical assigned to a regional DOT authority
                  the value zero shall be used for testing needs

* _id_ of type [**IntersectionID**](ETSI-ITS-DSRC.md#IntersectionID) <br>
  a unique mapping to the intersection in question within the above region of use


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;A fully qualified intersection consists of its regionally unique ID (the IntersectionID) and its region ID (the
        RoadRegulatorID). Taken together these form a unique value which is never repeated.
>>>

```asn1
IntersectionReferenceID ::= SEQUENCE {
  region  RoadRegulatorID OPTIONAL,
  id      IntersectionID
}
```

### <a name="IntersectionState"></a>IntersectionState
This DF is used to convey all the SPAT information for a single intersection. Both current
 and future data can be sent.

Values:
* _name_ of type [**DescriptiveName**](#DescriptiveName)  OPTIONAL<br>
  human readable name for intersection to be used only in debug mode

* _id_ of type [**IntersectionReferenceID**](#IntersectionReferenceID) <br>
  A globally unique value set, consisting of a regionID and intersection ID assignment
              provides a unique mapping to the intersection MAP in question which provides complete location
              and approach/move/lane data

* _revision_ of type [**MsgCount**](#MsgCount) <br>
  The data element `revision` is used to communicate the actual valid release of the intersection
                    description. If there are no changes in the deployed intersection description, almost the same revision
                    counter is transmitted. Due to a revised deployment of the intersection description (e.g. introduction of
                    additional signal state element), the revision is increased by one. After revision equal to 127, the
                    increment leads to 0 (due to the element range).
                    The intersection state and the intersection geometry is related to each other. Therefore, the revision of
                    the intersection state shall be the same as the revision of the intersection geometry (see the data
                    element `revision` of `DF_IntersectionGeometry` in [ISO TS 19091] G.8.2.6).

* _status_ of type [**IntersectionStatusObject**](#IntersectionStatusObject) <br>
  general status of the controller(s)

* _moy_ of type [**MinuteOfTheYear**](#MinuteOfTheYear)  OPTIONAL<br>
  Minute of current UTC year, used only with messages to be archived.

* _timeStamp_ of type [**DSecond**](#DSecond)  OPTIONAL<br>
  the mSec point in the current UTC minute that this message was constructed.

* _enabledLanes_ of type [**EnabledLaneList**](#EnabledLaneList)  OPTIONAL<br>
  a list of lanes where the RevocableLane bit has been set which are now active and
                        therefore part of the current intersection

* _states_ of type [**MovementList**](#MovementList) <br>
  Each Movement is given in turn and contains its signal phase state,
                  mapping to the lanes it applies to, and point in time it will end, and it
                  may contain both active and future states

* _maneuverAssistList_ of type [**ManeuverAssistList**](#ManeuverAssistList)  OPTIONAL<br>
  Assist data

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  optional region specific data.

* **RegionalExtension** {{Reg-IntersectionState}} OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
IntersectionState ::= SEQUENCE {
  name         DescriptiveName OPTIONAL,
  id           IntersectionReferenceID,
  revision     MsgCount,
  status       IntersectionStatusObject,
  moy          MinuteOfTheYear OPTIONAL,
  timeStamp    DSecond OPTIONAL,
  enabledLanes EnabledLaneList OPTIONAL,
  states       MovementList,
  maneuverAssistList  ManeuverAssistList OPTIONAL,
  regional     SEQUENCE (SIZE(1..4)) OF
               RegionalExtension {{Reg-IntersectionState}} OPTIONAL,
  ...
}
```

### <a name="IntersectionStateList"></a>IntersectionStateList
This DF consists of a list of IntersectionState entries.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
IntersectionStateList ::= SEQUENCE (SIZE(1..32)) OF  IntersectionState
```

### <a name="LaneAttributes"></a>LaneAttributes
This DF holds all of the constant attribute information of any lane object (as well as
 denoting the basic lane type itself) within a single structure. Constant attribute information are those values which do not
 change over the path of the lane, such as the direction of allowed travel. Other lane attribute information can change at or
 between each node.
 The structure consists of three element parts as follows: LaneDirection specifies the allowed directions of travel, if any.
 LaneSharing indicates whether this lane type is shared with other types of travel modes or users. The lane type is defined
 in LaneTypeAttributes, along with additional attributes specific to that type.
 The fundamental type of lane object is described by the element selected in the LaneTypeAttributes data concept.
 Additional information specific or unique to a given lane type can be found there as well. A regional extension is provided
 as well.
 Note that combinations of regulatory maneuver information such as "both a left turn and straight ahead movement are
 allowed, but never a u-turn," are expressed by the AllowedManeuvers data concept which typically follows after this
 element and in the same structure. Note that not all lane objects require this information (for example a median). The
 various values are set via bit flags to indicate the assertion of a value. Each defined lane type contains the bit flags
 suitable for its application area.
 Note that the concept of LaneSharing is used to indicate that there are other users of this lane with equal regulatory rights
 to occupy the lane (which is a term this standard does not formally define since it varies by world region). A typical case is
 a light rail vehicle running along the same lane path as motorized traffic. In such a case, motor traffic may be allowed
 equal access to the lane when a train is not present. Another case would be those intersection lanes (at the time of writing
 rather unusual) where bicycle traffic is given full and equal right of way to an entire width of motorized vehicle lane. This
 example would not be a bike lane or bike box in the traditional sense.

* _directionalUse_ of type [**LaneDirection**](#LaneDirection) <br>
Thomas Ritter's avatar
Thomas Ritter committed
  directions of lane use

Thomas Ritter's avatar
Thomas Ritter committed
* _sharedWith_ of type [**LaneSharing**](#LaneSharing) <br>
Thomas Ritter's avatar
Thomas Ritter committed
  co-users of the lane path

Thomas Ritter's avatar
Thomas Ritter committed
* _laneType_ of type [**LaneTypeAttributes**](#LaneTypeAttributes) <br>
Thomas Ritter's avatar
Thomas Ritter committed
  specific lane type data

Thomas Ritter's avatar
Thomas Ritter committed
* _regional_ of type [**RegionalExtension**](#RegionalExtension)  {{Reg-LaneAttributes}} OPTIONAL<br>
  optional region specific data.


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
LaneAttributes ::= SEQUENCE {
  directionalUse  LaneDirection,
  sharedWith      LaneSharing,
  laneType        LaneTypeAttributes,
  regional        RegionalExtension {{Reg-LaneAttributes}} OPTIONAL
}
```

### <a name="LaneDataAttribute"></a>LaneDataAttribute
This DF is used to relate an attribute and a control value at a node point or along a
 lane segment from an enumerated list of defined choices. It is then followed by a defined data value associated with it and
 which is defined elsewhere in this standard.

Values:
* _pathEndPointAngle_ of type [**DeltaAngle**](#DeltaAngle) <br>
  adjusts final point/width slant of the lane to align with the stop line

* _laneCrownPointCenter_ of type [**RoadwayCrownAngle**](#RoadwayCrownAngle) <br>
  sets the canter of the road bed from centerline point

* _laneCrownPointLeft_ of type [**RoadwayCrownAngle**](#RoadwayCrownAngle) <br>
  sets the canter of the road bed from left edge

* _laneCrownPointRight_ of type [**RoadwayCrownAngle**](#RoadwayCrownAngle) <br>
  sets the canter of the road bed from right edge

* _laneAngle_ of type [**MergeDivergeNodeAngle**](#MergeDivergeNodeAngle) <br>
  the angle or direction of another lane this is required when a merge point angle is required
Thomas Ritter's avatar
Thomas Ritter committed

* _speedLimits_ of type [**SpeedLimitList**](#SpeedLimitList) <br>
  Reference regulatory speed limits used by all segments

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  optional region specific data.

* **RegionalExtension** {{Reg-LaneDataAttribute}}<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;This data concept handles a variety of use case needs with a common and consistent message pattern. The
     typical use of this data concept (and several similar others) is to inject the selected Attribute into the spatial description of
     a lane's center line path (the segment list). In this way, attribute information which is true for a portion of the overall lane
     can be described when needed. This attribute information applies from the node point in the stream of segment data until
     changed again. Denoting the porous aspects of a lane along its path as it merges with another lane would be an example
     of this use case. In this case the start and end node points would be followed by suitable segment attributes. Re-using a
     lane path (previously called a computed lane) is another example. In this case the reference lane to be re-used appears
     as a segment attribute followed by the lane value. It is then followed by one or more segment attributes which relate the
     positional translation factors to be used (offset, rotate, scale) and any further segment attribute changes.
>>>

```asn1
LaneDataAttribute ::= CHOICE {
   pathEndPointAngle        DeltaAngle,
   laneCrownPointCenter     RoadwayCrownAngle,
   laneCrownPointLeft       RoadwayCrownAngle,
   laneCrownPointRight      RoadwayCrownAngle,
   laneAngle                MergeDivergeNodeAngle,
   speedLimits              SpeedLimitList,
   regional  SEQUENCE (SIZE(1..4)) OF
             RegionalExtension {{Reg-LaneDataAttribute}},
   ...
}
```

### <a name="LaneDataAttributeList"></a>LaneDataAttributeList
This DF consists of a list of LaneDataAttribute entries.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
LaneDataAttributeList ::= SEQUENCE (SIZE(1..8)) OF LaneDataAttribute
```

### <a name="LaneList"></a>LaneList
This DF consists of a list of GenericLane entries.
Thomas Ritter's avatar
Thomas Ritter committed
1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
LaneList ::= SEQUENCE (SIZE(1..255)) OF GenericLane
```

### <a name="LaneSharing"></a>LaneSharing
This DE is used to denote the presence of other user types (travel modes) who have an
 equal right to access and use the lane. There may also be another lane object describing their use of a lane. This data
 concept is used to indicate lanes and/or users that travel along the same path, and not those that simply cross over the
 lane's segments path (such as a pedestrian crosswalk crossing a lane for motor vehicle use). The typical use is to alert
 the user of the MAP data that additional traffic of another mode may be present in the same spatial lane.

 Bits used:
 - 0 - overlappingLaneDescriptionProvided: Assert when another lane object is present to describe the
                                           path of the overlapping shared lane this construct is not used for lane objects which simply cross
 - 1 - multipleLanesTreatedAsOneLane: Assert if the lane object path and width details represents multiple lanes within it
                                      that are not further described Various modes and type of traffic that may share this lane:
 - 2 - otherNonMotorizedTrafficTypes: horse drawn etc.
 - 3 - individualMotorizedVehicleTraffic:
 - 4 - busVehicleTraffic:
 - 5 - taxiVehicleTraffic:
 - 6 - pedestriansTraffic:
 - 7 - cyclistVehicleTraffic:
 - 8 - trackedVehicleTraffic:
 - 9 - pedestrianTraffic:

Values:
* **overlappingLaneDescriptionProvided** (0)<br>
* **multipleLanesTreatedAsOneLane** (1)<br>
* **otherNonMotorizedTrafficTypes** (2)<br>
* **individualMotorizedVehicleTraffic** (3)<br>
* **busVehicleTraffic** (4)<br>
* **taxiVehicleTraffic** (5)<br>
* **pedestriansTraffic** (6)<br>
* **cyclistVehicleTraffic** (7)<br>
* **trackedVehicleTraffic** (8)<br>
* **pedestrianTraffic** (9)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;All zeros would indicate `not shared` and `not overlapping`
>>>

```asn1
LaneSharing ::= BIT STRING {
   overlappingLaneDescriptionProvided  (0),
   multipleLanesTreatedAsOneLane       (1),
   otherNonMotorizedTrafficTypes       (2),
   individualMotorizedVehicleTraffic   (3),
   busVehicleTraffic                   (4),
   taxiVehicleTraffic                  (5),
   pedestriansTraffic                  (6),
   cyclistVehicleTraffic               (7),
   trackedVehicleTraffic               (8),
   pedestrianTraffic                   (9)
} (SIZE (10))
```

### <a name="LaneTypeAttributes"></a>LaneTypeAttributes
This DF is used to hold attribute information specific to a given lane type. It is typically
 used in the DE_LaneAttributes data frame as part of an overall description of a lane object. Information unique to the
 specific type of lane is found here. Information common to lanes is expressed in other entries. The various values are set
 by bit flags to indicate the assertion of a value. Each defined lane type contains bit flags suitable for its application area.

* _vehicle_ of type [**LaneAttributes-Vehicle**](#LaneAttributes-Vehicle) <br>
  motor vehicle lanes

* _crosswalk_ of type [**LaneAttributes-Crosswalk**](#LaneAttributes-Crosswalk) <br>
  pedestrian crosswalks

* _bikeLane_ of type [**LaneAttributes-Bike**](#LaneAttributes-Bike) <br>
  bike lanes

* _sidewalk_ of type [**LaneAttributes-Sidewalk**](#LaneAttributes-Sidewalk) <br>
  pedestrian sidewalk paths

* _median_ of type [**LaneAttributes-Barrier**](#LaneAttributes-Barrier) <br>
  medians & channelization

* _striping_ of type [**LaneAttributes-Striping**](#LaneAttributes-Striping) <br>
  roadway markings

* _trackedVehicle_ of type [**LaneAttributes-TrackedVehicle**](#LaneAttributes-TrackedVehicle) <br>
  trains and trolleys

* _parking_ of type [**LaneAttributes-Parking**](#LaneAttributes-Parking) <br>
  parking and stopping lanes


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
LaneTypeAttributes ::= CHOICE {
  vehicle        LaneAttributes-Vehicle,
  crosswalk      LaneAttributes-Crosswalk,
  bikeLane       LaneAttributes-Bike,
  sidewalk       LaneAttributes-Sidewalk,
  median         LaneAttributes-Barrier,
  striping       LaneAttributes-Striping,
  trackedVehicle LaneAttributes-TrackedVehicle,
  parking        LaneAttributes-Parking,
  ...
}
```

### <a name="ManeuverAssistList"></a>ManeuverAssistList
This DF consists of a list of [**ConnectionManeuverAssist**](#ConnectionManeuverAssist) entries.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
ManeuverAssistList ::= SEQUENCE (SIZE(1..16)) OF ConnectionManeuverAssist
```

### <a name="MovementEvent"></a>MovementEvent
This DF contains details about a single movement. It is used by the movement state to
 convey one of number of movements (typically occurring over a sequence of times) for a SignalGroupID.

Values:
* _eventState_ of type [**MovementPhaseState**](#MovementPhaseState) <br>
  Consisting of: Phase state (the basic 11 states), Directional, protected, or permissive state

* _timing_ of type [**TimeChangeDetails**](#TimeChangeDetails)  OPTIONAL<br>
  Timing Data in UTC time stamps for event includes start and min/max end times of phase confidence and estimated next occurrence

* _speeds_ of type [**AdvisorySpeedList**](#AdvisorySpeedList)  OPTIONAL<br>
  various speed advisories for use by general and specific types of vehicles supporting green-wave and other flow needs

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  optional region specific data.

* **RegionalExtension** {{Reg-MovementEvent}} OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
MovementEvent ::= SEQUENCE {
  eventState   MovementPhaseState,
  timing       TimeChangeDetails OPTIONAL,
  speeds       AdvisorySpeedList OPTIONAL,
  regional     SEQUENCE (SIZE(1..4)) OF
               RegionalExtension {{Reg-MovementEvent}} OPTIONAL,
  ...
}
```

### <a name="MovementEventList"></a>MovementEventList
This DF consists of a list of [**MovementEvent**](#MovementEvent) entries.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
MovementEventList ::= SEQUENCE (SIZE(1..16)) OF MovementEvent
```

### <a name="MovementList"></a>MovementList
This DF consists of a list of [**MovementState**](#MovementState) entries.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
MovementList ::= SEQUENCE (SIZE(1..255)) OF MovementState
```

### <a name="MovementState"></a>MovementState
This DF is used to convey various information about the current or future movement state of
 a designated collection of one or more lanes of a common type. This is referred to as the GroupID. Note that lane object
 types supported include both motorized vehicle lanes as well as pedestrian lanes and dedicated rail and transit lanes. Of
 the reported data elements, the time to change (the time remaining in the current state) is often of the most value. Lanes
 with a common state (typically adjacent sets of lanes in an approach) in a signalized intersection will have individual lane
 values such as total vehicle counts, summed. It is used in the SPAT message to convey every active movement in a
 given intersection so that vehicles, when combined with certain map information, can determine the state of the signal phases.

Values:
* _movementName_ of type [**DescriptiveName**](#DescriptiveName)  OPTIONAL<br>
  uniquely defines movement by name human readable name for intersection to be used only in debug mode.

* _signalGroup_ of type [**SignalGroupID**](ETSI-ITS-DSRC.md#SignalGroupID) <br>
  is used to map to lists of lanes (and their descriptions) which this MovementState data applies to.

* _state-time-speed_ of type [**MovementEventList**](#MovementEventList) <br>
  Consisting of sets of movement data with [**SignalPhaseState**](#SignalPhaseState), [**TimeChangeDetail**](#TimeChangeDetail) and [**AdvisorySpeed**](#AdvisorySpeed)
                            *Note:* one or more of the movement events may be for a future time and that this allows conveying multiple
                            predictive phase and movement timing for various uses for the current signal group.

* _maneuverAssistList_ of type [**ManeuverAssistList**](#ManeuverAssistList)  OPTIONAL<br>
  This information may also be placed in the [**IntersectionState**](#IntersectionState) when common information applies to different lanes in the same way

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  optional region specific data.

* **RegionalExtension** {{Reg-MovementState}} OPTIONAL<br>
In use, the [**SignalGroupID**](ETSI-ITS-DSRC.md#SignalGroupID) element is matched to lanes that are members of that ID. The type of lane (vehicle, crosswalk,
      etc.) is known by the lane description as well as its allowed maneuvers and any vehicle class restrictions. Every lane type
      is treated the same way (cross walks map to suitable meanings, etc.). Lane objects which are not part of the sequence of
      signalized lanes do not appear in any GroupID. The visual details of how a given signal phase is presented to a mobile
      user will vary based on lane type and with regional conventions. Not all signal states will be used in all regional
      deployments. For example, a pre-green visual indication is not generally found in US deployments. Under such operating
      conditions, the unused phase states are simply skipped.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;Note that the value given for the time to change will vary in many actuated signalized intersections based on
      the sensor data received during the phase. The data transmitted always reflects the then most current timemark value
      (which is the point in UTC time when the change will occur). As an example, in a phase which may vary from 15 to 25
      seconds of duration based on observed traffic flows, a time to change value of 15 seconds in the future might be
      transmitted for many consecutive seconds (and the time mark value extended for as much as 10 seconds depending on
      the extension time logic used by the controller before it either times out or gaps out), followed by a final time mark value
      reflecting the decreasing values as the time runs out, presuming the value was not again extended to a new time mark
      due to other detection events. The time to change element can therefore generally be regarded as a guaranteed minimum
      value of the time that will elapse unless a preemption event occurs.
>>>

```asn1
MovementState ::= SEQUENCE {
  movementName       DescriptiveName OPTIONAL,
  signalGroup        SignalGroupID,
  state-time-speed   MovementEventList,
  maneuverAssistList ManeuverAssistList OPTIONAL,
  regional           SEQUENCE (SIZE(1..4)) OF
                     RegionalExtension {{Reg-MovementState}} OPTIONAL,
  ...
}
```

### <a name="NodeAttributeSetXY"></a>NodeAttributeSetXY
All the node attributes defined in this DF are valid in the direction of
 node declaration and not in driving direction (i.e. along the sequence of the declared nodes). E.g. node
 attributes of an `ingress` or an `egress` lane are defined from the conflict area (first node) to the
 outside of the intersection (last node). Node attributes with ‘left’ and ‘right’ in their name are also
 defined in the direction of the node declaration. This allows using attributes in a unambigious way also
 for lanes with biderctional driving. See the following attribuets examples for additianl explanations.

Values:
* _localNode_ of type [**NodeAttributeXYList**](#NodeAttributeXYList)  OPTIONAL<br>
  Attribute states which pertain to this node point

* _disabled_ of type [**SegmentAttributeXYList**](#SegmentAttributeXYList)  OPTIONAL<br>
  Attribute states which are disabled at this node point

* _enabled_ of type [**SegmentAttributeXYList**](#SegmentAttributeXYList)  OPTIONAL<br>
  Attribute states which are enabled at this node point and which remain enabled until disabled or the lane ends

* _data_ of type [**LaneDataAttributeList**](#LaneDataAttributeList)  OPTIONAL<br>
  Attributes which require an additional data values some of these are local to the node point, while others
                persist with the provided values until changed and this is indicated in each entry

* _dWidth_ of type [**Offset-B10**](#Offset-B10)  OPTIONAL<br>
  A value added to the current lane width at this node and from this node onwards, in 1cm steps
                 lane width between nodes are a linear taper between pts the value of zero shall not be sent here.

* _dElevation_ of type [**Offset-B10**](#Offset-B10)  OPTIONAL<br>
  A value added to the current Elevation at this node from this node onwards, in 10cm steps
                      elevations between nodes are a linear taper between pts the value of zero shall not be sent here

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  optional region specific data.

* **RegionalExtension** {{Reg-NodeAttributeSetXY}} OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
NodeAttributeSetXY ::= SEQUENCE {
  localNode    NodeAttributeXYList OPTIONAL,
  disabled     SegmentAttributeXYList OPTIONAL,
  enabled      SegmentAttributeXYList OPTIONAL,
  data         LaneDataAttributeList OPTIONAL,
  dWidth       Offset-B10 OPTIONAL,
  dElevation   Offset-B10 OPTIONAL,
  regional     SEQUENCE (SIZE(1..4)) OF
               RegionalExtension {{Reg-NodeAttributeSetXY}} OPTIONAL,
  ...
}
```

### <a name="NodeAttributeXY"></a>NodeAttributeXY
This DE is an enumerated list of attributes which can pertain to the current node
 point. The 'scope' of these values is limited to the node itself. That is, unlike other types of attributes which can be
 switched on or off at any given node (and hence pertains to one or more segments), the DE_NodeAttribute is local to the
 node in which it is found. These attributes are all binary flags in that they do not need to convey any additional data. Other
 attributes allow sending short data values to reflect a setting which is set and persists in a similar fashion.

  - reserved:             do not use
  - stopLine:             point where a mid-path stop line exists. See also 'do not block' for segments
  - roundedCapStyleA:     Used to control final path rounded end shape with edge of curve at final point in a circle
  - roundedCapStyleB:     Used to control final path rounded end shape with edge of curve extending 50% of width past final point in a circle
  - mergePoint:           merge with 1 or more lanes
  - divergePoint:         diverge with 1 or more lanes
  - downstreamStopLine:   downstream intersection (a 2nd intersection) stop line
  - downstreamStartNode:  downstream intersection (a 2nd intersection) start node
Thomas Ritter's avatar
Thomas Ritter committed
  - closedToTraffic:      where a pedestrian may NOT go to be used during construction events
  - safeIsland:           a pedestrian safe stopping point also called a traffic island
                          This usage described a point feature on a path, other entries can describe a path
  - curbPresentAtStepOff: the sidewalk to street curb is NOT angled where it meets the edge of the roadway (user must step up/down)
  - hydrantPresent:       Or other services access

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;See usage examples in [ISO TS 19091] G.8.2.8
>>>

Thomas Ritter's avatar
Thomas Ritter committed
```asn1
NodeAttributeXY ::= ENUMERATED {
  reserved,
  stopLine,
  roundedCapStyleA,
  roundedCapStyleB,
  mergePoint,
  divergePoint,
  downstreamStopLine,
  downstreamStartNode,
  closedToTraffic,
  safeIsland,
  curbPresentAtStepOff,
  hydrantPresent,
  ...
}
```

### <a name="NodeAttributeXYList"></a>NodeAttributeXYList
This DF consists of a list of [**NodeAttributeXY**](#NodeAttributeXY) entries.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
NodeAttributeXYList ::= SEQUENCE (SIZE(1..8)) OF NodeAttributeXY
```

### <a name="Node-LLmD-64b"></a>Node-LLmD-64b
A 64-bit node type with lat-long values expressed in one tenth of a micro degree.

* _lon_ of type [**Longitude**](ETSI-ITS-CDD.md#Longitude) <br>
* _lat_ of type [**Latitude**](ETSI-ITS-CDD.md#Latitude) <br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
Node-LLmD-64b ::= SEQUENCE {
  lon  Longitude,
  lat  Latitude
}
```

### <a name="Node-XY-20b"></a>Node-XY-20b
A 20-bit node type with offset values from the last point in X and Y.

* _x_ of type [**Offset-B10**](#Offset-B10) <br>
* _y_ of type [**Offset-B10**](#Offset-B10) <br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
Node-XY-20b ::= SEQUENCE {
  x  Offset-B10,
  y  Offset-B10
}
```

### <a name="Node-XY-22b"></a>Node-XY-22b
A 22-bit node type with offset values from the last point in X and Y.

* _x_ of type [**Offset-B11**](#Offset-B11) <br>
* _y_ of type [**Offset-B11**](#Offset-B11) <br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
Node-XY-22b ::= SEQUENCE {
  x  Offset-B11,
  y  Offset-B11
}
```

### <a name="Node-XY-24b"></a>Node-XY-24b
A 24-bit node type with offset values from the last point in X and Y.

* _x_ of type [**Offset-B12**](#Offset-B12) <br>
* _y_ of type [**Offset-B12**](#Offset-B12) <br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
Node-XY-24b ::= SEQUENCE {
  x  Offset-B12,
  y  Offset-B12
}
```

### <a name="Node-XY-26b"></a>Node-XY-26b
A 26-bit node type with offset values from the last point in X and Y.

* _x_ of type [**Offset-B13**](#Offset-B13) <br>
* _y_ of type [**Offset-B13**](#Offset-B13) <br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
Node-XY-26b ::= SEQUENCE {
  x  Offset-B13,
  y  Offset-B13
}
```

### <a name="Node-XY-28b"></a>Node-XY-28b
A 28-bit node type with offset values from the last point in X and Y.

* _x_ of type [**Offset-B14**](#Offset-B14) <br>
* _y_ of type [**Offset-B14**](#Offset-B14) <br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
Node-XY-28b ::= SEQUENCE {
  x  Offset-B14,
  y  Offset-B14
}
```

### <a name="Node-XY-32b"></a>Node-XY-32b
A 32-bit node type with offset values from the last point in X and Y.

* _x_ of type [**Offset-B16**](#Offset-B16) <br>
* _y_ of type [**Offset-B16**](#Offset-B16) <br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
Node-XY-32b ::= SEQUENCE {
  x  Offset-B16,
  y  Offset-B16
}
```

### <a name="NodeListXY"></a>NodeListXY
This DF provides the sequence of signed offset node point values for determining the Xs and Ys
 (and possibly Width or Zs when present), using the then current Position3D object to build a path for the centerline of
 the subject lane type. Each X,Y point is referred to as a Node Point. The straight line paths between these points are
 referred to as Segments.
 All nodes may have various optional attributes the state of which can vary along the path and which are enabled and
 disabled by the sequence of objects found in the list of node structures. Refer to the explanatory text in Section 11 for a
 description of how to correctly encode and decode this type of the data element. As a simple example, a motor vehicle
 lane may have a section of the overall lane path marked "do not block", indicating that vehicles should not come to a stop
 and remain in that region. This is encoded in the Node data structures by an element in one node to indicate the start of
 the "do not block" lane attributes at a given offset, and then by a termination element when this attribute is set false. Other
 types of elements in the segment choice allow inserting attributes containing data values affecting the segment or the
 node.

* _nodes_ of type [**NodeSetXY**](ETSI-ITS-DSRC.md#NodeSetXY) <br>
  a lane made up of two or more XY node points and any attributes defined in those nodes

* _computed_ of type [**ComputedLane**](#ComputedLane) <br>
  a lane path computed by translating the data defined by another lane


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
NodeListXY ::= CHOICE {
  nodes     NodeSetXY,
  computed  ComputedLane,
  ...
}
```

### <a name="NodeOffsetPointXY"></a>NodeOffsetPointXY
This DF presents a structure to hold different sized data frames for a single node
 point in a lane. Nodes are described in terms of X and Y offsets in units of 1 centimeter (when zoom is 1:1). Changes in
 elevation and in the lane width can be expressed in a similar way with the optional Attributes data entry which appears
 alongside the NodeOffsetPoint in use.

 The choice of which node type is driven by the magnitude (size) of the offset data to be encoded. When the distance from
 the last node point is smaller, the smaller entries can (and should) be chosen
 Each single selected node is computed as an X and Y offset from the prior node point unless one of the entries reflecting
 a complete lat-long representation is selected. In this case, subsequent entries become offsets from that point. This ability
 was added for assistance with the development, storage, and back office exchange of messages where message size is
 not a concern and should not be sent over the air due to its additional message payload size.

 The general usage guidance is to construct the content of each lane node point with the smallest possible element to
 conserve message size. However, using an element which is larger than needed is not a violation of the ASN.1 rules.

* _node-XY1_ of type [**Node-XY-20b**](#Node-XY-20b) <br>
  node is within 5.11m of last node

* _node-XY2_ of type [**Node-XY-22b**](#Node-XY-22b) <br>
  node is within 10.23m of last node

* _node-XY3_ of type [**Node-XY-24b**](#Node-XY-24b) <br>
  node is within 20.47m of last node

* _node-XY4_ of type [**Node-XY-26b**](#Node-XY-26b) <br>
  node is within 40.96m of last node

* _node-XY5_ of type [**Node-XY-28b**](#Node-XY-28b) <br>
  node is within 81.91m of last node

* _node-XY6_ of type [**Node-XY-32b**](#Node-XY-32b) <br>
  node is within 327.67m of last node

* _node-LatLon_ of type [**Node-LLmD-64b**](#Node-LLmD-64b) <br>
  node is a full 32b Lat/Lon range

* regional<br>
  optional region specific data.


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
NodeOffsetPointXY ::= CHOICE {
  node-XY1         Node-XY-20b,
  node-XY2         Node-XY-22b,
  node-XY3         Node-XY-24b,
  node-XY4         Node-XY-26b,
  node-XY5         Node-XY-28b,
  node-XY6         Node-XY-32b,
  node-LatLon      Node-LLmD-64b,
  regional         RegionalExtension {{Reg-NodeOffsetPointXY}}
}
```

### <a name="NodeXY"></a>NodeXY
This DF presents a structure to hold data for a single node point in a path. Each selected node
 has an X and Y offset from the prior node point (or a complete lat-long representation in some cases) as well as optional
 attribute information. The node list for a lane (or other object) is made up of a sequence of these to describe the desired
 path. The X,Y points are selected to reflect the centerline of the path with sufficient accuracy for the intended applications.
 Simple lanes can be adequately described with only two node points, while lanes with curvature may require more points.
 Changes to the lane width and elevation can be expressed in the NodeAttributes entry, as well as various attributes that
 pertain to either the current node point or to one of more subsequent segments along the list of lane node points. As a
 broad concept, NodeAttributes are used to describe aspects of the lane that persist for only a portion of the overall lane
 path (either at a node or over a set of segments).
 A further description of the use of the NodeOffsetPoint and the Attributes data concepts can be found in the data
 dictionary entries for each one. Note that each allows regional variants to be supported as well.

* _delta_ of type [**NodeOffsetPointXY**](ETSI-ITS-DSRC.md#NodeOffsetPointXY) <br>
  A choice of which X,Y offset value to use this includes various delta values as well a regional choices.

* _attributes_ of type [**NodeAttributeSetXY**](#NodeAttributeSetXY)  OPTIONAL<br>
  Any optional Attributes which are needed. This includes changes to the current lane width and elevation.


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
NodeXY ::= SEQUENCE {
  delta       NodeOffsetPointXY,
  attributes  NodeAttributeSetXY OPTIONAL,
  ...
}
```

### <a name="NodeSetXY"></a>NodeSetXY
This DF consists of a list of Node entries using XY offsets.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
NodeSetXY ::= SEQUENCE (SIZE(2..63)) OF NodeXY
```

### <a name="OcitRequestorDescriptionContainer"></a>OcitRequestorDescriptionContainer
This DF is the ODG Addition for Legancy R09 telegrams.

* _reportingPoint_ of type [**ReportingPoint**](#ReportingPoint)  OPTIONAL<br>
  reporting point as of R09 (maps to R09 field M Meldepunktnummer)

* _priorityLevel_ of type [**PriorityLevel**](#PriorityLevel)  OPTIONAL<br>
  priority level as of R09 (maps to R09 field P Prioritaet)

* _length_ of type [**TrainLength**](#TrainLength)  OPTIONAL<br>
  train length point as of R09 (maps to R09 field A Zuglaenge)

* _route_ of type [**RouteNumber**](#RouteNumber)  OPTIONAL<br>
  route as of R09 (maps to R09 field K Kursnummer)

* _line_ of type [**LineNumber**](#LineNumber)  OPTIONAL<br>
  line as of R09 (maps to R09 field L Liniennummer)

* _direction_ of type [**TransitDirection**](#TransitDirection)  OPTIONAL<br>
  direction as of R09 (maps to R09 field H Richtung von Hand)

* _tour_ of type [**TourNumber**](#TourNumber)  OPTIONAL<br>
  tour as of R09 (maps to R09 field Z Zielnummer)

* _version_ of type [**VersionId**](#VersionId)  OPTIONAL<br>
  version of R09


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V2.2.1_
```asn1
OcitRequestorDescriptionContainer ::= SEQUENCE {
  reportingPoint      ReportingPoint OPTIONAL,
  priorityLevel       PriorityLevel OPTIONAL,
  length              TrainLength OPTIONAL,
  route               RouteNumber OPTIONAL,
  line                LineNumber OPTIONAL,
  direction           TransitDirection OPTIONAL,
  tour                TourNumber OPTIONAL,
  version             VersionId OPTIONAL,
  ...
}
```

Thomas Ritter's avatar
Thomas Ritter committed
### <a name="OverlayLaneList"></a>OverlayLaneList
This DF is a sequence of lane IDs which refers to lane objects that overlap or overlay the current lane's spatial path.

 Contains the unique ID numbers for any lane object which have spatial paths that overlay (run on top of, and not
 simply cross with) the current lane.
 Such as a train path that overlays a motor vehicle lane object for a roadway segment.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
OverlayLaneList ::= SEQUENCE (SIZE(1..5)) OF LaneID
```

### <a name="PositionalAccuracy"></a>PositionalAccuracy
This DF consists of various parameters of quality used to model the accuracy of the
 positional determination with respect to each given axis.

* _semiMajor_ of type [**SemiMajorAxisAccuracy**](#SemiMajorAxisAccuracy) <br>
* _semiMinor_ of type [**SemiMinorAxisAccuracy**](#SemiMinorAxisAccuracy) <br>
* _orientation_ of type [**SemiMajorAxisOrientation**](#SemiMajorAxisOrientation) <br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
PositionalAccuracy ::= SEQUENCE {
   semiMajor     SemiMajorAxisAccuracy,
   semiMinor     SemiMinorAxisAccuracy,
   orientation   SemiMajorAxisOrientation
}
```

### <a name="PositionConfidenceSet"></a>PositionConfidenceSet
This DF combines multiple related bit fields into a single concept.

* _pos_ of type [**PositionConfidence**](#PositionConfidence) <br>
  confidence for both horizontal directions

* _elevation_ of type [**ElevationConfidence**](#ElevationConfidence) <br>
  confidence for vertical direction


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
PositionConfidenceSet ::= SEQUENCE {
   pos        PositionConfidence,
   elevation  ElevationConfidence
}
```

### <a name="Position3D"></a>Position3D
This DF provides a precise location in the WGS-84 coordinate system, from which short
 offsets may be used to create additional data using a flat earth projection centered on this location. Position3D is typically
 used in the description of maps and intersections, as well as signs and traveler data.

Values:
* _lat_ of type [**Latitude**](ETSI-ITS-CDD.md#Latitude) <br>
  Latitude in 1/10th microdegrees

* _long_ of type [**Longitude**](ETSI-ITS-CDD.md#Longitude) <br>
  Longitude in 1/10th microdegrees

* _elevation_ of type [**Elevation**](#Elevation)   OPTIONAL<br>
  The elevation information is defined by the regional extension (see module ETSI-ITS-DSRC-AddGrpC). 
                     Therefore, the `elevation` data element of `DF_Position3D` is not used.
Thomas Ritter's avatar
Thomas Ritter committed

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  optional region specific data.

* **RegionalExtension** {{Reg-Position3D}} OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
Position3D ::= SEQUENCE {
  lat        Latitude,
  long       Longitude,
  elevation  Elevation  OPTIONAL,
  regional   SEQUENCE (SIZE(1..4)) OF
             RegionalExtension {{Reg-Position3D}} OPTIONAL,
  ...
}
```

### <a name="PreemptPriorityList"></a>PreemptPriorityList
This DF consists of a list of RegionalSignalControlZone entries.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
PreemptPriorityList ::= SEQUENCE (SIZE(1..32)) OF SignalControlZone
```

### <a name="RegulatorySpeedLimit"></a>RegulatorySpeedLimit
This DF is used to convey a regulatory speed about a lane, lanes, or roadway segment.

* _type_ of type [**SpeedLimitType**](#SpeedLimitType) <br>
  The type of regulatory speed which follows

* _speed_ of type [**Velocity**](#Velocity) <br>
  The speed in units of 0.02 m/s


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RegulatorySpeedLimit ::= SEQUENCE {
  type        SpeedLimitType,
  speed       Velocity
}
```

### <a name="RequestorDescription"></a>RequestorDescription
This DF is used to provide identity information about a selected vehicle or users.
 This data frame is typically used with fleet type vehicles which can (or which must) safely release such information for use
 with probe measurements or with other interactions (such as a signal request).

Values:
* _id_ of type [**VehicleID**](#VehicleID) <br>
  The ID used in the CAM of the requestor. This ID is presumed not to change during the exchange.

* _type_ of type [**RequestorType**](#RequestorType)  OPTIONAL<br>
  Information regarding all type and class data about the requesting vehicle

* _position_ of type [**RequestorPositionVector**](#RequestorPositionVector)  OPTIONAL<br>
  The location of the requesting vehicle

* _name_ of type [**DescriptiveName**](#DescriptiveName)  OPTIONAL<br>
  A human readable name for debugging use

* _routeName_ of type [**DescriptiveName**](#DescriptiveName)  OPTIONAL<br>
  A string for transit operations use

* _transitStatus_ of type [**TransitVehicleStatus**](#TransitVehicleStatus)  OPTIONAL<br>
  current vehicle state (loading, etc.)

* _transitOccupancy_ of type [**TransitVehicleOccupancy**](#TransitVehicleOccupancy)  OPTIONAL<br>
  current vehicle occupancy

* _transitSchedule_ of type [**DeltaTime**](ETSI-ITS-DSRC.md#DeltaTime)  OPTIONAL<br>
  current vehicle schedule adherence

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  optional region specific data.

* **RegionalExtension** {{Reg-RequestorDescription}} OPTIONAL<br>
* _--_ of type [**Extension**](#Extension)  for OCIT<br>
* _ocit_ of type [**OcitRequestorDescriptionContainer**](#OcitRequestorDescriptionContainer)  <br>
  Extension container for Legacy R09 data (as defined by [OCIT]).

Thomas Ritter's avatar
Thomas Ritter committed

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;Note that the requestor description elements which are used when the request (the req) is made differ from
        those used when the status of an active or pending request is reported (the ack). Typically, when reporting the status to
        other parties, less information is required and only the temporaryID (contained in the VehicleID) and request number (a
        unique ID used in the orginal request) are used.
>>>

```asn1
RequestorDescription ::= SEQUENCE {
  id                VehicleID,
  type              RequestorType OPTIONAL,
  position          RequestorPositionVector OPTIONAL,
  name              DescriptiveName OPTIONAL,
  routeName         DescriptiveName OPTIONAL,
  transitStatus     TransitVehicleStatus OPTIONAL,
  transitOccupancy  TransitVehicleOccupancy OPTIONAL,
  transitSchedule   DeltaTime OPTIONAL,
  regional          SEQUENCE (SIZE(1..4)) OF
                    RegionalExtension {{Reg-RequestorDescription}} OPTIONAL,
  ...,
  [[ 
    ocit OcitRequestorDescriptionContainer ]]
Thomas Ritter's avatar
Thomas Ritter committed
}
```

### <a name="RequestorPositionVector"></a>RequestorPositionVector
This DF provides a report of the requestor's position, speed, and heading.
 Used by a vehicle or other type of user to request services and at other times when the larger FullPositionVector is not required.

* _position_ of type [**Position3D**](#Position3D) <br>
* _heading_ of type [**Angle**](#Angle)  OPTIONAL<br>
* _speed_ of type [**TransmissionAndSpeed**](#TransmissionAndSpeed)  OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RequestorPositionVector ::= SEQUENCE {
  position           Position3D,
  heading            Angle OPTIONAL,
  speed              TransmissionAndSpeed OPTIONAL,
  ...
}
```

### <a name="RequestorType"></a>RequestorType
This DF is used when a DSRC-equipped device is requesting service from another
 device. The most common use case is when a vehicle is requesting a signal preemption or priority service call from the
 signal controller in an intersection. This data frame provides the details of the requestor class taxonomy required to
 support the request. Depending on the precise use case and the local implementation, these details can vary
 considerably. As a result, besides the basic role of the vehicle, the other classification systems supported are optional. It
 should also be observed that often only a subset of the information in the RequestorType data frame is used to report the
 "results" of such a request to others. As an example, a police vehicle might request service based on being in a police
 vehicle role (and any further sub-type if required) and on the type of service call to which the vehicle is then responding
 (perhaps a greater degree of emergency than another type of call), placing these information elements in the
 RequestorType, which is then part of the Signal Request Message (SRM). This allows the roadway operator to define
 suitable business rules regarding how to reply. When informing the requestor and other nearby drivers of the outcome,
 using the Signal Status Message (SSM) message, only the fact that the preemption was granted or denied to some
 vehicle with a unique request ID is conveyed.

* _role_ of type [**BasicVehicleRole**](#BasicVehicleRole) <br>
  Basic role of this user at this time.

* _subrole_ of type [**RequestSubRole**](#RequestSubRole)  OPTIONAL<br>
  A local list with role based items.

* _request_ of type [**RequestImportanceLevel**](#RequestImportanceLevel)  OPTIONAL<br>
  A local list with request items

* _iso3883_ of type [**Iso3833VehicleType**](ETSI-ITS-CDD.md#Iso3833VehicleType)  OPTIONAL<br>
Thomas Ritter's avatar
Thomas Ritter committed
2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721
  Additional classification details

* _hpmsType_ of type [**VehicleType**](#VehicleType)  OPTIONAL<br>
  HPMS classification types

* _regional_ of type [**RegionalExtension**](#RegionalExtension)  {{Reg-RequestorType}} OPTIONAL<br>
  optional region specific data.


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RequestorType ::= SEQUENCE {
  role         BasicVehicleRole,
  subrole      RequestSubRole OPTIONAL,
  request      RequestImportanceLevel OPTIONAL,
  iso3883      Iso3833VehicleType OPTIONAL,
  hpmsType     VehicleType OPTIONAL,
  regional     RegionalExtension {{Reg-RequestorType}} OPTIONAL,
  ...
}
```

### <a name="RestrictionClassAssignment"></a>RestrictionClassAssignment
This DF is used to assign (or bind) a single RestrictionClassID data
 element to a list of all user classes to which it applies. A collection of these bindings is conveyed in the
 RestrictionClassList data frame in the MAP message to travelers. The established index is then used in the lane object of
 the MAP message, in the ConnectTo data frame, to qualify to whom a signal group ID applies when it is sent by the SPAT
 message about a movement.

* _id_ of type [**RestrictionClassID**](#RestrictionClassID) <br>
  the unique value (within an intersection or local region) that is assigned to this group of users.

* _users_ of type [**RestrictionUserTypeList**](#RestrictionUserTypeList) <br>
  The list of user types/classes to which this restriction ID applies.


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RestrictionClassAssignment ::= SEQUENCE {
  id       RestrictionClassID,
  users    RestrictionUserTypeList
}
```

### <a name="RestrictionClassList"></a>RestrictionClassList
This DF is used to enumerate a list of user classes which belong to a given
 assigned index. The resulting collection is treated as a group by the signal controller when it issues movement data
 (signal phase information) with the GroupID for this group. This data frame is typically static for long periods of time
 (months) and conveyed to the user by means of the MAP message.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;The overall restriction class assignment process allows dynamic support within the framework of the common
        message set for the various special cases that some signalized intersections must support. While the assigned value
        needs to be unique only within the scope of the intersection that uses it, the resulting assignment lists will tend to be static
        and stable for regional deployment areas such as a metropolitan area based on their operational practices and needs.
>>>

```asn1
RestrictionClassList ::= SEQUENCE (SIZE(1..254)) OF RestrictionClassAssignment
```

### <a name="RestrictionUserType"></a>RestrictionUserType
This DF is used to provide a means to select one, and only one, user type or class
 from a number of well-known lists. The selected entry is then used in the overall Restriction Class assignment process to
 indicate that a given GroupID (a way of expressing a movement in the SPAT/MAP system) applies to (is restricted to) this
 class of user.

Values:
* _basicType_ of type [**RestrictionAppliesTo**](#RestrictionAppliesTo) <br>
  a set of the most commonly used types.

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  optional region specific data.

* **RegionalExtension** {{Reg-RestrictionUserType}}<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RestrictionUserType ::= CHOICE {
  basicType   RestrictionAppliesTo,
  regional    SEQUENCE (SIZE(1..4)) OF
              RegionalExtension {{Reg-RestrictionUserType}},
  ...
}
```

### <a name="RestrictionUserTypeList"></a>RestrictionUserTypeList
This DF consists of a list of [**RestrictionUserType**](#RestrictionUserType) entries.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RestrictionUserTypeList ::= SEQUENCE (SIZE(1..16)) OF  RestrictionUserType
```

### <a name="RoadLaneSetList"></a>RoadLaneSetList
This DF consists of a list of GenericLane entries used to describe a segment of roadway.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RoadLaneSetList ::= SEQUENCE (SIZE(1..255)) OF GenericLane
```

### <a name="RoadSegmentReferenceID"></a>RoadSegmentReferenceID
This DF is used to convey theRoadSegmentID which is unique to a given road segment of interest,
 and also the RoadRegulatorID assigned to the region in which it is operating (when required).

* _region_ of type [**RoadRegulatorID**](#RoadRegulatorID)  OPTIONAL<br>
  a globally unique regional assignment value typically assigned to a regional DOT authority the value zero shall be used for testing needs.

* _id_ of type [**RoadSegmentID**](#RoadSegmentID) <br>
  a unique mapping to the road segment in question within the above region of use during its period of assignment and use
                  note that unlike intersectionID values, this value can be reused by the region.


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RoadSegmentReferenceID ::= SEQUENCE {
  region  RoadRegulatorID OPTIONAL,
  id      RoadSegmentID
}
```

### <a name="RoadSegment"></a>RoadSegment
This DF is a complete description of a RoadSegment including its geometry and its
 allowed navigational paths (independent of any additional regulatory restrictions that may apply over time or from user
 classification) and any current disruptions such as a work zone or incident event.

Values:
* _name_ of type [**DescriptiveName**](#DescriptiveName)  OPTIONAL<br>
  some descriptive text.

* _id_ of type [**RoadSegmentReferenceID**](#RoadSegmentReferenceID) <br>
  a globally unique value for the segment.

* _revision_ of type [**MsgCount**](#MsgCount) <br>
  .

* _refPoint_ of type [**Position3D**](#Position3D) <br>
  the reference from which subsequent data points are offset until a new point is used.

* _laneWidth_ of type [**LaneWidth**](#LaneWidth)  OPTIONAL<br>
  Reference width used by all subsequent lanes unless a new width is given.

* _speedLimits_ of type [**SpeedLimitList**](#SpeedLimitList)  OPTIONAL<br>
  Reference regulatory speed limits used by all subsequent lanes unless a new speed is given.

* _roadLaneSet_ of type [**RoadLaneSetList**](#RoadLaneSetList) <br>
  Data describing disruptions in the RoadSegment such as work zones etc will be added here.

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  optional region specific data.

* **RegionalExtension** {{Reg-RoadSegment}} OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RoadSegment ::= SEQUENCE {
  name        DescriptiveName OPTIONAL,
  id          RoadSegmentReferenceID,
  revision    MsgCount,
  refPoint    Position3D,
  laneWidth   LaneWidth OPTIONAL,
  speedLimits SpeedLimitList OPTIONAL,
  roadLaneSet RoadLaneSetList,
  regional    SEQUENCE (SIZE(1..4)) OF
              RegionalExtension {{Reg-RoadSegment}} OPTIONAL,
  ...
}
```

### <a name="RoadSegmentList"></a>RoadSegmentList
This DF consists of a list of [**RoadSegment**](#RoadSegment) entries.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RoadSegmentList ::= SEQUENCE (SIZE(1..32)) OF RoadSegment
```

### <a name="RTCMheader"></a>RTCMheader
This DF is a collection of data values used to convey RTCM information between users. It
 is not required or used when sending RTCM data from a corrections source to end users (from a base station to devices
 deployed in the field which are called rovers).

* _status_ of type [**GNSSstatus**](#GNSSstatus) <br>
* _offsetSet_ of type [**AntennaOffsetSet**](#AntennaOffsetSet) <br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RTCMheader ::= SEQUENCE {
   status     GNSSstatus,
   offsetSet  AntennaOffsetSet
}
```

### <a name="RTCMmessageList"></a>RTCMmessageList
This DF consists of a list of [**RTCMmessage**](#RTCMmessage) entries.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RTCMmessageList ::= SEQUENCE (SIZE(1..5)) OF RTCMmessage
```

### <a name="SegmentAttributeXYList"></a>SegmentAttributeXYList
This DF consists of a list of [**SegmentAttributeXY**](#SegmentAttributeXY) entries.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SegmentAttributeXYList ::= SEQUENCE (SIZE(1..8)) OF SegmentAttributeXY
```

### <a name="SignalControlZone"></a>SignalControlZone
This DF is a dummy placeholder to contain a regional SignalControlZone DF.
 It is not used, yet here for backwards compatibility.

* _zone_ of type [**RegionalExtension**](#RegionalExtension)  {{Reg-SignalControlZone}}<br>
* regional<br>
  optional region specific data.


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SignalControlZone ::=  SEQUENCE {
  zone  RegionalExtension {{Reg-SignalControlZone}},
  ...
}
```

### <a name="SignalRequesterInfo"></a>SignalRequesterInfo
This DF is used to contain information regarding the entity that requested a given
 signal behavior. In addition to the VehicleID, the data frame also contains a request reference number used to uniquely
 refer to the request and some basic type information about the request maker which may be used by other parties.

* _id_ of type [**VehicleID**](#VehicleID) <br>
  to uniquely identify the requester and the specific request to all parties.

* _request_ of type [**RequestID**](#RequestID) <br>
  to uniquely identify the requester and the specific request to all parties.

* _sequenceNumber_ of type [**MsgCount**](#MsgCount) <br>
  to uniquely identify the requester and the specific request to all parties.

* _role_ of type [**BasicVehicleRole**](#BasicVehicleRole)  OPTIONAL<br>
  vehicle role

* _typeData_ of type [**RequestorType**](#RequestorType)  OPTIONAL<br>
  Used when addition data besides the role is needed, at which point the role entry above is not sent.


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SignalRequesterInfo ::= SEQUENCE {
  id             VehicleID,
  request        RequestID,
  sequenceNumber MsgCount,
  role           BasicVehicleRole OPTIONAL,
  typeData       RequestorType OPTIONAL,
  ...
}
```

### <a name="SignalRequest"></a>SignalRequest
This DF is used (as part of a request message) to request either a priority or a preemption service
 from a signalized intersection. It relates the intersection ID as well as the specific request information. Additional
 information includes the approach and egress values or lanes to be used.

Values:
* _id_ of type [**IntersectionReferenceID**](#IntersectionReferenceID) <br>
  the unique ID of the target intersection

* _requestID_ of type [**RequestID**](#RequestID) <br>
  The unique requestID used by the requestor

* _requestType_ of type [**PriorityRequestType**](#PriorityRequestType) <br>
  The type of request or cancel for priority or preempt use when a prior request is canceled, only the requestID is needed.

* _inBoundLane_ of type [**IntersectionAccessPoint**](#IntersectionAccessPoint) <br>
  desired entry approach or lane.

* _outBoundLane_ of type [**IntersectionAccessPoint**](#IntersectionAccessPoint)  OPTIONAL<br>
  desired exit approach or lane. the value zero is used to indicate intent to stop within the intersection.

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  optional region specific data.

* **RegionalExtension** {{Reg-SignalRequest}} OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;In typical use either an approach or a lane number would be given, this indicates the requested
        path through the intersection to the degree it is known.
>>>

```asn1
SignalRequest ::= SEQUENCE {
  id            IntersectionReferenceID,
  requestID     RequestID,
  requestType   PriorityRequestType,
  inBoundLane   IntersectionAccessPoint,
  outBoundLane  IntersectionAccessPoint OPTIONAL,
  regional      SEQUENCE (SIZE(1..4)) OF
                RegionalExtension {{Reg-SignalRequest}} OPTIONAL,
  ...
}
```

### <a name="SignalRequestList"></a>SignalRequestList
This DF consists of a list of [**SignalRequest**](#SignalRequest) entries.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SignalRequestList ::= SEQUENCE (SIZE(1..32)) OF SignalRequestPackage
```

### <a name="SignalRequestPackage"></a>SignalRequestPackage
This DF contains both the service request itself (the preemption and priority
 details and the inbound-outbound path details for an intersection) and the time period (start and end time) over which this
 service is sought from one single intersection. One or more of these packages are contained in a list in the Signal
 Request Message (SREM).

Values:
* _request_ of type [**SignalRequest**](#SignalRequest) <br>
  The specific request to the intersection contains IntersectionID, request type, requested action (approach/lane request).

* _minute_ of type [**MinuteOfTheYear**](#MinuteOfTheYear)  OPTIONAL<br>
  Time period start.

* _second_ of type [**DSecond**](#DSecond)  OPTIONAL<br>
  Time period start.

* _duration_ of type [**DSecond**](#DSecond)  OPTIONAL<br>
  The duration value is used to provide a short interval that extends the ETA so that the requesting vehicle can arrive at
                    the point of service with uncertainty or with some desired duration of service. This concept can be used to avoid needing
                    to frequently update the request. The requester must update the ETA and duration values if the
                    period of services extends beyond the duration time. It should be assumed that if the vehicle does not clear the
                    intersection when the duration is reached, the request will be cancelled and the intersection will revert to normal operation.

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  optional region specific data.

* **RegionalExtension** {{Reg-SignalRequestPackage}} OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SignalRequestPackage ::= SEQUENCE {
  request        SignalRequest,
  minute         MinuteOfTheYear OPTIONAL,
  second         DSecond OPTIONAL,
  duration       DSecond OPTIONAL,
  regional       SEQUENCE (SIZE(1..4)) OF
                 RegionalExtension {{Reg-SignalRequestPackage}} OPTIONAL,
  ...
}
```

### <a name="SignalStatus"></a>SignalStatus
This DF is used to provide the status of a single intersection to others, including any active
 preemption or priority state in effect.

Values:
* _sequenceNumber_ of type [**MsgCount**](#MsgCount) <br>
  changed whenever the below contents have change

* _id_ of type [**IntersectionReferenceID**](#IntersectionReferenceID) <br>
  this provides a unique mapping to the intersection map in question which provides complete location
                          and approach/movement/lane data as well as zones for priority/preemption.

* _sigStatus_ of type [**SignalStatusPackageList**](#SignalStatusPackageList) <br>
  a list of detailed status containing all priority or preemption state data, both active and pending,
                          and who requested it requests which are denied are also listed here for a short period of time.

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  optional region specific data.

* **RegionalExtension** {{Reg-SignalStatus}} OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SignalStatus ::= SEQUENCE {
  sequenceNumber MsgCount,
  id             IntersectionReferenceID,
  sigStatus      SignalStatusPackageList,
  regional       SEQUENCE (SIZE(1..4)) OF
                 RegionalExtension {{Reg-SignalStatus}} OPTIONAL,
  ...
}
```

### <a name="SignalStatusList"></a>SignalStatusList
This DF consists of a list of [**SignalStatus**](#SignalStatus) entries.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SignalStatusList ::= SEQUENCE (SIZE(1..32)) OF SignalStatus
```

### <a name="SignalStatusPackageList"></a>SignalStatusPackageList
This DF consists of a list of [**SignalStatusPackage**](#SignalStatusPackage) entries.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SignalStatusPackageList ::= SEQUENCE (SIZE(1..32)) OF SignalStatusPackage
```

### <a name="SignalStatusPackage"></a>SignalStatusPackage
This DF contains all the data needed to describe the preemption or priority state
 of the signal controller with respect to a given request and to uniquely identify the party who requested that state to occur.
 It should be noted that this data frame describes both active and anticipated states of the controller. A requested service
 may not be active when the message is created and issued. A requested service may be rejected. This structure allows
 the description of pending requests that have been granted (accepted rather than rejected) but are not yet active and
 being serviced. It also provides for the description of rejected requests so that the initial message is acknowledged
 (completing a dialog using the broadcast messages).

Values:
* _requester_ of type [**SignalRequesterInfo**](#SignalRequesterInfo)  OPTIONAL<br>
  The party that made the initial SREM request.

* _inboundOn_ of type [**IntersectionAccessPoint**](#IntersectionAccessPoint) <br>
  estimated lane / approach of vehicle.

* _outboundOn_ of type [**IntersectionAccessPoint**](#IntersectionAccessPoint)  OPTIONAL<br>
  estimated lane / approach of vehicle.

* _minute_ of type [**MinuteOfTheYear**](#MinuteOfTheYear)  OPTIONAL<br>
  The Estimated Time of Arrival (ETA) when the service is requested. This data echos the data of the request.

* _second_ of type [**DSecond**](#DSecond)  OPTIONAL<br>
  seconds part of ETA.

* _duration_ of type [**DSecond**](#DSecond)  OPTIONAL<br>
  duration part of ETA.

* _status_ of type [**PrioritizationResponseStatus**](ETSI-ITS-DSRC.md#PrioritizationResponseStatus) <br>
  Status of request, this may include rejection.

* _regional_ of type **SEQUENCE**  (SIZE(1..4)) OF<br>
  optional region specific data.

* **RegionalExtension** {{Reg-SignalStatusPackage}} OPTIONAL<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SignalStatusPackage ::= SEQUENCE {
  requester    SignalRequesterInfo OPTIONAL,
  inboundOn    IntersectionAccessPoint,
  outboundOn   IntersectionAccessPoint OPTIONAL,
  minute       MinuteOfTheYear OPTIONAL,
  second       DSecond OPTIONAL,
  duration     DSecond OPTIONAL,
  status       PrioritizationResponseStatus,
  regional     SEQUENCE (SIZE(1..4)) OF
               RegionalExtension {{Reg-SignalStatusPackage}} OPTIONAL,
  ...
}
```

### <a name="SpeedandHeadingandThrottleConfidence"></a>SpeedandHeadingandThrottleConfidence
This DF is a single data frame combining multiple related bit fields into one concept.

* _heading_ of type [**HeadingConfidenceDSRC**](#HeadingConfidenceDSRC) <br>
  confidence for heading values

Thomas Ritter's avatar
Thomas Ritter committed
* _speed_ of type [**SpeedConfidenceDSRC**](#SpeedConfidenceDSRC) <br>
  confidence for speed values

Thomas Ritter's avatar
Thomas Ritter committed
* _throttle_ of type [**ThrottleConfidence**](#ThrottleConfidence) <br>
  confidence for throttle values 

Thomas Ritter's avatar
Thomas Ritter committed

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SpeedandHeadingandThrottleConfidence ::= SEQUENCE {
   heading   HeadingConfidenceDSRC,
   speed     SpeedConfidenceDSRC,
   throttle  ThrottleConfidence
}
```

### <a name="SpeedLimitList"></a>SpeedLimitList
This DF consists of a list of SpeedLimit entries.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SpeedLimitList ::= SEQUENCE (SIZE(1..9)) OF RegulatorySpeedLimit
```

### <a name="SpeedLimitType"></a>SpeedLimitType
This DE relates the type of speed limit to which a given speed refers.

 - unknown: Speed limit type not available
 - maxSpeedInSchoolZone: Only sent when the limit is active
 - maxSpeedInSchoolZoneWhenChildrenArePresent: Sent at any time
 - maxSpeedInConstructionZone: Used for work zones, incident zones, etc. where a reduced speed is present
 - vehicleMinSpeed: Regulatory speed limit for general traffic
 - vehicleMaxSpeed: Regulatory speed limit for general traffic

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SpeedLimitType ::= ENUMERATED {
   unknown,
   maxSpeedInSchoolZone,
   maxSpeedInSchoolZoneWhenChildrenArePresent,
   maxSpeedInConstructionZone,
   vehicleMinSpeed,
   vehicleMaxSpeed,
   vehicleNightMaxSpeed,
   truckMinSpeed,
   truckMaxSpeed,
   truckNightMaxSpeed,
   vehiclesWithTrailersMinSpeed,
   vehiclesWithTrailersMaxSpeed,
   vehiclesWithTrailersNightMaxSpeed,
   ...
}
```

### <a name="TimeChangeDetails"></a>TimeChangeDetails
This DF conveys details about the timing of a phase within a movement. The core
 data concept expressed is the time stamp (time mark) at which the related phase will change to the next state. This is
 often found in the MinEndTime element, but the other elements may be needed to convey the full concept when adaptive
 timing is employed.

* _startTime_ of type [**TimeMark**](#TimeMark)                OPTIONAL<br>
Thomas Ritter's avatar
Thomas Ritter committed
  is used to relate when the phase itself started or is expected to start. This in turn allows the
                     indication that a set of time change details refers to a future phase, rather than a currently active phase.
                     By this method, timing information about "pre" phase events (which are the short transitional phase used to alert OBUs to
Thomas Ritter's avatar
Thomas Ritter committed
                     an impending green/go or yellow/caution phase) and the longer yellow-caution phase data is supported in the same form
                     as various green/go phases. In theory, the time change details could be sent for a large sequence of phases if the signal
                     timing was not adaptive and the operator wished to do so. In practice, it is expected only the "next" future phase will
                     commonly be sent. It should be noted that this also supports the sending of time periods regarding various red phases;
                     however, this is not expected to be done commonly.

* _minEndTime_ of type [**TimeMark**](#TimeMark) <br>
  is used to convey the earliest time possible at which the phase could change, except when
                     unpredictable events relating to a preemption or priority call disrupt a currently active timing plan. In a phase where the
                     time is fixed (as in a fixed yellow or clearance time), this element shall be used alone. This value can be viewed as the
                     earliest possible time at which the phase could change, except when unpredictable events relating to a preemption or
                     priority call come into play and disrupt a currently active timing plan.

* _maxEndTime_ of type [**TimeMark**](#TimeMark)                OPTIONAL<br>
Thomas Ritter's avatar
Thomas Ritter committed
  is used to convey the latest time possible which the phase could change,
                     except when unpredictable events relating to a preemption or priority
                     call come into play and disrupt a currently active timing plan. In a phase where the time is fixed (as in a fixed yellow or
                     clearance time), this element shall be used alone.

* _likelyTime_ of type [**TimeMark**](#TimeMark)                OPTIONAL<br>
Thomas Ritter's avatar
Thomas Ritter committed
  is used to convey the most likely time the phase changes. This occurs between MinEndTime and
                     MaxEndTime and is only relevant for traffic-actuated control programs. This time might be calculated out of logged
                     historical values, detected events (e.g., from inductive loops), or from other sources.

* _confidence_ of type [**TimeIntervalConfidence**](#TimeIntervalConfidence)  OPTIONAL<br>
  is used to convey basic confidence data about the likelyTime.

* _nextTime_ of type [**TimeMark**](#TimeMark)                OPTIONAL<br>
Thomas Ritter's avatar
Thomas Ritter committed
  is used to express a general (and presumably less precise) value regarding when this phase will
                     next occur. This is intended to be used to alert the OBU when the next green/go may occur so that various ECO driving
Thomas Ritter's avatar
Thomas Ritter committed
                     applications can better manage the vehicle during the intervening stopped time.


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;Remarks: It should be noted that all times are expressed as absolute values and not as countdown timer values. When
          the stated time mark is reached, the state changes to the next state. Several technical reasons led to this choice; among
          these was that with a countdown embodiment, there is an inherent need to update the remaining time every time a SPAT
          message is issued. This would require re-formulating the message content as as well as cryptographically signing the
          message each time. With the use of absolute values (time marks) chosen here, the current count down time when the
          message is created is added to the then-current time to create an absolute value and can be used thereafter without
          change. The message content need only change when the signal controller makes a timing decision to be published. This
          allows a clean separation of the logical functions of message creation from the logical functions of message scheduling
          and sending, and fulfills the need to minimize further real time processing when possible. This Standard sets no limits on
          where each of these functions is performed in the overall roadside system.
>>>

```asn1
TimeChangeDetails ::= SEQUENCE {
  startTime   TimeMark               OPTIONAL,
Thomas Ritter's avatar
Thomas Ritter committed
  minEndTime  TimeMark,
  maxEndTime  TimeMark               OPTIONAL,
  likelyTime  TimeMark               OPTIONAL,
Thomas Ritter's avatar
Thomas Ritter committed
  confidence  TimeIntervalConfidence OPTIONAL,
  nextTime    TimeMark               OPTIONAL
Thomas Ritter's avatar
Thomas Ritter committed
}
```

### <a name="TimeMark"></a>TimeMark
This DE is used to relate a moment in UTC (Coordinated Universal Time)-based time when a
 signal phase is predicted to change, with a precision of 1/10 of a second. A range of 60 full minutes is supported and it
 can be presumed that the receiver shares a common sense of time with the sender which is kept aligned to within a
 fraction of a second or better.

 If there is a need to send a value greater than the range allowed by the data element (over one hour in the future), the
 value 36000 shall be sent and shall be interpreted to indicate an indefinite future time value. When the value to be used is
 undefined or unknown a value of 36001 shall be sent. Note that leap seconds are also supported.

 The value is tenths of a second in the current or next hour in units of 1/10th second from UTC time
 - A range of 0-36000 covers one hour
Thomas Ritter's avatar
Thomas Ritter committed
 - The values 35991..35999 are used when a leap second occurs
 - The value 36000 is used to indicate time >3600 seconds
 - 36001 is to be used when value undefined or unknown

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;Note that this is NOT expressed in GPS time or in local time
>>>

```asn1
TimeMark ::= INTEGER (0..36001)
```

### <a name="TransmissionAndSpeed"></a>TransmissionAndSpeed
This DF expresses the speed of the vehicle and the state of the transmission.
 The transmission state of 'reverse' can be used as a sign value for the speed element when needed.

* _transmisson_ of type [**TransmissionState**](#TransmissionState) <br>
  state of the transmission

Thomas Ritter's avatar
Thomas Ritter committed
* _speed_ of type [**Velocity**](#Velocity) <br>
  speed of the vehicle

Thomas Ritter's avatar
Thomas Ritter committed

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
TransmissionAndSpeed ::= SEQUENCE {
  transmisson   TransmissionState,
  speed         Velocity
}
```

### <a name="VehicleID"></a>VehicleID
This DF is used to contain either a (US) TemporaryID or an (EU) StationID in a simple frame.
 These two different value domains are used to uniquely identify a vehicle or other object in these two regional DSRC
 value is unavailable but needed by another type of user (such as the roadside infrastructure sending data about an
 environments. In normal use cases, this value changes over time to prevent tracking of the subject vehicle. When this
 unequipped vehicle), the value zero shall be used. A typical restriction on the use of this value during a dialog or other
 exchange is that the value remains constant for the duration of that exchange. Refer to the performance requirements for
 a given application for details.

* _entityID_ of type [**TemporaryID**](#TemporaryID) <br>
  representation for US stations

Thomas Ritter's avatar
Thomas Ritter committed
* _stationID_ of type [**StationID**](ETSI-ITS-CDD.md#StationID) <br>
  representation for EU stations

Thomas Ritter's avatar
Thomas Ritter committed
2919 2920 2921 2922 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974 2975 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069 3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 3579 3580 3581 3582 3583 3584 3585 3586 3587 3588 3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599 3600 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
VehicleID ::= CHOICE {
  entityID     TemporaryID,
  stationID    StationID
}
```

### <a name="AdvisorySpeedType"></a>AdvisorySpeedType
This DE relates the type of travel to which a given speed refers. This element is
 typically used as part of an [**AdvisorySpeed**](#AdvisorySpeed) data frame for signal phase and timing data.

Values:
* **none** (0)<br>
* **greenwave** (1)<br>
* **ecoDrive** (2)<br>
* **transit** (3)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
AdvisorySpeedType ::= ENUMERATED {
  none       (0),
  greenwave  (1),
  ecoDrive   (2),
  transit    (3),
  ...
}
```

### <a name="AllowedManeuvers"></a>AllowedManeuvers
This DE relates the allowed (possible) maneuvers from a lane, typically a
 motorized vehicle lane. It should be noted that in practice these values may be further restricted by vehicle class, local
 regulatory environment and other changing conditions.

Values:
* **maneuverStraightAllowed** (0)<br>
* **maneuverLeftAllowed** (1)<br>
* **maneuverRightAllowed** (2)<br>
* **maneuverUTurnAllowed** (3)<br>
* **maneuverLeftTurnOnRedAllowed** (4)<br>
* **maneuverRightTurnOnRedAllowed** (5)<br>
* **maneuverLaneChangeAllowed** (6)<br>
* **maneuverNoStoppingAllowed** (7)<br>
* **yieldAllwaysRequired** (8)<br>
* **goWithHalt** (9)<br>
* **caution** (10)<br>
* **reserved1** (11)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;When used by data frames, the AllowedManeuvers data concept is used in two places: optionally in the
    generic lane structure to list all possible maneuvers (as in what that lane can do at its stop line point); and within each
    ConnectsTo structure. Each ConnectsTo structure contains a list used to provide a single valid maneuver in the context of
    one lane connecting to another in the context of a signal phase that applies to that maneuver. It should be noted that, in
    some intersections, multiple outbound lanes can be reached by the same maneuver (for example two independent left
    turns might be found in a 5-legged intersection) but that to reach any given lane from the stop line of another lane is
    always a single maneuver item (hence the use of a list). Not all intersection descriptions may contain an exhaustive set of
    ConnectsTo information (unsignalized intersections for example) and in such cases the AllowedManeuvers in the generic
    lane structure can be used. If present in both places, the data expressed in the generic lane shall not conflict with the data
    found in the collection of ConnectsTo entries.
>>>

```asn1
AllowedManeuvers ::= BIT STRING {
  maneuverStraightAllowed      (0),
  maneuverLeftAllowed          (1),
  maneuverRightAllowed         (2),
  maneuverUTurnAllowed         (3),
  maneuverLeftTurnOnRedAllowed (4),
  maneuverRightTurnOnRedAllowed (5),
  maneuverLaneChangeAllowed    (6),
  maneuverNoStoppingAllowed    (7),
  yieldAllwaysRequired         (8),
  goWithHalt                   (9),
  caution                      (10),
  reserved1                    (11)
} (SIZE(12))
```

### <a name="Angle"></a>Angle
This DE is used to describe an angular measurement in units of degrees. This data
 element is often used as a heading direction when in motion. In this use, the current heading of the sending device is
 expressed in unsigned units of 0.0125 degrees from North, such that 28799 such degrees represent 359.9875 degrees.
 North shall be defined as the axis defined by the WGS-84 coordinate system and its reference ellipsoid. Any angle "to the
 east" is defined as the positive direction. A value of 28800 shall be used when Angle is unavailable.

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _0.0125 degrees_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;Note that other heading and angle data elements of various sizes and precisions are found in other parts of this standard and in ITS.
>>>

```asn1
Angle ::= INTEGER (0..28800)
```

### <a name="ApproachID"></a>ApproachID
This DE is used to relate the index of an approach, either ingress or egress within the
 subject lane. In general, an approach index in the context of a timing movement is not of value in the MAP and SPAT
 process because the lane ID and signal group ID concepts handle this with more precision. This value can also be useful
 as an aid as it can be used to indicate the gross position of a moving object (vehicle) when its lane level accuracy is
 unknown. This value can also be used when a deployment represents sets of lanes as groups without further details (as is
 done in Japan).

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;zero to be used when valid value is unknown
>>>

```asn1
ApproachID ::= INTEGER (0..15)
```

### <a name="BasicVehicleRole"></a>BasicVehicleRole
This DE provides a means to indicate the current role that a DSRC device is playing
 This is most commonly employed when a vehicle needs to take on another role in order to send certain DSRC message
 types. As an example, when a public safety vehicle such as a police car wishes to send a signal request message (SRM)
 to an intersection to request a preemption service, the vehicle takes on the role "police" from the below list in both the
 SRM message itself and also in the type of security CERT which is sent (the SSP in the CERT it used to identify the
 requester as being of type "police" and that they are allowed to send this message in this way). The BasicVehicleRole
 entry is often used and combined with other information about the requester as well, such as details of why the request is
 being made.

 - 0 - `basicVehicle`     - Light duty passenger vehicle type
 - 1 - `publicTransport`  - Used in EU for Transit us
 - 2 - `specialTransport` - Used in EU (e.g. heavy load)
 - 3 - `dangerousGoods`   - Used in EU for any HAZMAT
 - 4 - `roadWork`         - Used in EU for State and Local DOT uses
 - 5 - `roadRescue`       - Used in EU and in the US to include tow trucks.
 - 6 - `emergency`        - Used in EU for Police, Fire and Ambulance units
 - 7 - `safetyCar`        - Used in EU for Escort vehicles
 - 8 - `none-unknown`     - added to follow current SAE style guidelines
 - 9 - `truck`            - Heavy trucks with additional BSM rights and obligations
 - 10 - `motorcycle`      - Motorcycle
 - 11 - `roadSideSource`  - For infrastructure generated calls such as fire house, rail infrastructure, roadwork site, etc.
 - 12 - `police`          - Police vehicle
 - 13 - `fire`            - Firebrigade
 - 14 - `ambulance`       - (does not include private para-transit etc.)
 - 15 - `dot`             - all roadwork vehicles
 - 16 - `transit`         - all transit vehicles
 - 17 - `slowMoving`      - to also include oversize etc.
 - 18 - `stopNgo`         - to include trash trucks, school buses and others
 - 19 - `cyclist`         - bicycles
 - 20 - `pedestrian`      - also includes those with mobility limitations
 - 21 - `nonMotorized`    - other, horse drawn, etc.
 - 22 - `military`        - military vehicles

Values:
* **basicVehicle** (0)<br>
* **publicTransport** (1)<br>
* **specialTransport** (2)<br>
* **dangerousGoods** (3)<br>
* **roadWork** (4)<br>
* **roadRescue** (5)<br>
* **emergency** (6)<br>
* **safetyCar** (7)<br>
* **none-unknown** (8)<br>
* **truck** (9)<br>
* **motorcycle** (10)<br>
* **roadSideSource** (11)<br>
* **police** (12)<br>
* **fire** (13)<br>
* **ambulance** (14)<br>
* **dot** (15)<br>
* **transit** (16)<br>
* **slowMoving** (17)<br>
* **stopNgo** (18)<br>
* **cyclist** (19)<br>
* **pedestrian** (20)<br>
* **nonMotorized** (21)<br>
* **military** (22)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;It should be observed that devices can at times change their roles (i.e. a fire operated by a volunteer
    fireman can assume a fire role for a period of time when in service, or a pedestrian may assume a cyclist role when using
    a bicycle). It should be observed that not all devices (or vehicles) can assume all roles, nor that a given
    device in a given role will be provided with a security certificate (CERT) that has suitable SSP credentials to provide the
    ability to send a particular message or message content. The ultimate responsibility to determine what role is to be used,
    and what CERTs would be provided for that role (which in turn controls the messages and message content that can be
    sent within SAE-defined PSIDs) rests with the regional deployment.
>>>

```asn1
BasicVehicleRole ::= ENUMERATED {
  basicVehicle     (0),
  publicTransport  (1),
  specialTransport (2),
  dangerousGoods   (3),
  roadWork         (4),
  roadRescue       (5),
  emergency        (6),
  safetyCar        (7),
  none-unknown     (8),
  truck            (9),
  motorcycle      (10),
  roadSideSource  (11),
  police          (12),
  fire            (13),
  ambulance       (14),
  dot             (15),
  transit         (16),
  slowMoving      (17),
  stopNgo         (18),
  cyclist         (19),
  pedestrian      (20),
  nonMotorized    (21),
  military        (22),
  ...
}
```

### <a name="DDay"></a>DDay
The DSRC style day is a simple value consisting of integer values from zero to 31. The value of zero shall represent an unknown value.

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _days_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
DDay ::= INTEGER (0..31)
```

### <a name="DeltaAngle"></a>DeltaAngle
This DE provides the final angle used in the last point of the lane path. Used to "cant" the stop line of the lane.

 With an angle range from negative 150 to positive 150 in one degree steps where zero is directly
 along the axis or the lane center line as defined by the two closest points.

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _degree_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
DeltaAngle ::= INTEGER (-150..150)
```

### <a name="DeltaTime"></a>DeltaTime
This DE provides a time definition for an object's schedule adherence (typically a transit
 vehicle) within a limited range of time. When the reporting object is ahead of schedule, a positive value is used; when
 behind, a negative value is used. A value of zero indicates schedule adherence. This value is typically sent from a vehicle
 to the traffic signal controller's RSU to indicate the urgency of a signal request in the context of being within schedule or
 not. In another use case, the traffic signal controller may advise the transit vehicle to speed up (DeltaTime > 0) or to slow
 down (DeltaTime < 0) to optimize the transit vehicle distribution driving along a specific route (e.g. a Bus route).

 Supporting a range of +/- 20 minute in steps of 10 seconds:
 - the value of `-121` shall be used when more than -20 minutes
 - the value of `+120` shall be used when more than +20 minutes
 - the value `-122` shall be used when the value is unavailable

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
DeltaTime ::= INTEGER (-122 .. 121)
```

### <a name="DescriptiveName"></a>DescriptiveName
This DE is used in maps and intersections to provide a human readable and
 recognizable name for the feature that follows. It is typically used when debugging a data flow and not in production use.
 One key exception to this general rule is to provide a human-readable string for disabled travelers in the case of
 crosswalks and sidewalk lane objects.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
DescriptiveName ::= IA5String (SIZE(1..63))
```

### <a name="DHour"></a>DHour
The DSRC hour consists of integer values from zero to 23 representing the hours within a day. The value of 31 shall
 represent an unknown value. The range 24 to 30 is used in some transit applications to represent schedule adherence.

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _hours_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
DHour ::= INTEGER (0..31)
```

### <a name="DMinute"></a>DMinute
The DSRC style minute is a simple value consisting of integer values from zero to 59 representing the minutes
 within an hour. The value of 60 shall represent an unknown value.

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _minutes_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
DMinute ::= INTEGER (0..60)
```

### <a name="DMonth"></a>DMonth
The DSRC month consists of integer values from one to 12, representing the month within a year. The value of 0
 shall represent an unknown value.

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _months_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
DMonth ::= INTEGER (0..12)
```

### <a name="DOffset"></a>DOffset
The DSRC (time zone) offset consists of a signed integer representing an hour and minute value set from -14:00 to
 +14:00, representing all the world’s local time zones in units of minutes. The value of zero (00:00) may also represent an
 unknown value. Note some time zones are do not align to hourly boundaries.

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _minutes from UTC time_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
DOffset ::= INTEGER (-840..840)
```

### <a name="DrivenLineOffsetLg"></a>DrivenLineOffsetLg
This DE is an integer value expressing the offset in a defined axis from a
 reference lane number from which a computed lane is offset. The measurement is taken from the reference lane center
 line to the new center line, independent of any width values. The units are a signed value with an LSB of 1 cm.

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _cm_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
DrivenLineOffsetLg ::= INTEGER (-32767..32767)
```

### <a name="DrivenLineOffsetSm"></a>DrivenLineOffsetSm
The DrivenLineOffsetSmall data element is an integer value expressing the offset in a defined axis from a reference
 lane number from which a computed lane is offset. The measurement is taken from the reference lane center line to the
 new center line, independent of any width values. The units are a signed value with an LSB of 1 cm.

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _cm_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
DrivenLineOffsetSm ::= INTEGER (-2047..2047)
```

### <a name="DSecond"></a>DSecond
The DSRC second expressed in this DE consists of integer values from zero to 60999, representing the
 milliseconds within a minute. A leap second is represented by the value range 60000 to 60999. The value of 65535 shall
 represent an unavailable value in the range of the minute. The values from 61000 to 65534 are reserved.

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _milliseconds_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
DSecond ::= INTEGER (0..65535)
```

### <a name="DYear"></a>DYear
The DSRC year consists of integer values from zero to 4095 representing the year according to the Gregorian
 calendar date system. The value of zero shall represent an unknown value.

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _years_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
DYear ::= INTEGER (0..4095)
```

### <a name="Elevation"></a>Elevation
This DE represents the geographic position above or below the reference ellipsoid (typically WGS-84).
 The number has a resolution of 1 decimeter and represents an asymmetric range of positive and negative
 values. Any elevation higher than +6143.9 meters is represented as +61439.

 Any elevation lower than -409.5 meters is represented as -4095.

 If the sending device does not know its elevation, it shall encode the Elevation data element with -4096.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;When a vehicle is being measured, the elevation is taken from the horizontal spatial center of the vehicle
        projected downward, regardless of vehicle tilt, to the point where the vehicle meets the road surface.
>>>

```asn1
Elevation ::= INTEGER (-4096..61439)
```

### <a name="ElevationConfidence"></a>ElevationConfidence
This DE is used to provide the 95% confidence level for the currently reported value of [**Elevation**](#Elevation),
 taking into account the current calibration and precision of the sensor(s) used to measure and/or
 calculate the value. This data element is only to provide the listener with information on the limitations of the sensing
 system, not to support any type of automatic error correction or to imply a guaranteed maximum error. This data element
 should not be used for fault detection or diagnosis, but if a vehicle is able to detect a fault, the confidence interval should
 be increased accordingly. The frame of reference and axis of rotation used shall be in accordance with that defined in Section 11.

 - `unavailable` - 0:   B'0000 Not Equipped or unavailable
 - `elev-500-00` - 1:   B'0001 (500 m)
 - `elev-200-00` - 2:   B'0010 (200 m)
 - `elev-100-00` - 3:   B'0011 (100 m)
 - `elev-050-00` - 4:   B'0100 (50 m)
 - `elev-020-00` - 5:   B'0101 (20 m)
 - `elev-010-00` - 6:   B'0110 (10 m)
 - `elev-005-00` - 7:   B'0111 (5 m)
 - `elev-002-00` - 8:   B'1000 (2 m)
 - `elev-001-00` - 9:   B'1001 (1 m)
 - `elev-000-50` - 10:  B'1010 (50 cm)
 - `elev-000-20` - 11:  B'1011 (20 cm)
 - `elev-000-10` - 12:  B'1100 (10 cm)
 - `elev-000-05` - 13:  B'1101 (5 cm)
 - `elev-000-02` - 14:  B'1110 (2 cm)
 - `elev-000-01` - 15:  B'1111 (1 cm)

Values:
* **unavailable** (0)<br>
* **elev-500-00** (1)<br>
* **elev-200-00** (2)<br>
* **elev-100-00** (3)<br>
* **elev-050-00** (4)<br>
* **elev-020-00** (5)<br>
* **elev-010-00** (6)<br>
* **elev-005-00** (7)<br>
* **elev-002-00** (8)<br>
* **elev-001-00** (9)<br>
* **elev-000-50** (10)<br>
* **elev-000-20** (11)<br>
* **elev-000-10** (12)<br>
* **elev-000-05** (13)<br>
* **elev-000-02** (14)<br>
* **elev-000-01** (15)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;Encoded as a 4 bit value
>>>

```asn1
ElevationConfidence ::= ENUMERATED {
   unavailable (0),
   elev-500-00 (1),
   elev-200-00 (2),
   elev-100-00 (3),
   elev-050-00 (4),
   elev-020-00 (5),
   elev-010-00 (6),
   elev-005-00 (7),
   elev-002-00 (8),
   elev-001-00 (9),
   elev-000-50 (10),
   elev-000-20 (11),
   elev-000-10 (12),
   elev-000-05 (13),
   elev-000-02 (14),
   elev-000-01 (15)
}
```

### <a name="FuelType"></a>FuelType
This DE provides the type of fuel used by a vehicle.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
FuelType ::= INTEGER (0..15)
   unknownFuel FuelType  ::= 0
   gasoline FuelType     ::= 1
   ethanol FuelType      ::= 2
   diesel FuelType       ::= 3
   electric FuelType     ::= 4
   hybrid FuelType       ::= 5
   hydrogen FuelType     ::= 6
   natGasLiquid FuelType ::= 7
   natGasComp FuelType   ::= 8
   propane FuelType      ::= 9
```

### <a name="GNSSstatus"></a>GNSSstatus
This DE is used to relate the current state of a GPS/GNSS rover or base system in terms
 of its general health, lock on satellites in view, and use of any correction information. Various bits can be asserted (made
 to a value of one) to reflect these values. A GNSS set with unknown health and no tracking or corrections would be
 represented by setting the unavailable bit to one. A value of zero shall be used when a defined data element is
 unavailable. The term "GPS" in any data element name in this standard does not imply that it is only to be used for GPS-
 type GNSS systems.

 - `unavailable`              - 0: Not Equipped or unavailable
 - `isHealthy`                - 1:
 - `isMonitored`              - 2:
 - `baseStationType`          - 3: Set to zero if a moving base station, or if a rover device (an OBU), Set to one if it is a fixed base station
 - `aPDOPofUnder5`            - 4: A dilution of precision greater than 5
 - `inViewOfUnder5`           - 5: Less than 5 satellites in view
 - `localCorrectionsPresent`  - 6: DGPS type corrections used
 - `networkCorrectionsPresen` - 7: RTK type corrections used

Values:
* **unavailable** (0)<br>
* **isHealthy** (1)<br>
* **isMonitored** (2)<br>
* **baseStationType** (3)<br>
* **aPDOPofUnder5** (4)<br>
* **inViewOfUnder5** (5)<br>
* **localCorrectionsPresent** (6)<br>
* **networkCorrectionsPresent** (7)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
GNSSstatus ::= BIT STRING {
   unavailable               (0),
   isHealthy                 (1),
   isMonitored               (2),
   baseStationType           (3),
   aPDOPofUnder5             (4),
   inViewOfUnder5            (5),
   localCorrectionsPresent   (6),
   networkCorrectionsPresent (7)
 } (SIZE(8))
```

### <a name="HeadingConfidenceDSRC"></a>HeadingConfidenceDSRC
The DE_HeadingConfidence data element is used to provide the 95% confidence level for the currently reported
 calculate the value. This data element is only to provide the listener with information on the limitations of the sensing
 value of DE_Heading, taking into account the current calibration and precision of the sensor(s) used to measure and/or
 system, not to support any type of automatic error correction or to imply a guaranteed maximum error. This data element
 should not be used for fault detection or diagnosis, but if a vehicle is able to detect a fault, the confidence interval should
 be increased accordingly. The frame of reference and axis of rotation used shall be in accordance with that defined Section 11.

 - `unavailable`   - 0: B'000 Not Equipped or unavailable
 - `prec10deg`     - 1: B'010 10 degrees
 - `prec05deg`     - 2: B'011 5 degrees
 - `prec01deg`     - 3: B'100 1 degrees
 - `prec0-1deg`    - 4: B'101 0.1 degrees
 - `prec0-05deg`   - 5: B'110 0.05 degrees
 - `prec0-01deg`   - 6: B'110 0.01 degrees
 - `prec0-0125deg` - 7: B'111 0.0125 degrees, aligned with heading LSB

Values:
* **unavailable** (0)<br>
* **prec10deg** (1)<br>
* **prec05deg** (2)<br>
* **prec01deg** (3)<br>
* **prec0-1deg** (4)<br>
* **prec0-05deg** (5)<br>
* **prec0-01deg** (6)<br>
* **prec0-0125deg** (7)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
HeadingConfidenceDSRC ::= ENUMERATED {
   unavailable   (0),
   prec10deg     (1),
   prec05deg     (2),
   prec01deg     (3),
   prec0-1deg    (4),
   prec0-05deg   (5),
   prec0-01deg   (6),
   prec0-0125deg (7)
}
```

### <a name="HeadingDSRC"></a>HeadingDSRC
This DE provides the current heading of the sending device, expressed in unsigned units of
 0.0125 degrees from North such that 28799 such degrees represent 359.9875 degrees. North shall be defined as the axis
 prescribed by the WGS-84 coordinate system and its reference ellipsoid. Headings "to the east" are defined as the
 positive direction. A value of 28800 shall be used when unavailable. This element indicates the direction of motion of the
 device. When the sending device is stopped and the trajectory (path) over which it traveled to reach that location is well
 known, the past heading may be used.

 Value provides a range of 0 to 359.9875 degrees
        and in ITS. This element should no longer be used for new work: the [**Angle**](#Angle) entry is preferred.

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _0.0125 degrees_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
HeadingDSRC ::= INTEGER (0..28800)
```

### <a name="IntersectionID"></a>IntersectionID
This DE is used within a region to uniquely define an intersection within that country or region in a 16-bit
 field. Assignment rules are established by the regional authority associated with the RoadRegulatorID under which this
 IntersectionID is assigned. Within the region the policies used to ensure an assigned value’s uniqueness before that value
 is reused (if ever) is the responsibility of that region. Any such reuse would be expected to occur over a long epoch (many years).
 The values zero through 255 are allocated for testing purposes

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;Note that the value assigned to an intersection will be unique within a given regional ID only
>>>

```asn1
IntersectionID ::= INTEGER (0..65535)
```

### <a name="IntersectionStatusObject"></a>IntersectionStatusObject
The Intersection Status Object contains Advanced Traffic Controller (ATC) status information that may be sent to
 local OBUs as part of the SPAT process.

 With bits as defined:
 - `manualControlIsEnabled`                - 0: Timing reported is per programmed values, etc. but person at cabinet can manually request that certain intervals are terminated early (e.g. green).
 - `stopTimeIsActivated`                   - 1: And all counting/timing has stopped.
 - `failureFlash`                          - 2: Above to be used for any detected hardware failures, e.g. conflict monitor as well as for police flash
 - `fixedTimeOperation`                    - 5: Schedule of signals is based on time only (i.e. the state can be calculated)
 - `trafficDependentOperation`             - 6: Operation is based on different levels of traffic parameters (requests, duration of gaps or more complex parameters)
 - `standbyOperation`                      - 7: Controller: partially switched off or partially amber flashing
 - `failureMode`                           - 8: Controller has a problem or failure in operation
 - `off`                                   - 9: Controller is switched off
 - `recentMAPmessageUpdate`                - 10: Map revision with content changes
 - `recentChangeInMAPassignedLanesIDsUsed` - 11: Change in MAP's assigned lanes used (lane changes) Changes in the active lane list description
 - `noValidMAPisAvailableAtThisTime`       - 12: MAP (and various lanes indexes) not available
 - `noValidSPATisAvailableAtThisTime`      - 13: SPAT system is not working at this time
 - Bits 14,15 reserved at this time and shall be zero

Values:
* **manualControlIsEnabled** (0)<br>
* **stopTimeIsActivated** (1)<br>
* **failureFlash** (2)<br>
* **preemptIsActive** (3)<br>
* **signalPriorityIsActive** (4)<br>
* **fixedTimeOperation** (5)<br>
* **trafficDependentOperation** (6)<br>
* **standbyOperation** (7)<br>
* **failureMode** (8)<br>
* **off** (9)<br>
* **recentMAPmessageUpdate** (10)<br>
* **recentChangeInMAPassignedLanesIDsUsed** (11)<br>
* **noValidMAPisAvailableAtThisTime** (12)<br>
* **noValidSPATisAvailableAtThisTime** (13)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;All zeros indicate normal operating mode with no recent changes. The duration of the term 'recent' is defined by the system performance requirement in use.
>>>

```asn1
IntersectionStatusObject ::= BIT STRING {
  manualControlIsEnabled                (0),
  stopTimeIsActivated                   (1),
  failureFlash                          (2),
  preemptIsActive                       (3),
  signalPriorityIsActive                (4),
  fixedTimeOperation                    (5),
  trafficDependentOperation             (6),
  standbyOperation                      (7),
  failureMode                           (8),
  off                                   (9),
  recentMAPmessageUpdate                (10),
  recentChangeInMAPassignedLanesIDsUsed (11),
  noValidMAPisAvailableAtThisTime       (12),
  noValidSPATisAvailableAtThisTime      (13)
} (SIZE(16))
```

### <a name="LaneAttributes-Barrier"></a>LaneAttributes-Barrier
This DE relates specific properties found in a Barrier or Median lane type (a type of lane object used to separate traffic lanes).
 It should be noted that various common lane attribute properties (such as travel directions and allowed movements or maneuvers) can be found in other entries.

 With bits as defined:
 - `median-RevocableLane` - 0: this lane may be activated or not based on the current SPAT message contents if not asserted, the lane is ALWAYS present
 - Bits 10-15 reserved and set to zero
Thomas Ritter's avatar
Thomas Ritter committed

Values:
* **median-RevocableLane** (0)<br>
* **median** (1)<br>
* **whiteLineHashing** (2)<br>
* **stripedLines** (3)<br>
* **doubleStripedLines** (4)<br>
* **trafficCones** (5)<br>
* **constructionBarrier** (6)<br>
* **trafficChannels** (7)<br>
* **lowCurbs** (8)<br>
* **highCurbs** (9)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
LaneAttributes-Barrier ::= BIT STRING {
  median-RevocableLane     (0),
  median                   (1),
  whiteLineHashing         (2),
  stripedLines             (3),
  doubleStripedLines       (4),
  trafficCones             (5),
  constructionBarrier      (6),
  trafficChannels          (7),
  lowCurbs                 (8),
  highCurbs                (9)
} (SIZE (16))
```

### <a name="LaneAttributes-Bike"></a>LaneAttributes-Bike
This DE relates specific properties found in a bicycle lane type. It should be noted that various common lane attribute properties
 (such as travel directions and allowed movements or maneuvers) can be found in other entries.

 With bits as defined:
 - `bikeRevocableLane`       - 0: this lane may be activated or not based on the current SPAT message contents if not asserted, the lane is ALWAYS present
 - `pedestrianUseAllowed`    - 1: The path allows pedestrian traffic, if not set, this mode is prohibited
 - `isBikeFlyOverLane`       - 2: path of lane is not at grade
 - `fixedCycleTime`          - 3: the phases use preset times, i.e. there is not a 'push to cross' button
 - `biDirectionalCycleTimes` - 4: ped walk phases use different SignalGroupID for each direction. The first SignalGroupID in the first Connection
                                  represents 'inbound' flow (the direction of travel towards the first node point) while second SignalGroupID in the
                                  next Connection entry represents the 'outbound' flow. And use of RestrictionClassID entries in the Connect follow this same pattern in pairs.
 -`isolatedByBarrier`           - 5: The lane path is isolated by a fixed barrier
 -`unsignalizedSegmentsPresent` - 6: The lane path consists of one of more segments which are not part of a signal group ID
 - Bits 7-15 reserved and set to zero
Thomas Ritter's avatar
Thomas Ritter committed

Values:
* **bikeRevocableLane** (0)<br>
* **pedestrianUseAllowed** (1)<br>
* **isBikeFlyOverLane** (2)<br>
* **fixedCycleTime** (3)<br>
* **biDirectionalCycleTimes** (4)<br>
* **isolatedByBarrier** (5)<br>
* **unsignalizedSegmentsPresent** (6)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
LaneAttributes-Bike ::= BIT STRING {
  bikeRevocableLane       (0),
  pedestrianUseAllowed    (1),
  isBikeFlyOverLane       (2),
  fixedCycleTime          (3),
  biDirectionalCycleTimes (4),
  isolatedByBarrier       (5),
  unsignalizedSegmentsPresent  (6)
} (SIZE (16))
```

### <a name="LaneAttributes-Crosswalk"></a>LaneAttributes-Crosswalk
This DE relates specific properties found in a crosswalk lane type. It should be noted that various common lane attribute properties
 (such as travel directions and allowed movements or maneuvers) can be found in other entries.

 With bits as defined:
 - `crosswalkRevocableLane`  - 0:  this lane may be activated or not based on the current SPAT message contents if not asserted, the lane is ALWAYS present
 - `bicyleUseAllowed`        - 1: The path allows bicycle traffic, if not set, this mode is prohibited
 - `isXwalkFlyOverLane`      - 2: path of lane is not at grade
 - `fixedCycleTime`          - 3: ped walk phases use preset times. i.e. there is not a 'push to cross' button
 - `biDirectionalCycleTimes` - 4:  ped walk phases use different SignalGroupID for each direction. The first SignalGroupID
                                   in the first Connection represents 'inbound' flow (the direction of travel towards the first
                                   node point) while second SignalGroupID in the next Connection entry represents the 'outbound'
                                   flow. And use of RestrictionClassID entries in the Connect follow this same pattern in pairs.
 - `hasPushToWalkButton`     - 5: Has a demand input
 - `audioSupport`            - 6:  audio crossing cues present
 - `rfSignalRequestPresent`  - 7: Supports RF push to walk technologies
 - `unsignalizedSegmentsPresent` - 8: The lane path consists of one of more segments which are not part of a signal group ID
 - Bits 9-15 reserved and set to zero
Thomas Ritter's avatar
Thomas Ritter committed

Values:
* **crosswalkRevocableLane** (0)<br>
* **bicyleUseAllowed** (1)<br>
* **isXwalkFlyOverLane** (2)<br>
* **fixedCycleTime** (3)<br>
* **biDirectionalCycleTimes** (4)<br>
* **hasPushToWalkButton** (5)<br>
* **audioSupport** (6)<br>
* **rfSignalRequestPresent** (7)<br>
* **unsignalizedSegmentsPresent** (8)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
LaneAttributes-Crosswalk ::= BIT STRING {
  crosswalkRevocableLane  (0),
  bicyleUseAllowed        (1),
  isXwalkFlyOverLane      (2),
  fixedCycleTime          (3),
  biDirectionalCycleTimes (4),
  hasPushToWalkButton     (5),
  audioSupport            (6),
  rfSignalRequestPresent  (7),
  unsignalizedSegmentsPresent  (8)
} (SIZE (16))
```

### <a name="LaneAttributes-Parking"></a>LaneAttributes-Parking
This DE relates specific properties found in a vehicle parking lane type. It should be noted that various common lane attribute
 properties can be found in other entries.

 With bits as defined:
 - `parkingRevocableLane` - 0: this lane may be activated or not based on the current SPAT message contents if not asserted, the lane is ALWAYS present
 - `doNotParkZone`        - 3: used to denote fire hydrants as well as short disruptions in a parking zone
 - `noPublicParkingUse`   - 6: private parking, as in front of private property
 - Bits 7-15 reserved and set to zero*
Thomas Ritter's avatar
Thomas Ritter committed

Values:
* **parkingRevocableLane** (0)<br>
* **parallelParkingInUse** (1)<br>
* **headInParkingInUse** (2)<br>
* **doNotParkZone** (3)<br>
* **parkingForBusUse** (4)<br>
* **parkingForTaxiUse** (5)<br>
* **noPublicParkingUse** (6)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
LaneAttributes-Parking ::= BIT STRING {
  parkingRevocableLane         (0),
  parallelParkingInUse         (1),
  headInParkingInUse           (2),
  doNotParkZone                (3),
  parkingForBusUse             (4),
  parkingForTaxiUse            (5),
  noPublicParkingUse           (6)
} (SIZE (16))
```

### <a name="LaneAttributes-Sidewalk"></a>LaneAttributes-Sidewalk
This DE relates specific properties found in a sidewalk lane type. It should be noted that various common lane attribute properties
 (such as travel directions and allowed movements or maneuvers) can be found in other entries.

 With bits as defined:
 - `sidewalk-RevocableLane`- 0: this lane may be activated or not based on the current SPAT message contents if not asserted, the lane is ALWAYS present.
 - `bicyleUseAllowed`      - 1: The path allows bicycle traffic, if not set, this mode is prohibited
 - `isSidewalkFlyOverLane` - 2: path of lane is not at grade
 - `walkBikes`             - 3: bike traffic must dismount and walk
 - Bits 4-15 reserved and set to zero
Thomas Ritter's avatar
Thomas Ritter committed

Values:
* **sidewalk-RevocableLane** (0)<br>
* **bicyleUseAllowed** (1)<br>
* **isSidewalkFlyOverLane** (2)<br>
* **walkBikes** (3)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
LaneAttributes-Sidewalk ::= BIT STRING {
  sidewalk-RevocableLane  (0),
  bicyleUseAllowed        (1),
  isSidewalkFlyOverLane   (2),
  walkBikes               (3)
} (SIZE (16))
```

### <a name="LaneAttributes-Striping"></a>LaneAttributes-Striping
This DE relates specific properties found in various types of ground striping lane
 types. This includes various types of painted lane ground striping and iconic information needs to convey information in a
 complex intersection. Typically, this consists of visual guidance for drivers to assist them to connect across the
 intersection to the correct lane. Such markings are typically used with restraint and only under conditions when the
 geometry of the intersection makes them more beneficial than distracting. It should be noted that various common lane
 attribute properties (such as travel directions and allowed movements or maneuvers) can be found in other entries.

 With bits as defined:
 - `stripeToConnectingLanesRevocableLane` - 0: this lane may be activated or not activated based on the current SPAT message contents if not asserted, the lane is ALWAYS present
 - `stripeToConnectingLanesAhead` - 5: the stripe type should be presented to the user visually to reflect stripes in the intersection for the type of movement indicated.
 - Bits 6-15 reserved and set to zero
Thomas Ritter's avatar
Thomas Ritter committed

Values:
* **stripeToConnectingLanesRevocableLane** (0)<br>
* **stripeDrawOnLeft** (1)<br>
* **stripeDrawOnRight** (2)<br>
* **stripeToConnectingLanesLeft** (3)<br>
* **stripeToConnectingLanesRight** (4)<br>
* **stripeToConnectingLanesAhead** (5)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
LaneAttributes-Striping ::= BIT STRING {
  stripeToConnectingLanesRevocableLane      (0),
  stripeDrawOnLeft                          (1),
  stripeDrawOnRight                         (2),
  stripeToConnectingLanesLeft               (3),
  stripeToConnectingLanesRight              (4),
  stripeToConnectingLanesAhead              (5)
} (SIZE (16))
```

### <a name="LaneAttributes-TrackedVehicle"></a>LaneAttributes-TrackedVehicle
This DE relates specific properties found in a tracked vehicle lane types (trolley
 and train lanes). The term “rail vehicle” can be considered synonymous. In this case, the term does not relate to vehicle
 types with tracks or treads. It should be noted that various common lane attribute properties (such as travel directions and
 allowed movements or maneuvers) can be found in other entries. It should also be noted that often this type of lane object
 does not clearly relate to an approach in the traditional traffic engineering sense, although the message set allows
 assigning a value when desired.

 With bits as defined:
 - `spec-RevocableLane` - 0: this lane may be activated or not based on the current SPAT message contents if not asserted, the lane is ALWAYS present.
 - Bits 5-15 reserved and set to zero
Thomas Ritter's avatar
Thomas Ritter committed

Values:
* **spec-RevocableLane** (0)<br>
* **spec-commuterRailRoadTrack** (1)<br>
* **spec-lightRailRoadTrack** (2)<br>
* **spec-heavyRailRoadTrack** (3)<br>
* **spec-otherRailType** (4)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
LaneAttributes-TrackedVehicle ::= BIT STRING {
  spec-RevocableLane         (0),
  spec-commuterRailRoadTrack (1),
  spec-lightRailRoadTrack    (2),
  spec-heavyRailRoadTrack    (3),
  spec-otherRailType         (4)
} (SIZE (16))
```

### <a name="LaneAttributes-Vehicle"></a>LaneAttributes-Vehicle
This DE relates specific properties found in a vehicle lane type. This data element provides a means to denote that the use of a lane
 is restricted to certain vehicle types. Various common lane attribute properties (such as travel directions and allowed movements or maneuvers)
 can be found in other entries.

 With bits as defined:
 - `isVehicleRevocableLane` - 0: this lane may be activated or not based on the current SPAT message contents if not asserted, the lane is ALWAYS present
 - `isVehicleFlyOverLane`   - 1: path of lane is not at grade
 - `permissionOnRequest`    - 7: e.g. to inform about a lane for e-cars

Values:
* **isVehicleRevocableLane** (0)<br>
* **isVehicleFlyOverLane** (1)<br>
* **hovLaneUseOnly** (2)<br>
* **restrictedToBusUse** (3)<br>
* **restrictedToTaxiUse** (4)<br>
* **restrictedFromPublicUse** (5)<br>
* **hasIRbeaconCoverage** (6)<br>
* **permissionOnRequest** (7)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
LaneAttributes-Vehicle ::= BIT STRING {
  isVehicleRevocableLane       (0),
  isVehicleFlyOverLane         (1),
  hovLaneUseOnly               (2),
  restrictedToBusUse           (3),
  restrictedToTaxiUse          (4),
  restrictedFromPublicUse      (5),
  hasIRbeaconCoverage          (6),
  permissionOnRequest          (7)
} (SIZE (8,...))
```

### <a name="LaneConnectionID"></a>LaneConnectionID
This DE is used to state a connection index for a lane to lane connection. It is used to
 relate this connection between the lane (defined in the MAP) and any dynamic clearance data sent in the SPAT. It should
 be noted that the index may be shared with other lanes (for example, two left turn lanes may share the same dynamic
 clearance data). It should also be noted that a given lane to lane connection may be part of more than one GroupID due
 to signal phase considerations, but will only have one ConnectionID. The ConnectionID concept is not used (is not
 present) when dynamic clearance data is not provided in the SPAT.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;It should be noted that the LaneConnectionID is used as a means to index to a connection description
        between two lanes. It is not the same as the laneID, which is the unique index to each lane itself.
>>>

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

### <a name="LaneDirection"></a>LaneDirection
This DE is used to denote the allowed direction of travel over a lane object. By convention, the lane object is always described
 from the stop line outwards away from the intersection. Therefore, the ingress direction is from the end of the path to the stop
 line and the egress direction is from the stop line outwards.

 It should be noted that some lane objects are not used for travel and that some lane objects allow bi-directional travel.

 With bits as defined:
 - Allowed directions of travel in the lane object
 - All lanes are described from the stop line outwards

Values:
* **ingressPath** (0)<br>
  travel from rear of path to front is allowed

* **egressPath** (1)<br>
  travel from front of path to rear is allowed


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;No Travel, i.e. the lane object type does not support travel (medians, curbs, etc.) is indicated by not
        asserting any bit value Bi-Directional Travel (such as a ped crosswalk) is indicated by asserting both of the bits.
>>>

```asn1
LaneDirection ::= BIT STRING {
  ingressPath     (0),
  egressPath      (1)
} (SIZE (2))
```

### <a name="LaneID"></a>LaneID
This DE conveys an assigned index that is unique within an intersection. It is used to refer to
 that lane by other objects in the intersection map data structure. Lanes may be ingress (inbound traffic) or egress
 (outbound traffic) in nature, as well as barriers and other types of specialty lanes. Each lane (each lane object) is
 assigned a unique ID. The Lane ID, in conjunction with the intersection ID, forms a regionally unique way to address a
 specific lane in that region.

 - the value 0 shall be used when the lane ID is not available or not known
 - the value 255 is reserved for future use

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
LaneID ::= INTEGER (0..255)
```

### <a name="LayerID"></a>LayerID
Large [**MapData**](#MapData) descriptions are not possible to be broadcast with a single message and have to be
 fragmented using two or more messages over the air. Therefore, the LayerID allows defining an
 index for fragmentation of large [**MapData**](#MapData) descriptions. The fragmentation of the messages shall be
 executed on application layer. The fragmentation occurs on an approach base. This means that almost a
 complete approach (e.g. lanes, connectsTo, etc.) has to be included within a fragment.
 The decimal value of the `layerID` is used to define the amount of maximum [**MapData**](#MapData) fragments. The
 lower value defines the actual fragment.

 Example:
 If a MapData consists of three fragments (e.g. three approaches), the fragments are identified as follows:
 - `31` - first fragment of three (e.g. approach south);
 - `33` - third fragment of three (e.g. approach north).
 - `32` - second fragment of three (e.g. approach west);

 If there are only two fragments, the fragment identification will be 21, 22.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
LayerID ::= INTEGER (0..100)
```

### <a name="LayerType"></a>LayerType
This DE is used to uniquely identify the type of information to be found in a layer of a geographic map fragment such as an intersection.

 @field `mixedContent`: two or more of the below types

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
LayerType ::= ENUMERATED {
  none,
  mixedContent,
  generalMapData,
  intersectionData,
  curveData,
  roadwaySectionData,
  parkingAreaData,
  sharedLaneData,
  ...
}
```

### <a name="LaneWidth"></a>LaneWidth
This DE conveys the width of a lane in LSB units of 1 cm. Maximum value for a lane is 327.67 meters in width

 @units: cm

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
LaneWidth ::= INTEGER (0..32767)
```

### <a name="LineNumber"></a>LineNumber
This DE is used to provide the R09 line information.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V2.2.1_
```asn1
LineNumber ::= INTEGER (0..4294967295)
```

Thomas Ritter's avatar
Thomas Ritter committed
### <a name="MergeDivergeNodeAngle"></a>MergeDivergeNodeAngle
The angle at which another lane path meets the current lanes at the node point. Typically found in the node
 attributes and used to describe the angle of the departing or merging lane. Note that oblique and obtuse angles are allowed.

 The value `-180` shall be used to represent data is not available or unknown

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _1.5 degrees from north_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
MergeDivergeNodeAngle ::= INTEGER (-180..180)
```

### <a name="MinuteOfTheYear"></a>MinuteOfTheYear
This DE expresses the number of elapsed minutes of the current year in the time system being used (typically UTC time).

 It is typically used to provide a longer range time stamp indicating when a message was created.
 Taken together with the DSecond data element, it provides a range of one full year with a resolution of 1 millisecond.

 The value 527040 shall be used for invalid.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;It should be noted that at the yearly roll-over point there is no "zero" minute, in the same way that there was
        never a "year zero" at the very start of the common era (BC -> AD). By using the number of elapsed whole minutes here
        this issue is avoided and the first valid value of every new year is zero, followed by one, etc. Leap years are
        accommodated, as are leap seconds in the DSecond data concept.
>>>

```asn1
MinuteOfTheYear ::= INTEGER (0..527040)
```

### <a name="MovementPhaseState"></a>MovementPhaseState
This DE provides the overall current state of the movement (in many cases a signal state), including its core phase state
  and an indication of whether this state is permissive or protected.

 It is expected that the allowed transitions from one state to another will be defined by regional deployments. Not all
 regions will use all states; however, no new states are to be defined. In most regions a regulatory body provides precise
 legal definitions of these state changes. For example, in the US the MUTCD is used, as is indicated in the US regional
 variant of the above image. In various regions and modes of transportation, the visual expression of these states varies
 (the precise meaning of various color combinations, shapes, and/or flashing etc.). The below definition is designed to to
 be independent of these regional conventions.

 Values:
 - `unavailable` - 0:         This state is used for unknown or error
 - `dark` - 1:                The signal head is dark (unlit)
 - `stop-Then-Proceed` - 2:   Often called 'flashing red'
                              Driver Action:
                              - Stop vehicle at stop line.
                              - Do not proceed unless it is safe.
                              Note that the right to proceed either right or left when it is safe may be contained in the lane description to
                              handle what is called a 'right on red'
 - `stop-And-Remain` - 3:     e.g. called 'red light'
                              Driver Action:
                              - Stop vehicle at stop line.
                              - Do not proceed.
                              Note that the right to proceed either right or left when it is safe may be contained in the lane description to
                              handle what is called a 'right on red'
 - `pre-Movement` - 4:        Not used in the US, red+yellow partly in EU
                              Driver Action:
                              - Stop vehicle.
                              - Prepare to proceed (pending green)
                              - (Prepare for transition to green/go)
 - `permissive-Movement-Allowed` - 5: Often called 'permissive green'
                              Driver Action:
                              - Proceed with caution,
                              - must yield to all conflicting traffic
                              Conflicting traffic may be present in the intersection conflict area
 - `protected-Movement-Allowed` - 6: Often called 'protected green'
                              Driver Action:
                              - Proceed, tossing caution to the wind, in indicated (allowed) direction.
 - `permissive-clearance` - 7: Often called 'permissive yellow'.
                              The vehicle is not allowed to cross the stop bar if it is possible
                              to stop without danger.
                              Driver Action:
                              - Prepare to stop.
                              - Proceed if unable to stop,
                              - Clear Intersection.
                              Conflicting traffic may be present in the intersection conflict area
 - `protected-clearance` - 8:  Often called 'protected yellow'
                              Driver Action:
                              - Prepare to stop.
                              - Proceed if unable to stop, in indicated direction (to connected lane)
                              - Clear Intersection.
 - `caution-Conflicting-Traffic` - 9: Often called 'flashing yellow'
                              Often used for extended periods of time
                              Driver Action:
                              - Proceed with caution,
                              Conflicting traffic may be present in the intersection conflict area

Values:
* **unavailable** (0)<br>
* **dark** (1)<br>
* **stop-Then-Proceed** (2)<br>
* **stop-And-Remain** (3)<br>
* **pre-Movement** (4)<br>
* **permissive-Movement-Allowed** (5)<br>
* **protected-Movement-Allowed** (6)<br>
* **permissive-clearance** (7)<br>
* **protected-clearance** (8)<br>
* **caution-Conflicting-Traffic** (9)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
MovementPhaseState ::= ENUMERATED {
  unavailable (0),
  dark (1),
  stop-Then-Proceed (2),
  stop-And-Remain (3),
  pre-Movement (4),
  permissive-Movement-Allowed (5),
  protected-Movement-Allowed (6),
  permissive-clearance (7),
  protected-clearance (8),
  caution-Conflicting-Traffic (9)
}
```

### <a name="MsgCount"></a>MsgCount
This DE is used to provide a sequence number within a stream of messages with the same DSRCmsgID and from the same sender.
 A sender may initialize this element to any value in the range 0-127 when sending the first message with a given DSRCmsgID,
 or if the sender has changed identity (e.g. by changing its TemporaryID) since sending the most recent message with that DSRCmsgID.

 Depending on the application the sequence number may change with every message or may remain fixed during a stream of messages when the content within each
 message has not changed from the prior message sent. For this element, the value after 127 is zero.

 The receipt of a non-sequential MsgCount value (from the same sending device and message type) implies that one or
 more messages from that sending device may have been lost, unless MsgCount has been re-initialized due to an identity
 change.


 In usage, some devices change their Temporary ID frequently, to prevent identity tracking, while others do not. A change
 in Temporary ID data element value (which also changes the message contents in which it appears) implies that the
 MsgCount may also change value.

 If a sender is composing a message with new content with a given DSRCmsgID, and the TemporaryID has not changed
 since it sent the previous message, the sender shall increment the previous value.
 If a sender is composing a message with new content with a given DSRCmsgID, and the TemporaryID has changed since
 it sent the previous message, the sender may set the MsgCount element to any valid value in the range (including
 incrementing the previous value).

 If a sender is composing a message with the same content as the most recent message with the same DSRCmsgID, and
 less than 10 seconds have elapsed since it sent the previous message with that DSRCmsgID, the sender will use the
 same MsgCount as sent in the previous message.

 If a sender is composing a message with the same content as the most recent message with the same DSRCmsgID, and
 at least 10 seconds have elapsed since it sent the previous message with that DSRCmsgID, the sender may set the
 MsgCount element to any valid value in the range; this includes the re-use of the previous value.

 If a sending device sends more than one stream of messages from message types that utilize the MsgCount element, it
 shall maintain a separate MsgCount state for each message type so that the MsgCount value in a given message
 identifies its place in the stream of that message type. The MsgCount element is a function only of the message type in a
 given sending device, not of the one or more applications in that device which may be sending the same type of message.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;In the absence of additional requirements defined in a standard using this data element, the follow guidelines shall be used.
>>>

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

### <a name="Offset-B09"></a>Offset-B09
A 9-bit delta offset in X, Y or Z direction from some known point. For non-vehicle centric coordinate frames of
 reference, offset is positive to the East (X) and to the North (Y) directions. The most negative value shall be used to
 indicate an unknown value.
 a range of +- 2.55 meters

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
Offset-B09 ::= INTEGER (-256..255)
```

### <a name="Offset-B10"></a>Offset-B10
A 10-bit delta offset in X, Y or Z direction from some known point. For non-vehicle centric coordinate frames of
 reference, offset is positive to the East (X) and to the North (Y) directions. The most negative value shall be used to
 indicate an unknown value.
 a range of +- 5.11 meters

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
Offset-B10 ::= INTEGER (-512..511)
```

### <a name="Offset-B11"></a>Offset-B11
An 11-bit delta offset in X or Y direction from some known point. For non-vehicle centric coordinate frames of
 reference, offset is positive to the East (X) and to the North (Y) directions. The most negative value shall be used to
 indicate an unknown value.
 a range of +- 10.23 meters

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
Offset-B11 ::= INTEGER (-1024..1023)
```

### <a name="Offset-B12"></a>Offset-B12
A 12-bit delta offset in X, Y or Z direction from some known point. For non-vehicle centric coordinate frames of
 reference, non-vehicle centric coordinate frames of reference, offset is positive to the East (X) and to the North (Y)
 directions. The most negative value shall be used to indicate an unknown value.
 a range of +- 20.47 meters

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
Offset-B12 ::= INTEGER (-2048..2047)
```

### <a name="Offset-B13"></a>Offset-B13
A 13-bit delta offset in X or Y direction from some known point. For non-vehicle centric coordinate frames of
 reference, offset is positive to the East (X) and to the North (Y) directions. The most negative value shall be used to
 indicate an unknown value.
 a range of +- 40.95 meters

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
Offset-B13 ::= INTEGER (-4096..4095)
```

### <a name="Offset-B14"></a>Offset-B14
A 14-bit delta offset in X or Y direction from some known point. For non-vehicle centric coordinate frames of
 reference, offset is positive to the East (X) and to the North (Y) directions.
 a range of +- 81.91 meters

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
Offset-B14 ::= INTEGER (-8192..8191)
```

### <a name="Offset-B16"></a>Offset-B16
A 16-bit delta offset in X, Y or Z direction from some known point. For non-vehicle centric coordinate frames of
 reference, offset is positive to the East (X) and to the North (Y) directions. The most negative value shall be used to
 indicate an unknown value.
 a range of +- 327.68 meters

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
Offset-B16 ::= INTEGER (-32768..32767)
```

### <a name="PedestrianBicycleDetect"></a>PedestrianBicycleDetect
This DE is used to provide an indication of whether Pedestrians and/or Bicyclists have been detected in the crossing lane.
 true if ANY Pedestrians or Bicyclists are detected crossing the target lane or lanes

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
PedestrianBicycleDetect ::= BOOLEAN
```

### <a name="PositionConfidence"></a>PositionConfidence
This DE entry is used to provide the 95% confidence level for the currently reported value of
 entries such as the DE_Position entries, taking into account the current calibration and precision of the sensor(s) used to
 measure and/or calculate the value. It is used in the horizontal plane. This data element is only to provide the listener with
 information on the limitations of the sensing system; not to support any type of automatic error correction or to imply a
 guaranteed maximum error. This data element should not be used for fault detection or diagnosis, but if a vehicle is able
 to detect a fault, the confidence interval should be increased accordingly. The frame of reference and axis of rotation used
 shall be accordance with that defined in Section 11 of this standard.

 - `unavailable` - 0: B'0000 Not Equipped or unavailable
 - `a500m`       - 1: B'0001 500m or about 5 * 10 ^ -3 decimal degrees
 - `a200m`       - 2: B'0010 200m or about 2 * 10 ^ -3 decimal degrees
 - `a100m`       - 3: B'0011 100m or about 1 * 10 ^ -3 decimal degrees
 - `a50m`        - 4: B'0100 50m or about 5 * 10 ^ -4 decimal degrees
 - `a20m`        - 5: B'0101 20m or about 2 * 10 ^ -4 decimal degrees
 - `a10m`        - 6: B'0110 10m or about 1 * 10 ^ -4 decimal degrees
 - `a5m`         - 7: B'0111 5m or about 5 * 10 ^ -5 decimal degrees
 - `a2m`         - 8: B'1000 2m or about 2 * 10 ^ -5 decimal degrees
 - `a1m`         - 9: B'1001 1m or about 1 * 10 ^ -5 decimal degrees
 - `a50cm`       - 10: B'1010 0.50m or about 5 * 10 ^ -6 decimal degrees
 - `a20cm`       - 11: B'1011 0.20m or about 2 * 10 ^ -6 decimal degrees
 - `a10cm`       - 12: B'1100 0.10m or about 1 * 10 ^ -6 decimal degrees
 - `a5cm`        - 13: B'1101 0.05m or about 5 * 10 ^ -7 decimal degrees
 - `a2cm`        - 14: B'1110 0.02m or about 2 * 10 ^ -7 decimal degrees
 - `a1cm`        - 15) B'1111 0.01m or about 1 * 10 ^ -7 decimal degrees
Thomas Ritter's avatar
Thomas Ritter committed
 - Encoded as a 4 bit value

Values:
* **unavailable** (0)<br>
* **a500m** (1)<br>
* **a200m** (2)<br>
* **a100m** (3)<br>
* **a50m** (4)<br>
* **a20m** (5)<br>
* **a10m** (6)<br>
* **a5m** (7)<br>
* **a2m** (8)<br>
* **a1m** (9)<br>
* **a50cm** (10)<br>
* **a20cm** (11)<br>
* **a10cm** (12)<br>
* **a5cm** (13)<br>
* **a2cm** (14)<br>
* **a1cm** (15)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
PositionConfidence ::= ENUMERATED {
   unavailable (0),
   a500m   (1),
   a200m   (2),
   a100m   (3),
   a50m    (4),
   a20m    (5),
   a10m    (6),
   a5m     (7),
   a2m     (8),
   a1m     (9),
   a50cm  (10),
   a20cm  (11),
   a10cm  (12),
   a5cm   (13),
   a2cm   (14),
   a1cm   (15)
 }
```

### <a name="PrioritizationResponseStatus"></a>PrioritizationResponseStatus
This DE is used in the [**PrioritizationResponse**](#PrioritizationResponse) data frame to indicate the
 general status of a prior prioritization request.

 - `unknown`           - 0: Unknown state
 - `requested`         - 1: This prioritization request was detected by the traffic controller
 - `processing`        - 2: Checking request (request is in queue, other requests are prior)
 - `watchOtherTraffic` - 3: Cannot give full permission, therefore watch for other traffic. Note that other requests may be present
 - `granted`           - 4: Intervention was successful and now prioritization is active
 - `rejected`          - 5: The prioritization or preemption request was rejected by the traffic controller
 - `maxPresence`       - 6: The Request has exceeded maxPresence time. Used when the controller has determined that the requester should then back off and request an alternative.
 - `reserviceLocked`   - 7: Prior conditions have resulted in a reservice
                            locked event: the controller requires the passage of time before another similar request will be accepted

Values:
* **unknown** (0)<br>
* **requested** (1)<br>
* **processing** (2)<br>
* **watchOtherTraffic** (3)<br>
* **granted** (4)<br>
* **rejected** (5)<br>
* **maxPresence** (6)<br>
* **reserviceLocked** (7)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
PrioritizationResponseStatus ::= ENUMERATED {
  unknown           (0),
  requested         (1),
  processing        (2),
  watchOtherTraffic (3),
  granted           (4),
  rejected          (5),
  maxPresence       (6),
  reserviceLocked   (7),
  ...
}
```

### <a name="PriorityLevel"></a>PriorityLevel
This DE is used to provide the R09 priority.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V2.2.1_
```asn1
PriorityLevel ::= INTEGER (0..255)
```

Thomas Ritter's avatar
Thomas Ritter committed
### <a name="PriorityRequestType"></a>PriorityRequestType
This DE provides a means to indicate if a request (found in the Signal RequestMessage) represents
 a new service request, a request update, or a request cancellation for either preemption or priority services.

Values:
* **priorityRequestTypeReserved** (0)<br>
* **priorityRequest** (1)<br>
* **priorityRequestUpdate** (2)<br>
* **priorityCancellation** (3)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
PriorityRequestType ::= ENUMERATED {
  priorityRequestTypeReserved (0),
  priorityRequest             (1),
  priorityRequestUpdate       (2),
  priorityCancellation        (3),
  ...
}
```

### <a name="RegionId"></a>RegionId
This DE is used to define regions where unique additional content may be added and
 used in the message set. The index values defined below represent various regions known at the time of publication. This
 list is expected to grow over time. The index values assigned here can be augmented by local (uncoordinated)
 assignments in the allowed range. It should be noted that such a local value is specified in the "REGION" ASN module, so
 there is no need to edit the DSRC ASN specification of the standard. This process is further described in Section 11.1.

 - `noRegion` - 0: Use default supplied stubs
 - `addGrpA`  - 1: USA
 - `addGrpB`  - 2: Japan
 - `addGrpC`  - 3: EU

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;new registered regional IDs will be added here
        The values 128 and above are for local region use
>>>

```asn1
RegionId ::= INTEGER (0..255)
  noRegion     RegionId ::= 0
  addGrpA      RegionId ::= 1
  addGrpB      RegionId ::= 2
  addGrpC      RegionId ::= 3
```

### <a name="ReportingPoint"></a>ReportingPoint
This DE is used to provide the R09 reporting point.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V2.2.1_
```asn1
ReportingPoint ::= INTEGER (0..65535)
```

Thomas Ritter's avatar
Thomas Ritter committed
### <a name="RequestID"></a>RequestID
This DE is used to provide a unique ID between two parties for various dialog exchanges.
 Combined with the sender's VehicleID (consisting of a TempID or a Station ID), this provides a unique string for some
 mutually defined period of time. A typical example of use would be a signal preemption or priority request dialog
 containing multiple requests from one sender (denoted by the unique RequestID with each). When such a request is
 processed and reflected in the signal status messages, the original sender and the specific request can both be determined.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;In typical use, this value is simply incremented in a modulo fashion to ensure a unique stream of values for the
        device creating it. Any needs for uniqueness across multiple dialogs to one or more parties shall be the responsibility of
        the device to manage. There are often normative restrictions on the device changing its TempID during various dialogs
        when this data element is used. Further details of these operational concepts can be found in the relevant standards.
>>>

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

### <a name="RequestImportanceLevel"></a>RequestImportanceLevel
This DE is used to state what type of signal request is being made to a signal
 controller by a DSRC device in a defined role (such as a police vehicle). The levels of the request typically convey a
 sense of urgency or importance with respect to other demands to allow the controller to use predefined business rules to
 determine how to respond. These rules will vary in terms of how details of overall importance and urgency are to be
 ranked, so they are to be implemented locally. As a result of this regional process, the list below should be assigned well-
 defined meanings by the local deployment. These meaning will typically result in assigning a set of values to list for each
 vehicle role type that is to be supported.

 - `requestImportanceLevel1`     1: The least important request
 - `requestImportanceLevel14`   14: The most important request
 - `requestImportanceReserved`  15: Reserved for future use

Values:
* **requestImportanceLevelUnKnown** (0)<br>
* **requestImportanceLevel1** (1)<br>
* **requestImportanceLevel2** (2)<br>
* **requestImportanceLevel3** (3)<br>
* **requestImportanceLevel4** (4)<br>
* **requestImportanceLevel5** (5)<br>
* **requestImportanceLevel6** (6)<br>
* **requestImportanceLevel7** (7)<br>
* **requestImportanceLevel8** (8)<br>
* **requestImportanceLevel9** (9)<br>
* **requestImportanceLevel10** (10)<br>
* **requestImportanceLevel11** (11)<br>
* **requestImportanceLevel12** (12)<br>
* **requestImportanceLevel13** (13)<br>
* **requestImportanceLevel14** (14)<br>
* **requestImportanceReserved** (15)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RequestImportanceLevel ::= ENUMERATED {
  requestImportanceLevelUnKnown  (0),
  requestImportanceLevel1        (1),
  requestImportanceLevel2        (2),
  requestImportanceLevel3        (3),
  requestImportanceLevel4        (4),
  requestImportanceLevel5        (5),
  requestImportanceLevel6        (6),
  requestImportanceLevel7        (7),
  requestImportanceLevel8        (8),
  requestImportanceLevel9        (9),
  requestImportanceLevel10      (10),
  requestImportanceLevel11      (11),
  requestImportanceLevel12      (12),
  requestImportanceLevel13      (13),
  requestImportanceLevel14      (14),
  requestImportanceReserved     (15)
}
```

### <a name="RequestSubRole"></a>RequestSubRole
This DE is used to further define the details of the role which any DSRC device might
 play when making a request to a signal controller. This value is not always needed. For example, perhaps in a
 deployment all police vehicles are to be treated equally. The taxonomy of what details are selected to be entered into the
 list is a regional choice but should be devised to allow the controller to use predefined business rules to respond using the
 data. As another example, perhaps in a regional deployment a cross-city express type of transit vehicle is given a different
 service response for the same request than another type of transit vehicle making an otherwise similar request. As a
 result of this regional process, the list below should be assigned well-defined meanings by the local deployment. These
 meanings will typically result in assigning a set of values to list for each vehicle role type that is to be supported.

 - `requestSubRole1`        - 1:  The first type of sub role
 - `requestSubRole14`       - 14: The last type of sub role
 - `requestSubRoleReserved` - 15: Reserved for future use

Values:
* **requestSubRoleUnKnown** (0)<br>
* **requestSubRole1** (1)<br>
* **requestSubRole2** (2)<br>
* **requestSubRole3** (3)<br>
* **requestSubRole4** (4)<br>
* **requestSubRole5** (5)<br>
* **requestSubRole6** (6)<br>
* **requestSubRole7** (7)<br>
* **requestSubRole8** (8)<br>
* **requestSubRole9** (9)<br>
* **requestSubRole10** (10)<br>
* **requestSubRole11** (11)<br>
* **requestSubRole12** (12)<br>
* **requestSubRole13** (13)<br>
* **requestSubRole14** (14)<br>
* **requestSubRoleReserved** (15)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RequestSubRole ::= ENUMERATED {
  requestSubRoleUnKnown    (0),
  requestSubRole1          (1),
  requestSubRole2          (2),
  requestSubRole3          (3),
  requestSubRole4          (4),
  requestSubRole5          (5),
  requestSubRole6          (6),
  requestSubRole7          (7),
  requestSubRole8          (8),
  requestSubRole9          (9),
  requestSubRole10        (10),
  requestSubRole11        (11),
  requestSubRole12        (12),
  requestSubRole13        (13),
  requestSubRole14        (14),
  requestSubRoleReserved  (15)
}
```

### <a name="RestrictionAppliesTo"></a>RestrictionAppliesTo
The RestrictionAppliesTo data element provides a short list of common vehicle types which may have one or more
 special movements at an intersection. In general, these movements are not visible to other traffic with signal heads, but
 the SPAT data reflects the state of the movement. Various restricted movements at an intersection can be expressed
 using this element to indicate where the movement applies.

 - `none` :              applies to nothing
 - `equippedTransit`:    buses etc.
 - `equippedTaxis`:
 - `equippedOther`:      other vehicle types with necessary signal phase state reception equipment
 - `emissionCompliant`:  regional variants with more definitive items also exist
 - `equippedBicycle`:
 - `weightCompliant`:
 - `heightCompliant`:    Items dealing with traveler needs serviced by the infrastructure. These end users (which are not vehicles) are presumed to be suitably equipped
 - `pedestrians`:
 - `slowMovingPersons`:
 - `wheelchairUsers`:
 - `visualDisabilities`:
 - `audioDisabilities`:  hearing

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RestrictionAppliesTo ::= ENUMERATED {
  none,
  equippedTransit,
  equippedTaxis,
  equippedOther,
  emissionCompliant,
  equippedBicycle,
  weightCompliant,
  heightCompliant,
  pedestrians,
  slowMovingPersons,
  wheelchairUsers,
  visualDisabilities,
  audioDisabilities,
  otherUnknownDisabilities,
  ...
}
```

### <a name="RestrictionClassID"></a>RestrictionClassID
This DE defines an intersection-unique value to convey data about classes of users.
 The mapping used varies with each intersection and is defined in the MAP message if needed. The defined mappings
 found there are used to determine when a given class is meant. The typical use of this element is to map additional
 movement restrictions or rights (in both the MAP and SPAT messages) to special classes of users (trucks, high sided
 vehicles, special vehicles etc.). There is the general presumption that in the absence of this data, any allowed movement
 extends to all users.

 An index value to identify data about classes of users the value used varies with each intersection's
 needs and is defined in the map to the assigned classes of supported users.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RestrictionClassID ::= INTEGER (0..255)
```

### <a name="RoadRegulatorID"></a>RoadRegulatorID
This DE is a 16-bit globally unique identifier assigned to an entity responsible for assigning
 Intersection IDs in the region over which it has such authority. The value zero shall be used for testing, and should only be
 used in the absence of a suitable assignment. A single entity which assigns intersection IDs may be assigned several
 RoadRegulatorIDs. These assignments are presumed to be permanent.

 The value zero shall be used for testing only

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RoadRegulatorID ::= INTEGER (0..65535)
```

### <a name="RoadSegmentID"></a>RoadSegmentID
This DE is used to uniquely define a section of roadway within a country or region in a 16-bit field.
 Assignment rules for this value are established elsewhere and may use regional assignment schemas that vary. Within
 the region the policies used to ensure an assigned value’s uniqueness before that value is reused is the responsibility of
 that region. Such reuse is expected to occur, but over somewhat lengthy epoch (months).

 The values zero to 255 shall be used for testing only
 Note that the value assigned to an RoadSegment will be
 unique within a given regional ID only during its use

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RoadSegmentID ::= INTEGER (0..65535)
```

### <a name="RoadwayCrownAngle"></a>RoadwayCrownAngle
The RoadwayCrownAngle data element relates the gross tangential angle of the roadway surface with respect to
 the local horizontal axis and is measured at the indicated part of the lane. This measurement is typically made at the
 crown (centerline) or at an edge of the lane path. Its typical use is to relate data used in speed warning and traction
 calculations for the lane segment or roadway segment in which the measurement is taken.

 - The value -128 shall be used for unknown
 - The value zero shall be used for angles which are between -0.15 and +0.15

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _0.3 degrees of angle over a range of -38.1 to + 38.1 degrees_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RoadwayCrownAngle ::= INTEGER (-128..127)
```

### <a name="RouteNumber"></a>RouteNumber
This DE is used to provide the R09 route information.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V2.2.1_
```asn1
RouteNumber ::= INTEGER (0..4294967295)
```

Thomas Ritter's avatar
Thomas Ritter committed
### <a name="RTCMmessage"></a>RTCMmessage
This DE contains the stream of octets of the actual RTCM message that is being sent.
 The message’s contents are defined in RTCM Standard 10403.1 and in RTCM Standard 10402.1 and its successors.
 Note that most RTCM messages are considerably smaller than the size limit defined here, but that some messages may
 need to be broken into smaller messages (as per the rules defined in the RTCM work) in order to be transmitted over DSRC.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RTCMmessage ::= OCTET STRING (SIZE(1..1023))
```

### <a name="RTCM-Revision"></a>RTCM-Revision
This DE provides the specific revision of the RTCM standard which is being used. This is
 helpful to know precisely the mapping of the message types to their definitions, as well as some minor transport layer
 ordering details when received in the mobile unit. All RTCM SC-104 messages follow a common message numbering
 method (wherein all defined messages are given unique values) which can be decoded from the initial octets of the
 message. This operation is typically performed by the GNSS rover that consumes the messages, so it is transparent at
 the DSRC message set level.

 Values:
 - `rtcmRev2`:  Std 10402.x et al
 - `rtcmRev3`:  Std 10403.x et al

Values:
* **unknown** (0)<br>
* **rtcmRev2** (1)<br>
* **rtcmRev3** (2)<br>
* **reserved** (3)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;In order to fully support the use of networked transport of RTCM corrections (so-called Ntrip systems), the
         enumerated list of protocol types provides for all the common types outlined in RTCM Standard 10410.0, Appendix B. It is
         anticipated that revisions 3.x and 2.3 will predominate in practice as they do today. It should also be noted that RTCM
         standards use the term `byte` for an 8-bit value, while in this standard the term `octet` is used.
>>>

```asn1
RTCM-Revision ::= ENUMERATED {
  unknown  (0),
  rtcmRev2 (1),
  rtcmRev3 (2),
Thomas Ritter's avatar
Thomas Ritter committed
  reserved (3),
  ...
}
```

### <a name="Scale-B12"></a>Scale-B12
A 12-bit signed scaling factor supporting scales from zero (which is not used) to >200%. In this data element, the
 value zero is taken to represent a value of one (scale 1:1). Values above and below this add or remove exactly 0.05%
 from the initial value of 100%. Hence, a value of 2047 adds 102.35% to 100%, resulting in a scale of 202.35% exactly (the
 largest valid scale value). Negative values which would result in an effective final value below zero are not supported. The
 smallest valid value allowed is -1999 and the remaining negative values are reserved for future definition.

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _in steps of 0.05 percent_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
Scale-B12 ::= INTEGER (-2048..2047)
```

### <a name="SignalGroupID"></a>SignalGroupID
This DE is an index used to map between the internal state machine of one or more signal controllers (or
 other types of traffic flow devices) and a common numbering system that can represent all possible combinations of active
 states (movements and phases in US traffic terminology). All possible movement variations are assigned a unique value
 within the intersection. Conceptually, the ID represents a means to provide a list of lanes in a set which would otherwise
 need to be enumerated in the message. The values zero and 255 are reserved, so there may up to 254 different signal
 group IDs within one single intersection. The value 255 represents a protected-Movement-Allowed or permissive-
 Movement-Allowed condition that exists at all times. This value is applied to lanes, with or without traffic control devices,
 that operate as free-flow lanes. Typically referred to as Channelized Right/Left Turn Lanes (in right/left-hand drive
 countries).

 Values:
 - the value `0` shall be used when the ID is not available or not known
 - the value `255` is reserved to indicate a permanent green movement state
 - therefore a simple 8 phase signal controller device might use 1..9 as its groupIDs

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SignalGroupID ::= INTEGER (0..255)
```

### <a name="SegmentAttributeXY"></a>SegmentAttributeXY
This DE is an enumerated list of attributes about the current lane segment which
 may be enabled or disabled to indicate the presence or absence of the selected attribute on the segment. A segment is
 one or more of the straight lines formed between each set of node points. It is common for a segment attribute to persist
 for more than one set of node points if there is any curvature in the lane itself. The described attributes are all binary flags
 in that they do not need to convey any additional data. Other attributes allow sending short data values to reflect a setting
 which is set and persists in a similar fashion.

 Various values which can be Enabled and Disabled for a lane segment
 - reserved:
 - doNotBlock: segment where a vehicle may not come to a stop
 - whiteLine:  segment where lane crossing not allowed such as the final few meters of a lane 
 - mergingLaneLeft: indicates porous lanes
 - mergingLaneRight: indicates porous lanes
 - curbOnLeft: indicates presence of curbs
 - curbOnRight: indicates presence of curbs
 - loadingzoneOnLeft:  loading or drop off zones
 - loadingzoneOnRight: loading or drop off zones
 - turnOutPointOnLeft: opening to adjacent street/alley/road
 - turnOutPointOnRight: opening to adjacent street/alley/road
 - adjacentParkingOnLeft: side of road parking
 - adjacentParkingOnRight: side of road parking
 - adjacentBikeLaneOnLeft: presence of marked bike lanes
 - adjacentBikeLaneOnRight: presence of marked bike lanes
 - sharedBikeLane: right of way is shared with bikes who may occupy entire lane width
 - bikeBoxInFront:
 - transitStopOnLeft: any form of bus/transit loading, with pull in-out access to lane on left
 - transitStopOnRight: any form of bus/transit loading, with pull in-out access to lane on right
 - transitStopInLane: any form of bus/transit loading, in mid path of the lane
 - sharedWithTrackedVehicle: lane is shared with train or trolley, not used for crossing tracks 
 - safeIsland: begin/end a safety island in path
 - lowCurbsPresent: for ADA support
 - rumbleStripPresent: for ADA support
 - audibleSignalingPresent: for ADA support
 - adaptiveTimingPresent: for ADA support
 - rfSignalRequestPresent: Supports RF push to walk technologies
 - partialCurbIntrusion: path is blocked by a median or curb but at least 1 meter remains open for use
                         and at-grade passage Lane geometry details
 - taperToLeft: Used to control final path shape (see standard for defined shapes)
 - taperToRight: Used to control final path shape (see standard for defined shapes)
 - taperToCenterLine: Used to control final path shape (see standard for defined shapes)
 - parallelParking: Parking at an angle with the street
 - headInParking:   Parking at an angle with the street
 - freeParking:     No restriction on use of parking
 - timeRestrictionsOnParking: Parking is not permitted at all times
                              typically used when the 'parking' lane becomes a driving lane at times
 - costToPark: Used where parking has a cost
 - midBlockCurbPresent: a protruding curb near lane edge
 - unEvenPavementPresent: a disjoint height at lane edge

Values:
* **reserved** <br>
* **doNotBlock** <br>
* **whiteLine** <br>
* **mergingLaneLeft** <br>
* **mergingLaneRight** <br>
* **curbOnLeft** <br>
* **curbOnRight** <br>
* **loadingzoneOnLeft** <br>
* **loadingzoneOnRight** <br>
* **turnOutPointOnLeft** <br>
* **turnOutPointOnRight** <br>
* **adjacentParkingOnLeft** <br>
* **adjacentParkingOnRight** <br>
* **adjacentBikeLaneOnLeft** <br>
* **adjacentBikeLaneOnRight** <br>
* **sharedBikeLane** <br>
* **bikeBoxInFront** <br>
* **transitStopOnLeft** <br>
* **transitStopOnRight** <br>
* **transitStopInLane** <br>
* **sharedWithTrackedVehicle** <br>
* **safeIsland** <br>
* **lowCurbsPresent** <br>
* **rumbleStripPresent** <br>
* **audibleSignalingPresent** <br>
* **adaptiveTimingPresent** <br>
* **rfSignalRequestPresent** <br>
* **partialCurbIntrusion** <br>
* **taperToLeft** <br>
* **taperToRight** <br>
* **taperToCenterLine** <br>
* **parallelParking** <br>
* **headInParking** <br>
* **freeParking** <br>
* **timeRestrictionsOnParking** <br>
* **costToPark** <br>
* **midBlockCurbPresent** <br>
* **unEvenPavementPresent** <br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SegmentAttributeXY ::= ENUMERATED {
  reserved                  ,
  doNotBlock                ,
  whiteLine                 ,
  mergingLaneLeft           ,
  mergingLaneRight          ,
  curbOnLeft                ,
  curbOnRight               ,
  loadingzoneOnLeft         ,
  loadingzoneOnRight        ,
  turnOutPointOnLeft        ,
  turnOutPointOnRight       ,
  adjacentParkingOnLeft     ,
  adjacentParkingOnRight    ,
  adjacentBikeLaneOnLeft    ,
  adjacentBikeLaneOnRight   ,
  sharedBikeLane            ,
  bikeBoxInFront            ,
  transitStopOnLeft         ,
  transitStopOnRight        ,
  transitStopInLane         ,
  sharedWithTrackedVehicle  ,
  safeIsland                ,
  lowCurbsPresent           ,
  rumbleStripPresent        ,
  audibleSignalingPresent   ,
  adaptiveTimingPresent     ,
  rfSignalRequestPresent    ,
  partialCurbIntrusion      ,
  taperToLeft               ,
  taperToRight              ,
  taperToCenterLine         ,
  parallelParking           ,
  headInParking             ,
  freeParking               ,
  timeRestrictionsOnParking ,
  costToPark                ,
  midBlockCurbPresent       ,
  unEvenPavementPresent     ,
  ...
}
```

### <a name="SemiMajorAxisAccuracy"></a>SemiMajorAxisAccuracy
This DE is used to express the radius (length) of the semi-major axis of an
 ellipsoid representing the accuracy which can be expected from a GNSS system in 5cm steps,
 typically at a one sigma level of confidence.

 Value is semi-major axis accuracy at one standard dev.
 - Range 0-12.7 meter, LSB = .05m
 - 254 = any value equal or greater than 12.70 meter
 - 255 = unavailable semi-major axis value

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _0.05m_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SemiMajorAxisAccuracy ::= INTEGER (0..255)
```

### <a name="SemiMajorAxisOrientation"></a>SemiMajorAxisOrientation
This DE is used to orientate the angle of the semi-major axis of an
 ellipsoid representing the accuracy which can be expected from a GNSS system with respect to the coordinate system.

 Value is orientation of semi-major axis
 - relative to true north (0-359.9945078786 degrees)
Thomas Ritter's avatar
Thomas Ritter committed
 - LSB units of 360/65535 deg = 0.0054932479
 - a value of 0 shall be 0 degrees
 - a value of 1 shall be 0.0054932479 degrees
 - a value of 65534 shall be 359.9945078786 deg
 - a value of 65535 shall be used for orientation unavailable

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _360/65535 degree_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SemiMajorAxisOrientation ::= INTEGER (0..65535)
```

### <a name="SemiMinorAxisAccuracy"></a>SemiMinorAxisAccuracy
This DE is used to express the radius of the semi-minor axis of an ellipsoid
 representing the accuracy which can be expected from a GNSS system in 5cm steps, typically at a one sigma level of
 confidence.

 Value is semi-minor axis accuracy at one standard dev
 - range 0-12.7 meter, LSB = .05m
 - 254 = any value equal or greater than 12.70 meter
 - 255 = unavailable semi-minor axis value

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _0.05m_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SemiMinorAxisAccuracy ::= INTEGER (0..255)
```

### <a name="SpeedAdvice"></a>SpeedAdvice
This data element represents the recommended velocity of an object, typically a vehicle speed along a roadway,
 expressed in unsigned units of 0.1 meters per second.

 - LSB units are 0.1 m/s
 - the value 499 shall be used for values at or greater than 49.9 m/s
 - the value 500 shall be used to indicate that speed is unavailable

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _0.1 m/s_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SpeedAdvice ::= INTEGER (0..500)
```

### <a name="SpeedConfidenceDSRC"></a>SpeedConfidenceDSRC
This DE is used to provide the 95% confidence level for the currently reported
 value of [**Speed**](#Speed), taking into account the current calibration and precision of the sensor(s) used to measure and/or
Thomas Ritter's avatar
Thomas Ritter committed
 calculate the value. This data element is only to provide the listener with information on the limitations of the sensing
 system, not to support any type of automatic error correction or to imply a guaranteed maximum error. This data element
 should not be used for fault detection or diagnosis, but if a vehicle is able to detect a fault, the confidence interval should
 be increased accordingly.
Thomas Ritter's avatar
Thomas Ritter committed

 - 0 - `unavailable` : Not Equipped or unavailable
 - 1 - `prec100ms`   : 100  meters / sec
 - 2 - `prec10ms`    : 10   meters / sec
 - 3 - `prec5ms`     : 5    meters / sec
 - 4 - `prec1ms`     : 1    meters / sec
 - 5 - `prec0-1ms`   : 0.1  meters / sec
 - 6 - `prec0-05ms`  : 0.05 meters / sec
 - 7 - `prec0-01ms`  : 0.01 meters / sec

Values:
* **unavailable** (0)<br>
* **prec100ms** (1)<br>
* **prec10ms** (2)<br>
* **prec5ms** (3)<br>
* **prec1ms** (4)<br>
* **prec0-1ms** (5)<br>
* **prec0-05ms** (6)<br>
* **prec0-01ms** (7)<br>
Thomas Ritter's avatar
Thomas Ritter committed

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SpeedConfidenceDSRC ::= ENUMERATED {
   unavailable (0),
   prec100ms   (1),
   prec10ms    (2),
   prec5ms     (3),
   prec1ms     (4),
   prec0-1ms   (5),
   prec0-05ms  (6),
   prec0-01ms  (7)
Thomas Ritter's avatar
Thomas Ritter committed
 }
```

### <a name="TemporaryID"></a>TemporaryID
This is the 4 octet random device identifier, called the TemporaryID. When used for a mobile OBU device, this value
 will change periodically to ensure the overall anonymity of the vehicle, unlike a typical wireless or wired 802 device ID.
 Because this value is used as a means to identify the local vehicles that are interacting during an encounter, it is used in
 the message set. Other devices, such as infrastructure (RSUs), may have a fixed value for the temporary ID value. See
 also [**StationId**](#StationId) which is used in other deployment regions.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;The circumstances and times at which various DSRC devices (notably OBUs) create and change their current
        Temporary ID is a complex application level topic. It should be noted that the Temporary ID is not the same as a device
        MAC value, although when used as a means to uniquely identify a device, both have many common properties. It should
        further be noted that the MAC value for a mobile OBU device (unlike a typical wireless or wired 802 device) will
        periodically change to a new random value to ensure the overall anonymity of the vehicle.
>>>

```asn1
TemporaryID ::= OCTET STRING (SIZE(4))
```

### <a name="ThrottleConfidence"></a>ThrottleConfidence
This DE is used to provide the 95% confidence level for the currently reported
 value of DE [**Throttle**](#Throttle), taking into account the current calibration and precision of the sensor(s) used to measure and/or
 calculate the value. This data element is only to provide information on the limitations of the sensing system, not to
 support any type of automatic error correction or to imply a guaranteed maximum error. This data element should not be
 used for fault detection or diagnosis, but if a vehicle is able to detect a fault, the confidence interval should be increased
 accordingly. If a fault that triggers the MIL is of a nature to render throttle performance unreliable, then ThrottleConfidence
 should be represented as "notEquipped."

 - 0 - `unavailable`:    B'00 Not Equipped or unavailable
 - 1 - `prec10percent`:  B'01 10 percent Confidence level
 - 2 - `prec1percent`:   B'10 1 percent Confidence level
 - 3 - `prec0-5percent`: B'11 0.5 percent Confidence level

Values:
* **unavailable** (0)<br>
* **prec10percent** (1)<br>
* **prec1percent** (2)<br>
* **prec0-5percent** (3)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
ThrottleConfidence ::= ENUMERATED {
   unavailable     (0),
   prec10percent   (1),
   prec1percent    (2),
   prec0-5percent  (3)
 }
```

### <a name="TimeConfidence"></a>TimeConfidence
This DE is used to provide the 95% confidence level for the currently reported value
 of time, taking into account the current calibration and precision of the sensor(s) used to measure and/or calculate the
 value. This data element is only to provide information on the limitations of the sensing system, not to support any type of
 automatic error correction or to imply a guaranteed maximum error. This data element should not be used for fault
 detection or diagnosis, but if a vehicle is able to detect a fault, the confidence interval should be increased accordingly.

 - 0 - `unavailable`  : Not Equipped or unavailable
 - 1 - `time-100-000` : Better than 100 Seconds
 - 2 - `time-050-000` : Better than 50 Seconds
 - 3 - `time-020-000` : Better than 20 Seconds
 - 4 - `time-010-000` : Better than 10 Seconds
 - 5 - `time-002-000` : Better than 2 Seconds
 - 6 - `time-001-000` : Better than 1 Second
 - 7 - `time-000-500` : Better than 0.5 Seconds
 - 8 - `time-000-200` : Better than 0.2 Seconds
 - 9 - `time-000-100` : Better than 0.1 Seconds
 - 10 - `time-000-050` : Better than 0.05 Seconds
 - 11 - `time-000-020` : Better than 0.02 Seconds
 - 12 - `time-000-010` : Better than 0.01 Seconds
 - 13 - `time-000-005` : Better than 0.005 Seconds
 - 14 - `time-000-002` : Better than 0.001 Seconds
 - 15 - `time-000-001` : Better than 0.001 Seconds
 - 16 - `time-000-000-5` : Better than 0.000,5 Seconds
 - 17 - `time-000-000-2` : Better than 0.000,2 Seconds
 - 18 - `time-000-000-1` : Better than 0.000,1 Seconds
 - 19 - `time-000-000-05` : Better than 0.000,05 Seconds
 - 20 - `time-000-000-02` : Better than 0.000,02 Seconds
 - 21 - `time-000-000-01` : Better than 0.000,01 Seconds
 - 22 - `time-000-000-005` : Better than 0.000,005 Seconds
 - 23 - `time-000-000-002` : Better than 0.000,002 Seconds
 - 24 - `time-000-000-001` : Better than 0.000,001 Seconds
 - 25 - `time-000-000-000-5` : Better than 0.000,000,5 Seconds
 - 26 - `time-000-000-000-2` : Better than 0.000,000,2 Seconds
 - 27 - `time-000-000-000-1` : Better than 0.000,000,1 Seconds
 - 28 - `time-000-000-000-05` : Better than 0.000,000,05 Seconds
 - 29 - `time-000-000-000-02` : Better than 0.000,000,02 Seconds
 - 30 - `time-000-000-000-01` : Better than 0.000,000,01 Seconds
 - 31 - `time-000-000-000-005` : Better than 0.000,000,005 Seconds
 - 32 - `time-000-000-000-002` : Better than 0.000,000,002 Seconds
 - 33 - `time-000-000-000-001` : Better than 0.000,000,001 Seconds
 - 34 - `time-000-000-000-000-5` : Better than 0.000,000,000,5 Seconds
 - 35 - `time-000-000-000-000-2` : Better than 0.000,000,000,2 Seconds
 - 36 - `time-000-000-000-000-1` : Better than 0.000,000,000,1 Seconds
 - 37 - `time-000-000-000-000-05` : Better than 0.000,000,000,05 Seconds
 - 38 - `time-000-000-000-000-02` : Better than 0.000,000,000,02 Seconds
 - 39 - `time-000-000-000-000-01` : Better than 0.000,000,000,01 Seconds

Values:
* **unavailable** (0)<br>
* **time-100-000** (1)<br>
* **time-050-000** (2)<br>
* **time-020-000** (3)<br>
* **time-010-000** (4)<br>
* **time-002-000** (5)<br>
* **time-001-000** (6)<br>
* **time-000-500** (7)<br>
* **time-000-200** (8)<br>
* **time-000-100** (9)<br>
* **time-000-050** (10)<br>
* **time-000-020** (11)<br>
* **time-000-010** (12)<br>
* **time-000-005** (13)<br>
* **time-000-002** (14)<br>
* **time-000-001** (15)<br>
* **time-000-000-5** (16)<br>
* **time-000-000-2** (17)<br>
* **time-000-000-1** (18)<br>
* **time-000-000-05** (19)<br>
* **time-000-000-02** (20)<br>
* **time-000-000-01** (21)<br>
* **time-000-000-005** (22)<br>
* **time-000-000-002** (23)<br>
* **time-000-000-001** (24)<br>
* **time-000-000-000-5** (25)<br>
* **time-000-000-000-2** (26)<br>
* **time-000-000-000-1** (27)<br>
* **time-000-000-000-05** (28)<br>
* **time-000-000-000-02** (29)<br>
* **time-000-000-000-01** (30)<br>
* **time-000-000-000-005** (31)<br>
* **time-000-000-000-002** (32)<br>
* **time-000-000-000-001** (33)<br>
* **time-000-000-000-000-5** (34)<br>
* **time-000-000-000-000-2** (35)<br>
* **time-000-000-000-000-1** (36)<br>
* **time-000-000-000-000-05** (37)<br>
* **time-000-000-000-000-02** (38)<br>
* **time-000-000-000-000-01** (39)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
TimeConfidence ::= ENUMERATED {
   unavailable              (0),
   time-100-000             (1),
   time-050-000             (2),
   time-020-000             (3),
   time-010-000             (4),
   time-002-000             (5),
   time-001-000             (6),
   time-000-500             (7),
   time-000-200             (8),
   time-000-100             (9),
   time-000-050            (10),
   time-000-020            (11),
   time-000-010            (12),
   time-000-005            (13),
   time-000-002            (14),
   time-000-001            (15),
   time-000-000-5          (16),
   time-000-000-2          (17),
   time-000-000-1          (18),
   time-000-000-05         (19),
   time-000-000-02         (20),
   time-000-000-01         (21),
   time-000-000-005        (22),
   time-000-000-002        (23),
   time-000-000-001        (24),
   time-000-000-000-5      (25),
   time-000-000-000-2      (26),
   time-000-000-000-1      (27),
   time-000-000-000-05     (28),
   time-000-000-000-02     (29),
   time-000-000-000-01     (30),
   time-000-000-000-005    (31),
   time-000-000-000-002    (32),
   time-000-000-000-001    (33),
   time-000-000-000-000-5  (34),
   time-000-000-000-000-2  (35),
   time-000-000-000-000-1  (36),
   time-000-000-000-000-05 (37),
   time-000-000-000-000-02 (38),
   time-000-000-000-000-01 (39)
}
```

### <a name="TimeIntervalConfidence"></a>TimeIntervalConfidence
This is the statistical confidence for the predicted time of signal group state change. For evaluation, the formula
 10<sup>(x/a)</sup>-b with a=82.5 and b=1.3 was used. The values are encoded as probability classes with proposed values listed in
 the below table in the ASN.1 specification.

 Value: Probability
 - 0 - 21%
 - 1 - 36%
 - 2 - 47%
 - 3 - 56%
 - 4 - 62%
 - 5 - 68%
 - 6 - 73%
 - 7 - 77%
 - 8 - 81%
 - 9 - 85%
 - 10 - 88%
 - 11 - 91%
 - 12 - 94%
 - 13 - 96%
 - 14 - 98%
 - 15 - 100%

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _percent_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
TimeIntervalConfidence ::= INTEGER (0..15)
```

### <a name="TourNumber"></a>TourNumber
This DE is used to provide the R09 tour information.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V2.2.1_
```asn1
TourNumber ::= INTEGER (0..4294967295)
```

### <a name="TrainLength"></a>TrainLength
This DE is used to provide the R09 train length.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V2.2.1_
```asn1
TrainLength ::= INTEGER (0..7)
```

### <a name="TransitDirection"></a>TransitDirection
This DE is used to provide the R09 direction information.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V2.2.1_
```asn1
TransitDirection ::= INTEGER (0..255)
```

Thomas Ritter's avatar
Thomas Ritter committed
### <a name="TransitVehicleOccupancy"></a>TransitVehicleOccupancy
This DE is used to relate basic level of current ridership.

Values:
* **occupancyUnknown** (0)<br>
* **occupancyEmpty** (1)<br>
* **occupancyVeryLow** (2)<br>
* **occupancyLow** (3)<br>
* **occupancyMed** (4)<br>
* **occupancyHigh** (5)<br>
* **occupancyNearlyFull** (6)<br>
* **occupancyFull** (7)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
TransitVehicleOccupancy ::= ENUMERATED {
  occupancyUnknown    (0),
  occupancyEmpty      (1),
  occupancyVeryLow    (2),
  occupancyLow        (3),
  occupancyMed        (4),
  occupancyHigh       (5),
  occupancyNearlyFull (6),
  occupancyFull       (7)
}
```

### <a name="TransitVehicleStatus"></a>TransitVehicleStatus
This DE is used to relate basic information about the transit run in progress. This is
 typically used in a priority request to a signalized system and becomes part of the input processing for how that system
 will respond to the request.

 - 0 - `loading`:     parking and unable to move at this time
 - 1 - `anADAuse`:    an ADA access is in progress (wheelchairs, kneeling, etc.)
 - 2 - `aBikeLoad`:   loading of a bicycle is in progress
 - 3 - `doorOpen`:    a vehicle door is open for passenger access
 - 4 - `charging`:    a vehicle is connected to charging point
 - 5 - `atStopLine`:  a vehicle is at the stop line for the lane it is in

Values:
* **loading** (0)<br>
* **anADAuse** (1)<br>
* **aBikeLoad** (2)<br>
* **doorOpen** (3)<br>
* **charging** (4)<br>
* **atStopLine** (5)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;Most of these values are used to detect that the transit vehicle in not in a state where movement can occur
 (and that therefore any priority signal should be ignored until the vehicle is again ready to depart).
>>>

```asn1
TransitVehicleStatus ::= BIT STRING {
  loading     (0),
  anADAuse    (1),
  aBikeLoad   (2),
  doorOpen    (3),
  charging    (4),
  atStopLine  (5)
} (SIZE(8))
```

### <a name="TransmissionState"></a>TransmissionState
This DE is used to provide the current state of the vehicle transmission.

Values:
* **neutral** (0)<br>
* **park** (1)<br>
* **forwardGears** (2)<br>
* **reverseGears** (3)<br>
* **reserved1** (4)<br>
* **reserved2** (5)<br>
* **reserved3** (6)<br>
* **unavailable** (7)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
TransmissionState ::= ENUMERATED {
  neutral      (0),
  park         (1),
  forwardGears (2),
  reverseGears (3),
  reserved1    (4),
  reserved2    (5),
  reserved3    (6),
  unavailable  (7)
}
```

### <a name="VehicleHeight"></a>VehicleHeight
The height of the vehicle, measured from the ground to the highest surface, excluding any antenna(s), and
 expressed in units of 5 cm. In cases of vehicles with adjustable ride heights, camper shells, and other devices which may
 cause the overall height to vary, the largest possible height will be used.

 Value is the height of the vehicle, LSB units of 5 cm, range to 6.35 meters

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _5cm_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
VehicleHeight ::= INTEGER (0..127)
```

### <a name="VehicleType"></a>VehicleType
This DE is a type list (i.e., a classification list) of the vehicle in terms of overall size. The
 data element entries follow the definitions defined in the US DOT Highway Performance Monitoring System (HPMS).
 Many infrastructure roadway operators collect and classify data according to this list for regulatory reporting needs.
 Within the ITS industry and within the DSRC message set standards work, there are many similar lists of types for
 overlapping needs and uses.

 - 0 - `none`:       Not Equipped, Not known or unavailable
 - 1 - `unknown`:    Does not fit any other category
 - 2 - `special`:    Special use
 - 3 - `moto`:       Motorcycle
 - 4 - `car`:        Passenger car
 - 5 - `carOther`:   Four tire single units
 - 6 - `bus`:        Buses
 - 7 - `axleCnt2`:   Two axle, six tire single units
 - 8 - `axleCnt3`:   Three axle, single units
 - 9 - `axleCnt4`:   Four or more axle, single unit
 - 10 - `axleCnt4Trailer`:        Four or less axle, single trailer
 - 11 - `axleCnt5Trailer`:        Five or less axle, single trailer
 - 12 - `axleCnt6Trailer`:        Six or more axle, single trailer
 - 13 - `axleCnt5MultiTrailer`:   Five or less axle, multi-trailer
 - 14 - `axleCnt6MultiTrailer`:   Six axle, multi-trailer
 - 15 - `axleCnt7MultiTrailer`:   Seven or more axle, multi-trailer

Values:
* **none** (0)<br>
* **unknown** (1)<br>
* **special** (2)<br>
* **moto** (3)<br>
* **car** (4)<br>
* **carOther** (5)<br>
* **bus** (6)<br>
* **axleCnt2** (7)<br>
* **axleCnt3** (8)<br>
* **axleCnt4** (9)<br>
* **axleCnt4Trailer** (10)<br>
* **axleCnt5Trailer** (11)<br>
* **axleCnt6Trailer** (12)<br>
* **axleCnt5MultiTrailer** (13)<br>
* **axleCnt6MultiTrailer** (14)<br>
* **axleCnt7MultiTrailer** (15)<br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
VehicleType ::= ENUMERATED {
  none                 (0),
  unknown              (1),
  special              (2),
  moto                 (3),
  car                  (4),
  carOther             (5),
  bus                  (6),
  axleCnt2             (7),
  axleCnt3             (8),
  axleCnt4             (9),
  axleCnt4Trailer      (10),
  axleCnt5Trailer      (11),
  axleCnt6Trailer      (12),
  axleCnt5MultiTrailer (13),
  axleCnt6MultiTrailer (14),
  axleCnt7MultiTrailer (15),
  ...
}
```

### <a name="Velocity"></a>Velocity
This DE represents the velocity of an object, typically a vehicle speed or the recommended speed of
 travel along a roadway, expressed in unsigned units of 0.02 meters per second. When used with motor vehicles it may be
 combined with the transmission state to form a data frame for use. A value of 8191 shall be used when the speed is
 unavailable. Note that Velocity as used here is intended to be a scalar value and not a vector.

 The value 8191 indicates that velocity is unavailable

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _0.02 m/s_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
Velocity ::= INTEGER (0..8191)
```

### <a name="VersionId"></a>VersionId
This DE is used to provide the R09 version information.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V2.2.1_
```asn1
VersionId ::= INTEGER (0..4294967295)
```

Thomas Ritter's avatar
Thomas Ritter committed
### <a name="WaitOnStopline"></a>WaitOnStopline
This DE is used to indicate to the vehicle that it must stop at the stop line and not move past.

 If "true", the vehicles on this specific connecting maneuver have to stop on the stop-line and not to enter the collision area

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
WaitOnStopline ::= BOOLEAN
```

### <a name="ZoneLength"></a>ZoneLength
This DE is used to provide an estimated distance from the stop bar, along the lane
 centerline back in the lane to which it pertains. It is used in various ways to relate this distance value. When used with
 clearance zones, it represents the point at which the driver can successfully execute the connection maneuver. It is used
 in the Clearance Maneuver Assist data frame to relate dynamic data about the lane. It is also used to relate the distance
 from the stop bar to the rear edge of any queue. It is further used within the context of a vehicle's traveling speed to
 advise on preferred dynamic approach speeds.

 0 = unknown,
 The value 10000 to be used for Distances >=10000 m (e.g. from known point to another point along a
 known path, often against traffic flow direction when used for measuring queues)

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _meter_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
ZoneLength ::= INTEGER (0..10000)
```



## References:
 1. [ISO TS 19091]: "Intelligent transport systems - Cooperative ITS - Using V2I and I2V communications for applications related to signalized intersections".
 2. [SAE J2735]: "SURFACE VEHICLE STANDARD - V2X Communications Message Set Dictionary"
 3. [OCIT]: "OCIT Developer Group. https://ocit.org"
Thomas Ritter's avatar
Thomas Ritter committed


# <a name="ETSI-ITS-DSRC-REGION"></a>ASN.1 module ETSI-ITS-DSRC-REGION
OID: _{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts103301 (103301) dsrc (6) region (1) major-version-2 (2) minor-version-1 (1) }_
Thomas Ritter's avatar
Thomas Ritter committed
draft 001 of the ETSI-ITS-DSRC-REGION module for TS 103 301 V2.2.1 integrating:
 initial revision based on ASN.1 files of [ISO TS 19091] and [SAE J2735]

## Imports:
* **[ETSI-ITS-DSRC](ETSI-ITS-DSRC.md)** *{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts103301 (103301) dsrc (6) major-version-2 (2) } WITH SUCCESSORS*<br/>
* **[ETSI-ITS-DSRC-AddGrpC](ETSI-ITS-DSRC-AddGrpC.md)** *{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts103301 (103301) dsrc (6) addgrpc (0) major-version-2 (2) } WITH SUCCESSORS*<br/>
Thomas Ritter's avatar
Thomas Ritter committed
## Data Elements:
### <a name="Reg-AdvisorySpeed"></a>Reg-AdvisorySpeed
```asn1
Reg-AdvisorySpeed	            REG-EXT-ID-AND-TYPE ::= { ... }
```

### <a name="Reg-ComputedLane"></a>Reg-ComputedLane
```asn1
Reg-ComputedLane	            REG-EXT-ID-AND-TYPE ::= { ... }
```

### <a name="Reg-ConnectionManeuverAssist"></a>Reg-ConnectionManeuverAssist
```asn1
Reg-ConnectionManeuverAssist	REG-EXT-ID-AND-TYPE ::= {
	{ConnectionManeuverAssist-addGrpC  IDENTIFIED BY addGrpC},
	...
}
```

### <a name="Reg-GenericLane"></a>Reg-GenericLane
```asn1
Reg-GenericLane	                REG-EXT-ID-AND-TYPE ::= {
	{ConnectionTrajectory-addGrpC	IDENTIFIED BY addGrpC} ,
	...
}
```

### <a name="Reg-IntersectionGeometry"></a>Reg-IntersectionGeometry
```asn1
Reg-IntersectionGeometry  	    REG-EXT-ID-AND-TYPE ::= { ... }
```

### <a name="Reg-IntersectionState"></a>Reg-IntersectionState
```asn1
Reg-IntersectionState           REG-EXT-ID-AND-TYPE ::= {
	{IntersectionState-addGrpC IDENTIFIED BY addGrpC},
	...
}
```

### <a name="Reg-LaneAttributes"></a>Reg-LaneAttributes
```asn1
Reg-LaneAttributes	            REG-EXT-ID-AND-TYPE ::= {
   {LaneAttributes-addGrpC IDENTIFIED BY addGrpC} ,
   ...
}
Reg-LaneDataAttribute           REG-EXT-ID-AND-TYPE ::= { ... }
```

### <a name="Reg-MapData"></a>Reg-MapData
```asn1
Reg-MapData	                    REG-EXT-ID-AND-TYPE ::= {
	{MapData-addGrpC  IDENTIFIED BY addGrpC},
	...
}
```

### <a name="Reg-MovementEvent"></a>Reg-MovementEvent
```asn1
Reg-MovementEvent	            REG-EXT-ID-AND-TYPE ::= {
   {MovementEvent-addGrpC IDENTIFIED BY addGrpC} ,
   ...
}
Reg-MovementState               REG-EXT-ID-AND-TYPE ::= { ... }
```

### <a name="Reg-NodeAttributeSetXY"></a>Reg-NodeAttributeSetXY
```asn1
Reg-NodeAttributeSetXY          REG-EXT-ID-AND-TYPE ::= {
	{NodeAttributeSet-addGrpC   IDENTIFIED BY addGrpC},
	...
}
```

### <a name="Reg-NodeOffsetPointXY"></a>Reg-NodeOffsetPointXY
```asn1
Reg-NodeOffsetPointXY	        REG-EXT-ID-AND-TYPE ::= { ... }
```

### <a name="Reg-Position3D"></a>Reg-Position3D
```asn1
Reg-Position3D	                REG-EXT-ID-AND-TYPE ::= {
	{Position3D-addGrpC  IDENTIFIED BY addGrpC} ,
	...
}
```

### <a name="Reg-RequestorDescription"></a>Reg-RequestorDescription
```asn1
Reg-RequestorDescription        REG-EXT-ID-AND-TYPE ::= {
   { RequestorDescription-addGrpC IDENTIFIED BY addGrpC} ,
   ...
}
```

### <a name="Reg-RequestorType"></a>Reg-RequestorType
```asn1
Reg-RequestorType	            REG-EXT-ID-AND-TYPE ::= { ... }
```

### <a name="Reg-RestrictionUserType"></a>Reg-RestrictionUserType
```asn1
Reg-RestrictionUserType	        REG-EXT-ID-AND-TYPE ::= {
  {RestrictionUserType-addGrpC IDENTIFIED BY addGrpC} ,
  ...
}
```

### <a name="Reg-RoadSegment"></a>Reg-RoadSegment
```asn1
Reg-RoadSegment	                REG-EXT-ID-AND-TYPE ::= { ... }
```

### <a name="Reg-RTCMcorrections"></a>Reg-RTCMcorrections
```asn1
Reg-RTCMcorrections             REG-EXT-ID-AND-TYPE ::= { ... }
```

### <a name="Reg-SignalControlZone"></a>Reg-SignalControlZone
```asn1
Reg-SignalControlZone           REG-EXT-ID-AND-TYPE ::= { ... }
```

### <a name="Reg-SignalRequest"></a>Reg-SignalRequest
```asn1
Reg-SignalRequest               REG-EXT-ID-AND-TYPE ::= { ... }
```

### <a name="Reg-SignalRequestMessage"></a>Reg-SignalRequestMessage
```asn1
Reg-SignalRequestMessage        REG-EXT-ID-AND-TYPE ::= { ... }
```

### <a name="Reg-SignalRequestPackage"></a>Reg-SignalRequestPackage
```asn1
Reg-SignalRequestPackage        REG-EXT-ID-AND-TYPE ::= { ... }
```

### <a name="Reg-SignalStatus"></a>Reg-SignalStatus
```asn1
Reg-SignalStatus	            REG-EXT-ID-AND-TYPE ::= { ... }
```

### <a name="Reg-SignalStatusMessage"></a>Reg-SignalStatusMessage
```asn1
Reg-SignalStatusMessage	        REG-EXT-ID-AND-TYPE ::= { ... }
```

### <a name="Reg-SignalStatusPackage"></a>Reg-SignalStatusPackage
```asn1
Reg-SignalStatusPackage	        REG-EXT-ID-AND-TYPE ::= {
	{ SignalStatusPackage-addGrpC IDENTIFIED BY addGrpC },
	...
}
```

### <a name="Reg-SPAT"></a>Reg-SPAT
```asn1
Reg-SPAT	                    REG-EXT-ID-AND-TYPE ::= { ... }
```



# <a name="ETSI-ITS-DSRC-AddGrpC"></a>ASN.1 module ETSI-ITS-DSRC-AddGrpC
OID: _{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts103301 (103301) dsrc (6) addgrpc (0) major-version-2 (2) minor-version-1 (1) }_
Thomas Ritter's avatar
Thomas Ritter committed
draft 001 of the ETSI-ITS-DSRC-AddGrpC module for TS 103 301 V2.2.1 integrating:
 initial revision based on ASN.1 files of [ISO TS 19091] and [SAE J2735]

## Imports:
* **[ETSI-ITS-DSRC](ETSI-ITS-DSRC.md)** *{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts103301 (103301) dsrc (6) major-version-2 (2) minor-version-1 (1) } WITH SUCCESSORS*<br/>
Thomas Ritter's avatar
Thomas Ritter committed
* **[ETSI-ITS-CDD](ETSI-ITS-CDD.md)** *{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-4 (4) minor-version-1 (1) } WITH SUCCESSORS*<br/>
## Data Elements:
### <a name="ConnectionManeuverAssist-addGrpC"></a>ConnectionManeuverAssist-addGrpC
This DF adds positioning support from the infrastructure to the vehicle.
Thomas Ritter's avatar
Thomas Ritter committed

* _itsStationPosition_ of type [**ItsStationPositionList**](#ItsStationPositionList)  OPTIONAL<br>
* itsStationPositions<br>
  defines a list of ITS stations (e.g. vehicles) and their corresponding position on
                               the driving lane as defined in the lane topology of the MapData message or the GNSS position
                               deviation of the ITS Station from the high precision reference position in X/Y coordinates. It
                               enables accurate, real-time positioning support to the moving ITS entities by the infrastructure.*


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
ConnectionManeuverAssist-addGrpC ::=	SEQUENCE {
  itsStationPosition ItsStationPositionList OPTIONAL,
  ...
}
```

### <a name="ConnectionTrajectory-addGrpC"></a>ConnectionTrajectory-addGrpC
This DF defines the trajectory for travelling through the conflict area of an intersection and connects 
 e.g an ingress with an egress lane. The trajectory is defined by two or more nodes. 
 The starting node overlaps e.g. with the node of the ingress lane towards the
Thomas Ritter's avatar
Thomas Ritter committed
 conflict zone. The ending node overlaps e.g. with the first node of the connected egress lane. 
 See the example in clause [ISO TS 19091] G.8.2.5.

* _nodes_ of type [**NodeSetXY**](ETSI-ITS-DSRC.md#NodeSetXY) <br>
  defines a list of nodes for the trajectory. It defines e.g. a geometric trajectory from an ingressing
                 to a connected egressing lane and the X/Y position value of the first node of the trajectory is the same as
                 the node of the ingress lane. The X/Y position of the last node is the same as the X/Y position of the first
                 node of the egressing lane.

* _connectionID_ of type [**LaneConnectionID**](ETSI-ITS-DSRC.md#LaneConnectionID) <br>
  defines the identifier of an allowed `maneuver` (e.g. ingress / egress relation). 
                 A generic Lane offers one or more allowed `maneuvers`, therefore the trajectory is reference to the related `maneuver`.
Thomas Ritter's avatar
Thomas Ritter committed


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;[**Reg-GenericLane**](#Reg-GenericLane) allows providing up to 4 connecting trajectories. In case a lane has more than 4 connecting trajectories,
Thomas Ritter's avatar
Thomas Ritter committed
 priority should be given to connecting trajectories of motorized traffic and complex manoeuvres.
>>>

```asn1
ConnectionTrajectory-addGrpC ::= SEQUENCE {
  nodes         NodeSetXY,
  connectionID  LaneConnectionID,
  ...
}
```

### <a name="IntersectionState-addGrpC"></a>IntersectionState-addGrpC
This DF defines a list of prioritization responses e.g. public transport acceleration.
Thomas Ritter's avatar
Thomas Ritter committed
 The signal prioritization (e.g. public transport) procedure in this profile follows two strategies.
 - For simple prioritization requests, the CAM/SPAT messages are used. 
   This allows the migration of old legal systems towards C-ITS.
Thomas Ritter's avatar
Thomas Ritter committed
   In this case, the CAM message is used to trigger the request towards the traffic light controller. 
   The traffic light controller checks the request and broadcasts the status for the priority request with this DF (see [ISO TS 19091] G.5.1.9).
Thomas Ritter's avatar
Thomas Ritter committed
 - For more complex signal requests, the SignalRequestMessage/SignalStatusMessage messages are to be used.

* _activePrioritizations_ of type [**PrioritizationResponseList**](#PrioritizationResponseList) 	OPTIONAL<br>
  list of Prioritizations.


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
IntersectionState-addGrpC ::=	SEQUENCE {
  activePrioritizations  PrioritizationResponseList	OPTIONAL,
  ...
}
```

### <a name="LaneAttributes-addGrpC"></a>LaneAttributes-addGrpC
Lanes may have limitations regarding vehicle height (e.g. due to a tunnel) and vehicle weight (e.g. due to a bridge).
Thomas Ritter's avatar
Thomas Ritter committed

* _maxVehicleHeight_ of type [**VehicleHeight**](ETSI-ITS-DSRC.md#VehicleHeight)  OPTIONAL<br>
  maximum allowed vehicle height

* _maxVehicleWeight_ of type [**VehicleMass**](ETSI-ITS-CDD.md#VehicleMass)    OPTIONAL<br>
  maximum allowed vehicle mass


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
LaneAttributes-addGrpC ::= SEQUENCE {
  maxVehicleHeight  VehicleHeight OPTIONAL,
  maxVehicleWeight  VehicleMass   OPTIONAL,
  ...
}
```

### <a name="MapData-addGrpC"></a>MapData-addGrpC
This DF defines a list of three-dimensional positions of signal heads in an intersection. 
Thomas Ritter's avatar
Thomas Ritter committed
 It enables vehicles to identify the signal head location for optical evaluation of the traffic light. 
 Combined with the SPAT/MapData messages, it enables e.g. driving vehicles to enhance safety decision in critical situations.

* _signalHeadLocations_ of type [**SignalHeadLocationList**](#SignalHeadLocationList) 	OPTIONAL<br>
  list of geo positions


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
MapData-addGrpC ::=	SEQUENCE {
  signalHeadLocations  SignalHeadLocationList	OPTIONAL,
  ...
}
```

### <a name="MovementEvent-addGrpC"></a>MovementEvent-addGrpC
Priority and preemption have a considerable impact to the timing parameters in the SPAT message (eventState).
 User acceptance is expected to increase if the reason for sudden changes in timing parameters is communicated to them.

* _stateChangeReason_ of type [**ExceptionalCondition**](#ExceptionalCondition)  OPTIONAL<br>
  reason code


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
MovementEvent-addGrpC ::= SEQUENCE {
  stateChangeReason  ExceptionalCondition OPTIONAL,
  ...
}
```

### <a name="NodeAttributeSet-addGrpC"></a>NodeAttributeSet-addGrpC
This DF defines additional attributes to support public transport and to enable a simple way of defining lane links.
Thomas Ritter's avatar
Thomas Ritter committed

* _ptvRequest_ of type [**PtvRequestType**](#PtvRequestType)   OPTIONAL<br>
  defines control types attached to a node on a lane used by public transport for triggering
                      the transmission of messages (e.g. prioritization request). It includes control points for public transport prioritization. 
                      These control points are currently implemented by legacy systems using hardware sensors mounted on the roadside.

* _nodeLink_ of type [**NodeLink**](#NodeLink)         OPTIONAL<br>
  defines a link to one or to a set of another node/lane from this node. The nodeLink allows to set a link between specific nodes 
                      of generic lanes or trajectories. This supports e.g. lane merging/diverging situations ([ISO TS 19091] G.8.2.7) and the linking of trajectories 
                      in the conflict zone to lanes (see example [ISO TS 19091] G.8.2.5).

* _node_ of type [**Node**](#Node)             OPTIONAL<br>
  defines an identifier of this node.


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
NodeAttributeSet-addGrpC  ::=	SEQUENCE {
  ptvRequest  PtvRequestType  OPTIONAL,
  nodeLink    NodeLink        OPTIONAL,
  node        Node            OPTIONAL,
  ...
}
```

### <a name="Position3D-addGrpC"></a>Position3D-addGrpC
This DF includes the altitude data element defined in the common data dictionary [ETSI CDD].
Thomas Ritter's avatar
Thomas Ritter committed

* _altitude_ of type [**Altitude**](ETSI-ITS-CDD.md#Altitude) <br>
* elevation<br>
  the data element is replaced by the ETSI `altitude` data element using the regional extension. 
                     The `altitude` data element is defined in Position3D-addGrpC of this profile.
                     Position3D-addGrpC extends the [**Position3D**](#Position3D) using the regional extension framework.
Thomas Ritter's avatar
Thomas Ritter committed


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
Position3D-addGrpC ::=	SEQUENCE {
  altitude  Altitude,
  ...
}
```

### <a name="RestrictionUserType-addGrpC"></a>RestrictionUserType-addGrpC
This DF defines the driving restriction based on toxic emission type. 
 The meaning of the word `restriction` is ambiguous as it may have a double interpretation, being:
Thomas Ritter's avatar
Thomas Ritter committed
  - only these vehicles are allowed OR 
  - these vehicles are not allowed and all others are. 
 The former is what is intended by the base standard.

* _emission_ of type [**EmissionType**](#EmissionType)  OPTIONAL<br>
  restriction baesed on emission.

* _fuel_ of type [**FuelType**](ETSI-ITS-DSRC.md#FuelType)      OPTIONAL<br>
  restriction baesed on fuel.


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RestrictionUserType-addGrpC ::=	SEQUENCE {
  emission  EmissionType OPTIONAL,
  fuel      FuelType     OPTIONAL,
  ...
}
```

### <a name="RequestorDescription-addGrpC"></a>RequestorDescription-addGrpC
Some road authorities like to give priority to vehicles based on the type of fuel they use. In addition,
 electric vehicles may receive priority based on their battery status.

* _fuel_ of type [**FuelType**](ETSI-ITS-DSRC.md#FuelType)       OPTIONAL<br>
  fuel used by vehicle.

* _batteryStatus_ of type [**BatteryStatus**](#BatteryStatus)  OPTIONAL<br>
  current batter status of vehicle.


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RequestorDescription-addGrpC ::= SEQUENCE {
  fuel           FuelType      OPTIONAL,
  batteryStatus  BatteryStatus OPTIONAL,
  ...
}
```

### <a name="SignalStatusPackage-addGrpC"></a>SignalStatusPackage-addGrpC
The traffic control centre (TCC) may advice a public transport vehicle (e.g. bus) to synchronize his travel time. 
 This may happen when, for example, two busses, due to special traffic conditions, are out of schedule. 
 The first might be too late, the second too fast. The consequence is that the second is driving
 just behind the first and is empty as all passengers are within the first one. To avoid this often-occurring
 situation, the TCC transmits time synchronization advices to the public transport vehicles using the
 signal status message.

* _synchToSchedule_ of type [**DeltaTime**](ETSI-ITS-DSRC.md#DeltaTime)       OPTIONAL<br>
  DeltaTime.

* _rejectedReason_ of type [**RejectedReason**](#RejectedReason)  OPTIONAL<br>
  RejectedReason.

@Note: The [**PrioritizationResponseStatus**](ETSI-ITS-DSRC.md#PrioritizationResponseStatus) provides optionally the reason for prioritization response rejection.
Thomas Ritter's avatar
Thomas Ritter committed

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SignalStatusPackage-addGrpC ::= SEQUENCE {
  synchToSchedule  DeltaTime      OPTIONAL,
  rejectedReason   RejectedReason OPTIONAL,
  ...
}
```

### <a name="ItsStationPosition"></a>ItsStationPosition
This DF is used to provide real-time positioning information feedback to a specific ITS station 
 (e.g. vehicle, pedestrian, bicycle) by infrastructure equipment.
  The position information includes, for example, the driving, crossing lane and/or the X/Y coordinates in relation to
 the reference position of the MapData. The `timeReference` indicates the time stamp of the the
Thomas Ritter's avatar
Thomas Ritter committed
 message (received from an ITS station) for which the positioning feedback has been computed.

* _stationID_ of type [**StationID**](ETSI-ITS-CDD.md#StationID) <br>
  unique identifier.

* _laneID_ of type [**LaneID**](ETSI-ITS-DSRC.md#LaneID)              OPTIONAL<br>
  LaneID.

* _nodeXY_ of type [**NodeOffsetPointXY**](ETSI-ITS-DSRC.md#NodeOffsetPointXY)   OPTIONAL<br>
  NodeOffsetPointXY.

* _timeReference_ of type [**TimeReference**](#TimeReference)       OPTIONAL<br>
  TimeReference.


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;The computation of the positioning feedback is out of focus of this standard.
>>>

```asn1
ItsStationPosition ::=	SEQUENCE {
  stationID      StationID,
  laneID         LaneID             OPTIONAL,
  nodeXY         NodeOffsetPointXY  OPTIONAL,
  timeReference  TimeReference      OPTIONAL,
  ...
}
```

### <a name="ItsStationPositionList"></a>ItsStationPositionList
```asn1
ItsStationPositionList ::=	SEQUENCE SIZE(1..5) OF ItsStationPosition
```

### <a name="Node"></a>Node
This DF is used to to identify a node of a lane (waypoint) by its `lane` and node identifier `id`. 

 The `intersectionID` is used if the referenced lane belongs to an adjacent intersection. If the node
 belongs to a connection trajectory ([ISO TS 19091] G.5.1.2) the `connectionID` is used.
Thomas Ritter's avatar
Thomas Ritter committed

* _id_ of type **INTEGER** <br>
  unique identifier.

* _lane_ of type [**LaneID**](ETSI-ITS-DSRC.md#LaneID)            OPTIONAL<br>
  identifier from lane.

* _connectionID_ of type [**LaneConnectionID**](ETSI-ITS-DSRC.md#LaneConnectionID)  OPTIONAL<br>
  identifier from connection.

* _intersectionID_ of type [**IntersectionID**](ETSI-ITS-DSRC.md#IntersectionID)    OPTIONAL<br>
  identifier from intersection.


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
Node ::= SEQUENCE {
  id              INTEGER,
  lane            LaneID           OPTIONAL,
  connectionID    LaneConnectionID OPTIONAL,
  intersectionID  IntersectionID   OPTIONAL,
  ...
}
```

### <a name="NodeLink"></a>NodeLink
```asn1
NodeLink ::= SEQUENCE SIZE (1..5) OF Node
```

### <a name="PrioritizationResponse"></a>PrioritizationResponse
This DF is used to provide the prioritization status response and the
Thomas Ritter's avatar
Thomas Ritter committed
 signal group identifier for a specific ITS station (e.g. vehicle).

* _stationID_ of type [**StationID**](ETSI-ITS-CDD.md#StationID) <br>
  StationID.

* _priorState_ of type [**PrioritizationResponseStatus**](ETSI-ITS-DSRC.md#PrioritizationResponseStatus) <br>
  PrioritizationResponseStatus.

* _signalGroup_ of type [**SignalGroupID**](ETSI-ITS-DSRC.md#SignalGroupID) <br>
  SignalGroupID.


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
PrioritizationResponse ::=	SEQUENCE {
  stationID    StationID,
  priorState   PrioritizationResponseStatus,
  signalGroup  SignalGroupID,
  ...
}
```

### <a name="PrioritizationResponseList"></a>PrioritizationResponseList
```asn1
PrioritizationResponseList ::=	SEQUENCE SIZE(1..10) OF PrioritizationResponse
```

### <a name="SignalHeadLocation"></a>SignalHeadLocation
This DF defines the XYZ position of a signal head within an intersection
Thomas Ritter's avatar
Thomas Ritter committed
 and indicates the related signal group identifier.

* _nodeXY_ of type [**NodeOffsetPointXY**](ETSI-ITS-DSRC.md#NodeOffsetPointXY) <br>
* _nodeZ_ of type [**DeltaAltitude**](ETSI-ITS-CDD.md#DeltaAltitude) <br>
* _signalGroupID_ of type [**SignalGroupID**](ETSI-ITS-DSRC.md#SignalGroupID) <br>

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
SignalHeadLocation ::=	SEQUENCE {
  nodeXY         NodeOffsetPointXY,
  nodeZ          DeltaAltitude,
  signalGroupID  SignalGroupID,
  ...
}
```

### <a name="SignalHeadLocationList"></a>SignalHeadLocationList
```asn1
SignalHeadLocationList ::=	SEQUENCE (SIZE(1..64)) OF	SignalHeadLocation
```

### <a name="BatteryStatus"></a>BatteryStatus
This DE defines an enumerated list of battery states.
Thomas Ritter's avatar
Thomas Ritter committed

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
BatteryStatus ::= ENUMERATED {
  unknown,
  critical,
  low,
  good,
  ...
}
```

### <a name="EmissionType"></a>EmissionType
This DE defines an enumerated list of toxic emission types for vehicles.
Thomas Ritter's avatar
Thomas Ritter committed

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
EmissionType ::= ENUMERATED {
  euro1,
  euro2,
  euro3,
  euro4,
  euro5,
  euro6,
  ...
}
```

### <a name="ExceptionalCondition"></a>ExceptionalCondition
This DE defines a list of reasons for sudden changes in
Thomas Ritter's avatar
Thomas Ritter committed
 eventState parameters, thereby offering a reason for extended waiting times.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
ExceptionalCondition ::= ENUMERATED {
  unknown,
  publicTransportPriority,
  emergencyVehiclePriority,
  trainPriority,
  bridgeOpen,
  vehicleHeight,
  weather,
  trafficJam,
  tunnelClosure,
  meteringActive,
  truckPriority,
  bicyclePlatoonPriority,
  vehiclePlatoonPriority,
  ...
}
```

### <a name="PtvRequestType"></a>PtvRequestType
This DE defines a list of activation requests used for C-ITS migration of legacy public 
 transport prioritization systems. 
 The activation points are used while approaching to an intersection.
Thomas Ritter's avatar
Thomas Ritter committed

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
PtvRequestType  ::= ENUMERATED {
  preRequest,
  mainRequest,
  doorCloseRequest,
  cancelRequest,
  emergencyRequest,
  ...
}
```

### <a name="RejectedReason"></a>RejectedReason
This DE defines a list of reasons for rejected priority requests.
Thomas Ritter's avatar
Thomas Ritter committed

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
RejectedReason ::= ENUMERATED {
  unknown,
  exceptionalCondition,
  maxWaitingTimeExceeded,
  ptPriorityDisabled,
  higherPTPriorityGranted,
  vehicleTrackingUnknown,
  ...
}
```

### <a name="TimeReference"></a>TimeReference
This DE defines a value in milliseconds in the current minute related to UTC time. 
 The range of 60 000 covers one minute (60 seconds * 1 000 milliseconds)
Thomas Ritter's avatar
Thomas Ritter committed

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
```asn1
TimeReference ::= INTEGER { oneMilliSec(1) } (0..60000)
```



## References:
 1. [ISO TS 19091]: "Intelligent transport systems - Cooperative ITS - Using V2I and I2V communications for applications related to signalized intersections".
 2. [SAE J2735]: "SURFACE VEHICLE STANDARD - V2X Communications Message Set Dictionary"