Elements of SituationRecord
A situation can consist of one or more parts. This could, for example, involve an accident, the closure of a lane, the resulting traffic jam, and a detour for through traffic. For each part, the situation contains a situationRecord derived specialization. Different types of ‘parts’ have different specializations and sub-specializations.
SituationRecord is an abstract class intended as a basis for detailed situation components. The structure is as follows:
Attributes
Attribuut | Type | Mandatory | Domain | Description |
---|---|---|---|---|
xsi:type | String | Yes | See specializations | The attribute xsi is used to specify the appropriate specialization |
id | String | Yes | See explanation | A unique identification per data provider over time |
version | String | Yes | >=1 | The applicable version of the situationRecord |
id
A situationRecord has a unique identification within the context of the situation over time. This means that a situation part receives an identification when it arises that has not been previously assigned to an active or already ended part of that situation. The situation part retains this identification until it ends. The identification always starts with the id of the situation followed by a '_' and an additional unique identification within the context of the situation.
Elements
Element | Type | Mandatory | Domain | Description |
---|---|---|---|---|
situationRecordCreationReference | String | No | N/A | Reference to a corresponding record in another data stream |
situationRecordCreationTime | DateTime | Yes | Date and time in UTC (Zulu notation) | The time in UTC that (the first version of) this part of the situation became active at the data provider |
situationRecordObservationTime | DateTime | No | Date and time in UTC (Zulu notation) | The time in UTC that (the first version of) this part of the situation was observed by the data provider |
situationRecordVersionTime | DateTime | Yes | Date and time in UTC (Zulu notation) | The time in UTC that the relevant version became active at the data provider |
situationRecordFirstSupplierVersionTime | DateTime | No | Date and time in UTC (Zulu notation) | The time in UTC that (the first version of) this part of the situation was recorded at the data provider |
probabilityOfOccurrence | ProbabilityOfOccurrenceEnum | Yes | certain, probable, riskOf | The likelihood that the situation part will occur, see also the explanation under Semantiek |
safetyRelatedMessage | Boolean | No | true, false | Indicates whether this SituationRecord indicates a safety-related traffic situation. At least all traffic situations that fall under Delegated Regulation (EU) No 886/2013 of the Commission are indicated |
source | Source | Yes | NVT | Description of the source of the situation part |
validity | Validity | Yes | NVT | Information about validity is included in the mandatory element validity |
impact | Impact | No | NVT | The impact element can indicate the influence this situation part has on (the use of/or road users on) the road |
cause | Cause | No | NVT | The cause element can be used to specify the cause(s) of a situation part |
generalPublicComment | Comment | No | NVT | This element can be used by the road authority to provide additional information about the situation part |
urlLink | UrlLink | No | NVT | This element can be used by the road authority to provide additional information about the situation part |
locationReference | LocationReference | Yes | NVT | This element describes the location of the situation part |
Lifecycle management
Context
In DATEX II v3, lifecycle management is applied differently than before. A DATEX II v2.3 file consists of a d2LogicalModel element with a part exchange and a part payload, for example, the situationPublication. Lifecycle management is applied per situationRecord.
In DATEX II v3, a messageContainer is sent with optionally three parts: payload, exchangeInformation, and informationManagement. Lifecycle management is applied via informationManagement. In informationManagement, situations and situation parts are closed or canceled. This applies to both individual situationRecords and the situation they are part of.
The sending of informationManagement messages is part of the ketenprotocol SB v3 and is also explained here.
Termination method
This means when an event is terminated, the following occurs:
- The final end time of the event is recorded in the validity part overallEndTime;
- The update of the situation and the situationRecord is sent within the situationPublication;
- Termination messages are included within informationManagement;
- This is sent to the receiver as a whole.
Example
<situationRecord id="RWS03_67836_1" version="2" xsi:type="Accident">
</situationRecord>
specializations
SituationRecord is the base class for a multi-layered structure of specializations.
First-level specializations
The specializations for situationRecord are indicated by the xsi attribute and can be:
Type | Description |
---|---|
GenericSituationElement | This type is not used in the Dutch Profile |
OperatorAction | The abstract type OperatorAction is used to describe events resulting from actions by (or on behalf of) the road operator |
ServiceInformation | The abstract type ServiceInformation is used to describe events related to services that can influence the behavior of motorists and thus the characteristics of the traffic flow |
TrafficElement | The abstract type TrafficElement is used as a framework for all events not caused by or on behalf of the road operator |
Second-level specializations
Type | Description | Origin |
---|---|---|
AbnormalTraffic | The type AbnormalTraffic is used to describe a traffic image that is busier than usual, such as a traffic jam | TrafficElement |
Accident | The type Accident is used to describe accident situations | TrafficElement |
Activity | The abstract type Activity is used as a framework for all activities and events that affect traffic flow | TrafficElement |
Conditions | The type Conditions is used as a framework for all events where external factors affect driving conditions | TrafficElement |
EquipmentOrSystemFault | The specialization EquipmentOrSystemFault is used for events where a traffic-related system, such as a traffic light, malfunctions | TrafficElement |
Obstruction | The abstract type Obstruction is used as a framework for events where traffic is hindered by a form of blockage | TrafficElement |
NetworkManagement | The abstract type NetworkManagement is used as a framework for all events initiated by an action of a road operator | OperatorAction |
RoadSideAssistance | This type is used to describe required or provided roadside assistance | OperatorAction |
Roadworks | The abstract type RoadWorks is used as a framework for all events involving roadworks, such as the construction or maintenance of the road network | OperatorAction |
ServiceDisruption | The specialization ServiceDisruption describes a disruption of normal services that affect traffic flow and safety | ServiceInformation |
TransitInformation | The specialization TransitInformation describes the availability of (public) transport services (as far as relevant for road users) and information related to departure times | ServiceInformation |
Third-Level Specializations
Type | Description | Origin |
---|---|---|
AnimalPresenceObstruction | The AnimalPresenceObstruction specialization is used for events where one or more animals create a blockade hindering traffic | Obstruction |
AuthorityOperation | The AuthorityOperation specialization is used for activities carried out by the police (which may impede traffic flow): accident investigation or police checks | Activity |
ConstructionWorks | The ConstructionWorks specialization is used for describing roadworks related to the construction or expansion of the road network | Roadworks |
DisturbanceActivity | The DisturbanceActivity specialization is used for (unplanned) disruptive events, often of a negative nature | Activity |
EnvironmentalObstruction | The EnvironmentalObstruction specialization is used for events where a natural cause creates a blockade hindering traffic | Obstruction |
GeneralInstructionOrMessageToRoadUsers | The GeneralInstructionOrMessageToRoadUsers specialization is used when attempting to influence the behavior of road users | NetworkManagement |
GeneralNetworkManagement | The GeneralNetworkManagement specialization is used for describing operator-driven dynamic traffic management | NetworkManagement |
GeneralObstruction | The GeneralObstruction specialization is used for events where a blockade is hindering traffic | Obstruction |
InfrastructureDamageObstruction | The InfrastructureDamageObstruction specialization is used for events where infrastructure damage in, on, or above the road creates a blockade hindering traffic | Obstruction |
MaintenanceWorks | The MaintenanceWorks specialization is used for describing roadworks related to the maintenance of the road network | Roadworks |
PublicEvent | The PublicEvent specialization is used for (planned) events expected to attract large crowds, potentially affecting traffic | Activity |
ReroutingManagement | The ReroutingManagement specialization is used to describe traffic rerouting | NetworkManagement |
RoadOrCarriagewayOrLaneManagement | The RoadOrCarriagewayOrLaneManagement specialization is used to describe lane or road restrictions or openings | NetworkManagement |
SpeedManagement | The SpeedManagement specialization is used to describe speed restrictions | NetworkManagement |
VehicleObstruction | The VehicleObstruction specialization is used for events where a vehicle (or vehicle damage) creates a blockade hindering traffic | Obstruction |