Schedule Records
Schedule records are contained within the SCHEDULE data feed, and provide information about the possible schedules available for trains. For a given train service, there may be multiple schedules listed - the date of the train service and any short / very-short term plans will affect which schedule is current.
A schedule record comprises of a header containing a schedule UID, data about the schedule (including whether it is a train, bus or ship) and validity dates, and an ordered list of locations and times at which a particular service should arrive, depart or pass.
- Originating locations will always have a WTT departure time and optionally a public departure time
- Intermediate locations in a schedule will have a passing time if they are a mandatory timing point, or an arrival and departure time if the train carries out an activity at that location
- Terminating locations will always have a WTT arrival time and optionally a public arrival time, which may be some minutes later than the WTT time
- A location may have one or more activities associated with it - for example, U for locations where the train calls to pick up passengers (i.e. not available for alighting), D for locations where the train calls to set down passengers (i.e. not available for boarding).
- A location may have engineering, pathing or performance allowances
For further details, see the Network Rail Common Interface Format file specification.
Record Layout
Schedule records are encoded as a JSON hash with a key of "JsonScheduleV1" and a value containing the schedule data, in the following layout:
JsonScheduleV1: CIF_train_uid transaction_type schedule_start_date schedule_end_date schedule_days_runs CIF_bank_holiday_running train_status CIF_stp_indicator atoc_code applicable_timetable schedule_segment: CIF_train_category signalling_id CIF_headcode CIF_course_indicator CIF_train_service_code CIF_business_sector CIF_power_type CIF_timing_load CIF_speed CIF_operating_characteristics CIF_train_class CIF_sleepers CIF_reservations CIF_connection_indicator CIF_catering_code CIF_service_branding new_schedule_segment: traction_class uic_code schedule_location: <location records>
Schedule Records
Field | Description |
---|---|
CIF_train_uid | The unique identifier for the schedule.
This is made up of a letter plus five numbers. There may be multiple schedules for one schedule UID. See also the train_uid field of the TRUST Train Activation message type. |
transaction_type | create or delete |
schedule_start_date | The start date of the schedule |
schedule_end_date | The end date of the schedule |
schedule_days_runs | A seven-character field; character 1 represents Monday, character 7 represents Sunday. A 1 in a character position means that the service runs on that day, while a 0 means that it does not.
Note: this field is called schedule_days_runs within the JSON file. |
CIF_bank_holiday_running | Bank holiday running code
|
train_status | Train status |
CIF_train_category | Train category |
signalling_id | For passenger services, this is the headcode of the service. For anonymous freight services this will be blank. |
CIF_headcode | Blank |
CIF_course_indicator | Not used |
CIF_train_service_code | Divides trains into service groups and used for revenue reasons |
CIF_business_sector | Formery used to denote the business sector running the service; now represent the Portion ID for services which join or split |
CIF_power_type | Power type
See power type codes |
CIF_timing_load | Timing load |
CIF_speed | Planned speed of the train service |
CIF_operating_characteristics | Operating characteristics
Up to 6 characters. See operating characteristics codes |
CIF_train_class | Seating classes available:
|
CIF_sleepers | Sleeping accommodation available:
|
CIF_reservations | Reservation recommendations:
|
CIF_connection_indicator | Not used |
CIF_catering_code | Up to two characters from the following:
|
CIF_service_branding | Service brand:
|
CIF_stp_indicator | STP (short-term planning) schedule indicator
|
traction_class | Not used |
uic_code | Union Internationale des Chemins de Fer code for the service |
atoc_code | ATOC code
See TOC codes |
applicable_timetable | Applicable timetable service?
|
schedule_location | Field containing an array of location records |
Location Records
Location records contain information about the locations that the train service originates at, passes, stops at and terminates at. The schedule_location field contains an ordered JSON list of location records, each with the following fields:
Field | Description |
---|---|
record_identity | The type of location record
|
tiploc_code | The TIPLOC code of the location |
tiploc_instance | The nth occurrence of the location. |
arrival | WTT arrival time (LI and LT records)
Format: HHMMH - time given by the 24-hour clock. Optional H indicates half-minute. In local time (i.e. adjusted for BST / GMT.) |
departure | WTT departure time (LO and LI records)
Format: HHMMH - time given by the 24-hour clock. Optional H indicates half-minute. In local time (i.e. adjusted for BST / GMT.) |
pass | WTT passing time (LI records)
Format: HHMMH - time given by the 24-hour clock. Optional H indicates half-minute. In local time (i.e. adjusted for BST / GMT.) |
public_arrival | Public timetable arrival time (LI and LT records)
Format: HHMM - time given by the 24-hour clock. In local time (i.e. adjusted for BST / GMT.) |
public_departure | Public timetable departure time (LO and LI records)
Format: HHMM - time given by the 24-hour clock. In local time (i.e. adjusted for BST / GMT.) |
platform | Platform
A 3-character field used to denote the platform or line that the service uses. |
line | Departure line
A 3-character field representing the line to be used on departure from the location. The line abbreviation will be used. |
path | Arrival path
A 3-character field representing the line to be used on arrival at the location. The line abbreviation will be used. |
engineering_allowance | Time allowed for recovery from engineering activities
|
pathing_allowance | Time allowed for pathing requirements
|
performance_allowance | Performance allowance
|
location_type | Same as record_identity (LO, LI or LT) |
Network Rail Open Data Feeds | |
---|---|
Data Feeds | About the Feeds • Account States • Durable Subscriptions • Example Code ( PHP / C# / Java / Ruby / Node.js) • Advanced Uses • FAQ • Release Notes |
RTPPM | RTPPM Feed |
Train Movements | Train Movements Feed • Train Activation • Train Cancellation • Train Movement • Train Reinstatement • Change of Origin • Change of Identity • Change of Location • TSPEED Field • Planned Cancellations • Cancellation Codes |
TD | TD Feed • C-Class Messages • S-Class Messages • Train Describers • TD Berths |
VSTP | VSTP Feed |
TSR | TSR Feed • Route Codes |
SCHEDULE | SCHEDULE Feed • TIPLOC Records • Schedule and Location Records • Association Records • CIF Codes • How Scheduling Works • Allowances |
Reference Data | Reference Data Feed • TOC Codes • CIF Codes • Delay Attribution Codes • Identifying Locations (STANOX, TIPLOC, NLC and 3-Alpha Codes) • STANOX Geographical Areas • Train Planning data (BPLAN) |