14.8 Signal semantics
Signals are uniquely defined by the @country, @year, @type, and @subtype attributes. These attributes specify the visualization of the signals because the visualization is different for each country. However, the behavior of the traffic participant is often identical independent of the country, for example, for a stop sign. A simulation engine requires rules specified for all signs for all countries.
The introduction of signal semantics reduces the effort to specify the rules for all signs for all countries. For signal semantics the focus is on the behavior of traffic. Functionality for signal semantics cannot be used for visualization.
As traffic behavior is very complex and also depending on other ASAM OpenDRIVE definitions, for example, the lane width, junctions, and road mark, signal semantics are reduced to a very limited scope.
The scope of signal semantics in ASAM OpenDRIVE is limited to traffic behavior that is specified just by signals in ASAM OpenDRIVE.
Each traffic behavior is specified by a specific element, for example, by the <priority>
element that specifies priority regulations.
Traffic behavior | Description | Example | Link to attribute | Usage in/for <defaultRegulations> in <header> |
Usage in/for <signal> or <sign> |
---|---|---|---|---|---|
<lane> |
Specifies lane regulations. |
Sign that defines cars are not allowed to overtake. |
not recommended |
recommended |
|
<parking> |
Specifies parking regulations. |
Sign that defines that parking is forbidden. |
no attributes |
not allowed |
recommended |
<priority> |
Specifies priority regulations. |
Stop sign |
recommend for default junction priority |
recommended |
|
<prohibited> |
Specifies that certain types of traffic participants are not allowed to enter. Signal semantics for traffic participants in ASAM OpenDRIVE are currently not defined because traffic participants are not harmonized for all standards. |
No pedestrians sign |
no attributes |
recommend for default junction priority |
recommended |
<routing> |
Specifies routing information. |
London |
no attributes |
not allowed |
recommended |
<speed> |
Specifies speed regulations. |
Speed limit sign |
recommended |
recommended |
|
<streetname> |
Specifies the name of a street. |
High street |
no attributes |
not allowed |
recommended |
<tourist> |
Specifies tourist information. |
Science museum |
no attributes |
not allowed |
recommended |
<warning> |
Specifies warnings for traffic participant. |
Deer might cross the road |
no attributes |
not allowed |
recommended |
<supplementaryAllows> |
This signal semantic has no meaning on its own. It specifies the type of the traffic participant an exception is made for. Signal semantics for traffic participants in ASAM OpenDRIVE are currently not specified because traffic participants are not harmonized for all standards. |
Except bicycles sign |
no attributes |
not allowed |
recommended |
<supplementaryDistance> |
This signal semantic has no meaning on its own. It specifies the distance after a sign becomes valid or the range in which the sign is valid. |
200m sign |
not allowed |
recommended |
|
<supplementaryEnvironment> |
This signal semantic has no meaning on its own. It specifies under which environmental conditions a sign is valid. |
Rain sign |
not allowed |
recommended |
|
<supplementaryExplanatory> |
This signal semantic has no meaning on its own. It specifies explanations for a sign. |
Emission reduction |
no attributes |
not allowed |
recommended |
<supplementaryProhibits> |
This signal semantic has no meaning on its own. It specifies the type of the traffic participant a restriction is made for. Signal semantics for traffic participants in ASAM OpenDRIVE are currently not specified because traffic participants are not harmonized for all standards. |
Truck Symbol |
no attributes |
not allowed |
recommended |
<supplementaryTime> |
This signal semantic has no meaning on its own. It specifies the time or date a sign is valid. |
9:00 - 18:00 |
not allowed |
recommended |
Elements in UML model
<semantics>
element
UML class: t_signals_semantics XML tag: <semantics> (Multiplicity: 0..1) Introduced: 1.8.0
Semantics are limited to traffic behavior that is specified just by signals in ASAM OpenDRIVE. Each traffic behavior is specified by a specific element.

Figure 136 shows the UML class diagram of the ASAM OpenDRIVE Semantics class.
<lane>
element
UML class: t_signals_semantics_lane XML tag: <lane> (Multiplicity: 0..*) Introduced: 1.8.0
Specifies lane regulations.
Name | Type | Use | Introduced |
---|---|---|---|
|
required |
1.8.0 |
<parking>
element
UML class: t_signals_semantics_parking XML tag: <parking> (Multiplicity: 0..*) Introduced: 1.8.0
Specifies parking regulations.
<priority>
element
UML class: t_signals_semantics_priority XML tag: <priority> (Multiplicity: 0..*) Introduced: 1.8.0
Specifies priority regulations.
Name | Type | Use | Introduced |
---|---|---|---|
|
required |
1.8.0 |
<prohibited>
element
UML class: t_signals_semantics_prohibited XML tag: <prohibited> (Multiplicity: 0..*) Introduced: 1.8.0
Specifies that certain types of traffic participants are not allowed to enter. Signal semantics for traffic participants in ASAM OpenDRIVE are currently not defined because traffic participants are not harmonized for all standards.
<routing>
element
UML class: t_signals_semantics_routing XML tag: <routing> (Multiplicity: 0..*) Introduced: 1.8.0
Specifies routing information.
<speed>
element
UML class: t_signals_semantics_speed XML tag: <speed> (Multiplicity: 0..*) Introduced: 1.8.0
Specifies speed regulations.
Name | Type | Use | Introduced |
---|---|---|---|
|
required |
1.8.0 |
|
|
required |
||
|
double |
required |
<streetname>
element
UML class: t_signals_semantics_streetname XML tag: <streetname> (Multiplicity: 0..*) Introduced: 1.8.0
Specifies the name of a street.
<tourist>
element
UML class: t_signals_semantics_tourist XML tag: <tourist> (Multiplicity: 0..*) Introduced: 1.8.0
Specifies tourist information.
<warning>
element
UML class: t_signals_semantics_warning XML tag: <warning> (Multiplicity: 0..*) Introduced: 1.8.0
Specifies warnings for traffic participant.
<supplementaryAllows>
element
UML class: t_signals_semantics_supplementaryAllows XML tag: <supplementaryAllows> (Multiplicity: 0..*) Introduced: 1.8.0
This signal semantic has no meaning on its own. It specifies the type of the traffic participant an exception is made for. Signal semantics for traffic participants in ASAM OpenDRIVE are currently not specified because traffic participants are not harmonized for all standards.
<supplementaryDistance>
element
UML class: t_signals_semantics_supplementaryDistance XML tag: <supplementaryDistance> (Multiplicity: 0..*) Introduced: 1.8.0
This signal semantic has no meaning on its own. It specifies the distance after a sign becomes valid or the range in which the sign is valid.
Name | Type | Use | Introduced |
---|---|---|---|
|
required |
1.8.0 |
|
|
required |
1.8.0 |
|
|
double |
required |
1.8.0 |
<supplementaryEnvironment>
element
UML class: t_signals_semantics_supplementaryEnvironment XML tag: <supplementaryEnvironment> (Multiplicity: 0..*) Introduced: 1.8.0
This signal semantic has no meaning on its own. It specifies under which environmental conditions a sign is valid.
Name | Type | Use | Introduced |
---|---|---|---|
|
required |
1.8.0 |
<supplementaryExplanatory>
element
UML class: t_signals_semantics_supplementaryExplanatory XML tag: <supplementaryExplanatory> (Multiplicity: 0..*) Introduced: 1.8.0
This signal semantic has no meaning on its own. It specifies explanations for a sign.
<supplementaryProhibits>
element
UML class: t_signals_semantics_supplementaryProhibits XML tag: <supplementaryProhibits> (Multiplicity: 0..*) Introduced: 1.8.0
This signal semantic has no meaning on its own. It specifies the type of the traffic participant a restriction is made for. Signal semantics for traffic participants in ASAM OpenDRIVE are currently not specified because traffic participants are not harmonized for all standards.
<supplementaryTime>
element
UML class: t_signals_semantics_supplementaryTime XML tag: <supplementaryTime> (Multiplicity: 0..*) Introduced: 1.8.0
This signal semantic has no meaning on its own. It specifies the time or date a sign is valid.
Name | Type | Use | Introduced |
---|---|---|---|
|
required |
1.8.0 |
|
|
double |
required |
1.8.0 |
XML example
<signal s="4.0"
t="1.0"
id="1"
name="SpeedLimit60"
dynamic="no"
orientation="+"
zOffset="2.00"
country="DE"
countryRevision="2013"
type="274"
subtype="56"
value="60"
unit="km/h"
hOffset="0"
pitch="0"
roll="0"
height="0.76"
width="0.76">
<semantics>
<speed type="maximum" value="60" unit="km/h"/>
</semantics>
</signal>
Rules
-
Each
<signal>
element may have one ore more semantic elements. -
Signal semantics shall not be specified for signs if no category for the desired traffic behavior exists.
Related topics