14.5 Signals that apply to multiple roads
ASAM OpenDRIVE offers the possibility for one signal to apply to multiple roads.
This is achieved by defining the signal in one road using a <signal>
element, and referencing it from one or more other roads using <signalReference>
elements.
This is especially useful in junctions where many roads are close together and, for example, speed limit signs may need to apply to more than one of those close-together roads.
The <signalReference>
element shall include the longitudinal, @s attribute, and lateral, @t attribute, position on the road where the referenced signal should take effect.
The <signalReference>
element shall also include an @orientation attribute to specify whether the referenced signal applies to traffic flowing in the positive, negative, or both s-directions.
Similarly to <signal>
elements themselves, <signalReference>
elements may be supplemented with an <validity>
element for lane validity.
This makes it possible to include or exclude certain lanes from the signal’s validity range.
Elements in UML model
<signalReference>
element
In ASAM OpenDRIVE, a referenced signal is represented by the <signalReference>
element within the <signals>
element.
UML class: t_road_signals_signalReference XML tag: <signalReference> (Multiplicity: 0..*)
Refers to the same, that is, identical signal from multiple roads.
The referenced signals require a unique ID.
The <signalReference>
element consists of a main element and an optional lane validity element.
Name | Type | Use | Unit | Description |
---|---|---|---|---|
|
string |
required |
Unique ID of the referenced signal within the database |
|
|
required |
"+" = valid in positive s-direction |
||
|
required |
m |
s-coordinate |
|
|
double |
required |
m |
t-coordinate |

Figure 130 shows the UML model of the t_road_signals_signalReference element in the ASAM OpenDRIVE Signals class.
<validity>
element
In ASAM OpenDRIVE, lane validity is represented by the <validity>
element within the <signal>
or <signalReference>
element.
UML class: t_road_objects_object_laneValidity XML tag: <validity> (Multiplicity: 0..*)
Lane validities restrict signals and objects to specific lanes.
Name | Type | Use | Description |
---|---|---|---|
|
integer |
required |
Minimum ID of the lanes for which the object is valid |
|
integer |
required |
Maximum ID of the lanes for which the object is valid |
XML example
Rules
The following rules apply to referencing signals from multiple roads using the <signalReference>
element:
-
A lane
<validity>
element may be added for every<signalReference>
element.
-
asam.net:xodr:1.7.0:road.signal.reference.used_for_signals_only: Signal reference shall be used for signals only.
-
asam.net:xodr:1.7.0:road.signal.reference.specify_direction: The direction on the road for which the referenced signal is valid shall be specified for every
<signalReference>
element using the @orientation attribute.
-
The range given by all
<validity>
elements shall be a subset of the parent’s @orientation attribute: include::partial$rules/road/signal/reference/right_hand_traffic_lane_ids.adoc[].
-
asam.net:xodr:1.7.0:road.signal.reference.left_hand_traffic_lane_ids: For left-hand-traffic, @orientation="-" implies that the
<validity>
element shall only span negative lane ids, while @orientation="+" implies that the<validity>
element shall only span positive lane ids. If the given<validity>
elements span both, positive and negative lane ids, @orientation="none" shall be used.
-
asam.net:xodr:1.7.0:road.signal.reference.from_lower_equal_to: The value of the @fromLane attribute shall be lower than or equal to the value of the @toLane attribute.
Related topics