SIRI-ET

SIRI-ET

The Service Interface for Real Time Information - Estimated Timetable

Version

Current version for SIRI-ET is:   v1.1  (last changed Jul 28, 2022)

Content

 

This document is part of the Norwegian SIRI Profile and describes datasets and elements used for exchanging continuous changes to planned data within the same operating day in the SIRI Estimated Timetable (ET) real-time format.

SIRI-ET is used to model the status of existing VehicleJourneys and to ensure that deviations from the planned data (for the same operating day) such as cancellations, additional departures, delays, detours and changes in stops, can be published on short notice. The data is linked to objects in the planned data by use of ID's, which ensures data quality.

Tables/rows marked in yellow indicates elements that may belong in a separate SIRI ET-profile for more sensitive data. 

Data requirements

Sending a ServiceDelivery of SIRI-ET data must be in accordance with this profile and the entire dataset should be contained within a single XML file.

When sending Estimated Timetable data, information should always contain all stops, that is all served EstimatedCalls when relevant RecordedCalls (and IsCompleteStopSequence = 'true')

It is permitted for client systems to send more than one EstimatedVehicleJourney per EstimatedTimetableDelivery, in order for real-time information to be conflated and be transferred as part of the same ServiceDeliveryNote that the profile does not present an exhaustive list of all real-time information technically possible to transfer via SIRI-ET, but it lays the foundation for which demands are placed on the datasets in order to meet the demands set by Håndbok N801.

 

The examples associated with this profile are meant to show practical implementations of specific use cases, and can contain supplementary, lack certain data fields, or contain optional data, compared to a full and complete dataset. See SIRI-ET#Components for closer descriptions of the data types, specifications and requirements on the unique elements of the SIRI-ET-data.

Components

EstimatedTimetableDelivery

 

EstimatedTimetableDelivery

A data type for representing information about time table changes for one or more VehicleJourneys on the same operating day.

EstimatedTimetableDelivery < ServiceDelivery

EstimatedTimetableDelivery < ServiceDelivery

 

Name

Type

Cardinality

Description

attribute

version

xsd:NMTOKEN

1: 1

Version ID for EstimatedTimetableDelivery.

element

ResponseTimestamp

xsd:dateTime

1: 1

Timestamp for when the dataset was created/published.

element

EstimatedJourneyVersionFrame

SIRI-ET#EstimatedJourneyVersionFrame

1: *

A container element for sending one or more Estimated Timetable with a timestamp.

EstimatedJourneyVersionFrame

Container-element for returning an Estimated Timetable comprised of one or more EstimatedVehicleJourney.

EstimatedJourneyVersionFrame

EstimatedJourneyVersionFrame

 

Name

Type

Cardinality

Description

element

RecordedAtTime

xsd:dateTime

1: 1

The time when the data object was created/published.

element

EstimatedVehicleJourney

SIRI-ET#EstimatedVehicleJourney

1: *

Object for Estimated Timetable dataset.

EstimatedVehicleJourney

Continuously updated timetable data with changes in the current operating day for a VehicleJourney (may also include a reference to a Vehicle), and its estimated arrival times at stops.

EstimatedVehicleJourney

EstimatedVehicleJourney

 

Name

Type

Cardinality

Description

element

RecordedAtTime

xsd:dateTime

1: 1

The time when this individual journey was recorded.

element

LineRef

xsd:NMTOKEN

1: 1

Reference to the Line in question (ID to the corresponding object in the timetable data)

element

DirectionRef

xsd:NMTOKEN

1: 1

Direction reference (i.e. reference to Direction element describing general course/heading for current Journey)

Please note that the field is implemented as mandatory, but is not used as a free standing data type in the Norwegian SIRI profile. If it is not used, this value can be set to 0 (zero).

(choice) element

DatedVehicleJourneyRef

xsd:NMTOKEN

1: 1

Reference to DatedServiceJourney-ID for the corresponding object in the timetable data.

FramedVehicleJourneyRef

FramedVehicleJourneyRefStructure

Reference with date to VehicleJourney in question (ID to the corresponding object in the timetable data).

EstimatedVehicleJourneyCode

xsd:NMTOKEN

Unplanned replacement departures must be given a new codespace-unique ID.

For example: RUT:ServiceJourney:51-108833-11872056-00 / RUT:DatedServiceJourney:1234-1234-1234

(choice) element

ExtraJourney

xsd:boolean

0: 1

The VehicleJourney in question is a replacement departure.

Must be 'true' if it is a replacement departure.

Cancellation

xsd:boolean

Used when the VehicleJourney in question is cancelled.

Set to 'true' only if the whole VehicleJourney is cancelled. When only parts of the VehicleJourney is cancelled: use RecordedCall and/or EstimatedCall.

element

JourneyPatternRef

xsd:NMTOKEN

0: 1

Reference to JourneyPattern in question (ID to the corresponding object in the timetable data).

element

VehicleMode

VehicleModesEnumeration

0: 1

Transport type.

Must be defined for replacement departures!

Possible values:

  • air

  • bus

  • coach

  • ferry (mapped to "water")

  • metro

  • rail

  • tram

  • taxi (from SIRI 2.1)

element

RouteRef

xsd:NMTOKEN

0: 1

Reference to Route in question (ID to the corresponding object in the timetable data).

Must be defined for replacement departures!

element

PublishedLineName

NaturalLanguageStringStructure

0: 1

Public number or name of the line. 

Is only used when replacement departures reference a new LineRef that is not already defined in timetable data. It will then be used to represent the added Line.

element

GroupOfLinesRef

xsd:NMTOKEN

0: 1

Reference to Network/GroupOfLines in question (ID to the corresponding object in the timetable data).

Must be defined for replacement departures!

element

ExternalLineRef

xsd:NMTOKEN

0: 1

Reference to Line in question (ID to the corresponding object in the timetable data) that the departure replaces. If not provided, the value from LineRef will be used.

Must be defined for replacement departures!

element

OriginName

NaturalLanguageStringStructure

0: 1

Name of the first stop of the departure (not used due to the reference to the national stop place registry, however can be included to make the XML easier to read).

element

DestinationName

NaturalLanguageStringStructure

0: 1

Name of the last stop of the departure (not used due to the reference to the national stop place registry, however can be included to make the XML easier to read).

element

OperatorRef

xsd:NMTOKEN

0: 1

Reference to Operator in question (ID to the corresponding company in the timetable data)

Must be defined for replacement departures where the operator has been changed!

element

PublicContact

SIRI-ET#SimpleContactStructure

0: 1

Contact point for the public (if different from original timetable information).

At least one field must be filled out.

element

OperationsContact

SIRI-ET#SimpleContactStructure

0: 1

Administrative contact details (if different from original timetable information).

At least one field must be filled out.

element

SituationRef

SIRI-ET#SituationRefStructure

0: *

Unique reference to one or more SituationNumber which link to earlier published Situation elements (SIRI-SX) when these provide supplementary information for the current EstimatedVehicleJourney.

element

Monitored

xsd:boolean

0: 1

Whether the vehicle is currently reporting real-time data or not (for example set to true when the driver of the vehicle logs on to the system before departing).

element

PredictionInaccurate

xsd:boolean

0: 1

Whether the VehicleJourney is affected by traffic jams or other circumstances which lead to uncertainty around the time estimates.

element

DataSource

xsd:string

1: 1

Codespace of the data source (see codespace).

element

Occupancy

OccupancyEnumeration

0: 1

Open seats-status.

Possible values:

  • unknown

  • manySeatsAvailable (more than ~50% of seats available)

  • fewSeatsAvailable* (less than ~50% of seats available)

  • standingAvailable (less than ~10% of seats available)

  • full (close to or at full capacity)

  • notAcceptingPassengers (if vehicle/carriage is not in use / unavailable, or passengers are only allowed to alight due to e.g. crowding)

This status should reflect the allowed occupancy level, not necessarily physical spacing available.

If the operator runs with reduced capacity, e.g. in order to maintain a certain service level, social distancing etc., the occupancy status must be set in accordance with current limitation i.e. "full" when all seats assigned for use are occupied (regardless of disallowed seating/standing still being physically available).

*Note: previous value seatsAvailable has been deprecated in SIRI 2.1, and has been replaced

element

BlockRef

xsd:NMTOKEN

0: 1

Reference to block (trip pattern)

Internal (non-public) information.

element

VehicleJourneyRef

xsd:NMTOKEN

0: 1

Reference to the VehicleJourney being replaced (ID to the corresponding object in the timetable data).

Please note: Use only for unplanned replacement departures. In other cases, use FramedVehicleJourneyRef.

element

AdditionalVehicleJourneyRef

FramedVehicleJourneyRefStructure

0: *

Reference to other affected VehicleJourneys.

element

VehicleRef

xsd:NMTOKEN

0: 1

Reference to the vehicle operating this journey (ID to the corresponding vehicle in the timetable data).

element

RecordedCalls

SIRI-ET#RecordedCall

0: 1

The full sequence of already served stops in the order they were served by the VehicleJourney.

Please note that all stops in the sequence must be in chronological order. (Except if the recording of a call is missed, then this call may be kept in the sequence as a correspondingly labeled EstimatedCall even after passed.)

element

EstimatedCalls

SIRI-ET#EstimatedCall

0: 1

The full sequence of affected stops in the order they will be served by the VehicleJourney.

Please note that all stops in the sequence must be in chronological order.

element

IsCompleteStopSequence

xsd:boolean

1: 1

Should always be 'true' as a confirmation that the sequence of RecordedCalls/EstimatedCalls is complete (contains all the stops) for the current EstimatedVehicleJourney.

element

JourneyRelations

SIRI-ET#JourneyRelation

0: 1

Relations of the journey with other journeys, e.g., in case a joining/splitting takes place or the journey substitutes for another one etc.

SIRI v2.1 feature, awaiting approval of standard revision

SimpleContactStructure

Contact details to be presented to the public in cases where the information stated in the planned time table data is no longer true.

SimpleContactStructure

SimpleContactStructure

 

Name

Type

Cardinality

Description

element

PhoneNumber

xsd:string

0: 1

Phone number

element

Url

xsd:anyURI

0: 1

Url

SituationRefStructure

Reference to a related Situation Element in an existing SIRI-SX message.

SituationRefStructure

SituationRefStructure

 

Name

Type

Cardinality

Description

element

SituationSimpleRef

xsd:string

1: 1

Unique referance to SituationNumber for previously published Situation Element (SIRI-SX)

RecordedCall

Wrapper object to describe information regarding already served stops in a VehicleJourney.

Specified RecordedCalls must, together with EstimadeCalls, define all stops of a complete EstimatedVehicleJourney (that is, IsCompleteStopSequence should always be 'true').