ETSI-ITS-DSRC.md 228 KB
Newer Older
ritterth's avatar
ritterth committed

    **Unit:** _hours_

    **Categories:** Infrastructure information 

    **Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
DHour ::= INTEGER (0..31)
```

### <a name="DMinute"></a>DMinute
ritterth's avatar
ritterth committed
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_
ritterth's avatar
ritterth committed
```asn1
DMinute ::= INTEGER (0..60)
```

### <a name="DMonth"></a>DMonth
ritterth's avatar
ritterth committed
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_
ritterth's avatar
ritterth committed
```asn1
DMonth ::= INTEGER (0..12)
```

### <a name="DOffset"></a>DOffset
ritterth's avatar
ritterth committed
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_
ritterth's avatar
ritterth committed
```asn1
DOffset ::= INTEGER (-840..840)
```

### <a name="DrivenLineOffsetLg"></a>DrivenLineOffsetLg
ritterth's avatar
ritterth committed
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_
ritterth's avatar
ritterth committed
```asn1
DrivenLineOffsetLg ::= INTEGER (-32767..32767)
```

### <a name="DrivenLineOffsetSm"></a>DrivenLineOffsetSm
ritterth's avatar
ritterth committed
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_
ritterth's avatar
ritterth committed
```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.
ritterth's avatar
ritterth committed

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _milliseconds_
ritterth's avatar
ritterth committed

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

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```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.
ritterth's avatar
ritterth committed

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _years_
ritterth's avatar
ritterth committed

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

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```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.
ritterth's avatar
ritterth committed

 Any elevation lower than -409.5 meters is represented as -4095.
ritterth's avatar
ritterth committed

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

&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.
>>>

ritterth's avatar
ritterth committed
```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)
Thomas Ritter's avatar
Thomas Ritter committed
 - `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)
ritterth's avatar
ritterth committed

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>
ritterth's avatar
ritterth committed

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

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

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

ritterth's avatar
ritterth committed
```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)
ritterth's avatar
ritterth committed
```

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

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

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```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
ritterth's avatar
ritterth committed

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>
ritterth's avatar
ritterth committed

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

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

### <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
ritterth's avatar
ritterth committed

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>
ritterth's avatar
ritterth committed

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

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

### <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.
ritterth's avatar
ritterth committed

 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.
ritterth's avatar
ritterth committed

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _0.0125 degrees_
ritterth's avatar
ritterth committed

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

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```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
ritterth's avatar
ritterth committed

&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
>>>

ritterth's avatar
ritterth committed
```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:
Thomas Ritter's avatar
Thomas Ritter committed
 - `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
Thomas Ritter's avatar
Thomas Ritter committed
 - `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
ritterth's avatar
ritterth committed

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>
ritterth's avatar
ritterth committed

&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.
>>>

ritterth's avatar
ritterth committed
```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
ritterth's avatar
ritterth 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>
ritterth's avatar
ritterth committed

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

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```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:
Thomas Ritter's avatar
Thomas Ritter committed
 - `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.
Thomas Ritter's avatar
Thomas Ritter committed
 -`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
ritterth's avatar
ritterth committed

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

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

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```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
ritterth's avatar
ritterth 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>
ritterth's avatar
ritterth committed

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

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```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*
ritterth's avatar
ritterth committed

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

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

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```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
ritterth's avatar
ritterth committed

Values:
* **sidewalk-RevocableLane** (0)<br>
* **bicyleUseAllowed** (1)<br>
* **isSidewalkFlyOverLane** (2)<br>
* **walkBikes** (3)<br>
ritterth's avatar
ritterth committed

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

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```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
ritterth's avatar
ritterth committed

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

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

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```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
ritterth's avatar
ritterth committed

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

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

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```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
ritterth's avatar
ritterth committed

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>
ritterth's avatar
ritterth committed

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

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```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.
ritterth's avatar
ritterth committed

&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.
>>>

ritterth's avatar
ritterth committed
```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
ritterth's avatar
ritterth committed

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

ritterth's avatar
ritterth committed
* **egressPath** (1)<br>
  travel from front of path to rear is allowed
ritterth's avatar
ritterth committed


&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.
>>>

ritterth's avatar
ritterth committed
```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.
ritterth's avatar
ritterth committed

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

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

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```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);
ritterth's avatar
ritterth committed

 If there are only two fragments, the fragment identification will be 21, 22.
ritterth's avatar
ritterth committed

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

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```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.
ritterth's avatar
ritterth committed

 @field `mixedContent`: two or more of the below types
ritterth's avatar
ritterth committed

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

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```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
ritterth's avatar
ritterth committed

 @units: cm
ritterth's avatar
ritterth committed

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

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```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)
```

ritterth's avatar
ritterth 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.
ritterth's avatar
ritterth committed

 The value `-180` shall be used to represent data is not available or unknown
ritterth's avatar
ritterth committed

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _1.5 degrees from north_
ritterth's avatar
ritterth committed

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

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```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).
ritterth's avatar
ritterth committed

 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.
ritterth's avatar
ritterth committed

 The value 527040 shall be used for invalid.
ritterth's avatar
ritterth committed

&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.
>>>

ritterth's avatar
ritterth committed
```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.
ritterth's avatar
ritterth committed

 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
ritterth's avatar
ritterth committed

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>
ritterth's avatar
ritterth committed

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

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```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.
ritterth's avatar
ritterth committed

 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.
ritterth's avatar
ritterth committed