11.2 Lane groups
For easier navigation through an ASAM OpenDRIVE road description, the lanes within a lane section are grouped into left, center, and right lanes.

Figure 60 shows the lane grouping.
Within these groups, the lanes are described by <lane>
elements.
Because lane numbers descend in a negative t-direction and ascend in a positive t-direction, applications can derive the direction of a lane from the lane id given in the @id attribute of a <lane>
element, unless the lane is bi-directional (specified by @direction=both).
Elements in UML model
<left>
element
In ASAM OpenDRIVE, left lane groups are represented by the <left>
element within the <laneSection>
element.
UML class: t_road_lanes_laneSection_left XML tag: <left> (Multiplicity: 0..1)
Contains all lanes left to the center lane.
<lane>
element
In ASAM OpenDRIVE, lanes in the left lane group are represented by <lane>
elements within the <left>
element.
UML class: t_road_lanes_laneSection_left_lane XML tag: <lane> (Multiplicity: 1..*)
Left lanes numbered with positive IDs in ascending order from center lane to left border.
Name | Type | Use | Introduced | Description |
---|---|---|---|---|
|
optional |
1.8.0 |
If true, lane can be used also by a neighboring lane. Advisory lane has priority, for example a bike lane, that can also be used by cars. If not specified, default value is none. |
|
|
optional |
1.8.0 |
If not specified, direction is determined by the combination of |
|
|
optional |
1.8.0 |
If true, lane direction can be changed dynamically by the scenario during the simulation. If not specified, default boolean value is false. |
|
|
optional |
1.8.0 |
If true, lane type can be changed dynamically by the scenario during the simulation. Typical example is a stop lane that can be changed by VMS boards to a driving lane. If not specified, default boolean value is false. |
|
|
positiveInteger |
required |
ID of the lane |
|
|
optional |
"true" = keep lane on level, that is, do not apply superelevation; |
||
|
optional |
1.8.0 |
If true, lane is under construction. |
|
|
required |
Type of the lane |
<center>
element
In ASAM OpenDRIVE, center lane groups are represented by the <center>
element within the <laneSection>
element.
UML class: t_road_lanes_laneSection_center XML tag: <center> (Multiplicity: 1)
Contains the center lane, which must be defined for all roads.
<lane>
element
In ASAM OpenDRIVE, lanes in the center lane group are represented by <lane>
elements within the <center>
element.
UML class: t_road_lanes_laneSection_center_lane XML tag: <lane> (Multiplicity: 1)
Center lane element with ID zero. Has no width attribute. Mainly used for road marks.
Name | Type | Use | Deprecated | Description |
---|---|---|---|---|
|
integer |
required |
ID of the lane |
|
|
optional |
1.8.0 |
||
|
optional |
1.8.0 |
<right>
element
In ASAM OpenDRIVE, right lane groups are represented by the <right>
element within the <laneSection>
element.
UML class: t_road_lanes_laneSection_right XML tag: <right> (Multiplicity: 0..1)
Contains all lanes right to the center lane.
<lane>
element
In ASAM OpenDRIVE, lanes in the right lane group are represented by <lane>
elements within the <right>
element.
UML class: t_road_lanes_laneSection_right_lane XML tag: <lane> (Multiplicity: 1..*)
Right lanes numbered with negative IDs in descending order from center lane to right border.
Name | Type | Use | Introduced | Description |
---|---|---|---|---|
|
optional |
1.8.0 |
If true, lane can be used also by a neighboring lane. Advisory lane has priority, for example a bike lane, that can also be used by cars. If not specified, default value is none. |
|
|
optional |
1.8.0 |
If not specified, direction is determined by the combination of |
|
|
optional |
1.8.0 |
If true, lane direction can be changed dynamically by the scenario during the simulation. If not specified, default boolean value is false. |
|
|
optional |
1.8.0 |
If true, lane type can be changed dynamically by the scenario during the simulation. Typical example is a stop lane that can be changed by VMS boards to a driving lane. If not specified, default boolean value is false. |
|
|
negativeInteger |
required |
ID of the lane |
|
|
optional |
"true" = keep lane on level, that is, do not apply superelevation; |
||
|
optional |
1.8.0 |
If true, lane is under construction. |
|
|
required |
Type of the lane |
Rules
The following rules apply to lane grouping:
-
asam.net:xodr:1.4.0:road.lane.lanes_numbered_correctly: Lanes with positive ID run on the left side of the center lane, while lanes with negative ID run on the right side of the center lane.
-
In order to be drivable, each lane section should contain at least one <right> or <left> element.
-
asam.net:xodr:1.4.0:road.lane.center_elem_definition: One
<center>
element shall be defined for each s-coordinate.
-
asam.net:xodr:1.4.0:road.lane.lane_listing: For better orientation, lanes should be listed from left to right, that is with descending ID.
-
@direction="reverse" shall not be used to change from right-hand traffic to left-hand traffic and vice versa.
Related topics
11.2.1 Driving direction
In ASAM OpenDRIVE, the driving direction is specified by a combination of different elements and attributes.
For a road with the @rule="RHT" attribute, the default driving direction would be in positive direction of the road reference line for all <right>
element lanes with negative @id attribute and against the road reference line for lanes in the <left>
element with positive @id attribute.
If the road has the @rule="LHT" attribute, the default driving direction would be in positive direction of the road reference line for all <left>
element lanes with positive @id attribute and against the road reference line for all <right>
element lanes with negative @id attribute.
This can be influenced with the @direction attribute individually for each lane.
If the @direction attribute is not specified or has a value of @direction="standard", the default driving direction is not changed.
The @direction="reversed" attribute reverses the default driving direction.
The @direction="both" attribute replaces the deprecated lane @type="bidirectional" and allows both driving directions.
In addition, this can be changed during the simulation if @dynamicLaneDirection="true" attribute is set, for example by a VMS board.
Related topics