Difference between revisions of "Train Cancellation"

From Open Rail Data Wiki
Jump to navigation Jump to search
(Document train cancellation messages)
(Add details that the train_id does not alter on a change of identity)
 
(12 intermediate revisions by 4 users not shown)
Line 1: Line 1:
== Overview ==
+
A cancellation message is sent when the train does not, or will not, complete its scheduled journey.
  
The Train Cancellation message is used to indicate a train that has been cancelled.
+
A train may be cancelled in one of four ways:
  
== Example ==
+
* At activation time ("ON CALL"), usually where the applicable schedule has a STP indicator of "C" - see [[Planned Cancellations]].  Trains may be cancelled for other reasons before train has been activated, and when activation occurs, the train will be immediately cancelled with the appropriate reason code
 +
* At the train's planned origin ("AT ORIGIN")
 +
* En-route ("EN ROUTE")
 +
* Off-route ("OUT OF PLAN")
 +
 
 +
As with all other messages, cancellation messages will only be received for train schedules which have already been activated.
 +
 
 +
= Data structure =
  
 
<pre>
 
<pre>
Line 9: Line 16:
 
     "header": {
 
     "header": {
 
         "msg_type": "0002",
 
         "msg_type": "0002",
         "source_dev_id": "L0BL",
+
         "source_dev_id": "",
         "user_id": "#QDP1120",
+
         "user_id": "",
         "original_data_source": "TRUST DA",
+
         "original_data_source": "SDR",
         "msg_queue_timestamp": "1359167584000",
+
         "msg_queue_timestamp": "1511528427000",
 
         "source_system_id": "TRUST"
 
         "source_system_id": "TRUST"
 
     },
 
     },
 
     "body": {
 
     "body": {
 
         "train_file_address": null,
 
         "train_file_address": null,
         "train_service_code": "25437000",
+
         "train_service_code": "22721000",
 
         "orig_loc_stanox": "",
 
         "orig_loc_stanox": "",
         "toc_id": "71",
+
         "toc_id": "88",
         "dep_timestamp": "1359153300000",
+
         "dep_timestamp": "1511527680000",
         "division_code": "71",
+
         "division_code": "88",
         "loc_stanox": "80419",
+
         "loc_stanox": "87701",
         "canx_timestamp": "1359167580000",
+
         "canx_timestamp": "1511528400000",
         "canx_reason_code": "X2",
+
         "canx_reason_code": "YI",
         "train_id": "802E51M725",
+
         "train_id": "871B26MK24",
 
         "orig_loc_timestamp": "",
 
         "orig_loc_timestamp": "",
 
         "canx_type": "EN ROUTE"
 
         "canx_type": "EN ROUTE"
Line 32: Line 39:
 
</pre>
 
</pre>
  
== Data structure ==
+
== Header ==
=== Important Header fields ===
 
  
 
{| class='wikitable'
 
{| class='wikitable'
Line 41: Line 47:
 
|msg_type
 
|msg_type
 
|Set to '0002' for a cancellation message
 
|Set to '0002' for a cancellation message
 +
|-
 +
|source_dev_id
 +
|[[LATA]] or [[CICS Session]] of the inputting terminal
 +
|-
 +
|user_id
 +
|[[NCI signon]] of the inputting user
 
|-
 
|-
 
|source_system_id
 
|source_system_id
|Set to "TRUST" for cancellation messages
+
|Set to "TRUST" for a cancellation message
 
|-
 
|-
 
|original_data_source
 
|original_data_source
|Blank (for automatic cancellations on call), "SDR" (Simplified Direct Reporting) or "TRUST DA" (TRUST Delay Attribution)
+
|Set to "TOPS" or "SDR" for a reactionary cancellation, or "" for a planned cancellation (STP 'C')
 
|-
 
|-
|user_id
+
|msg_queue_timestamp
|The identity of the user who made the cancellation
+
|
 
|}
 
|}
  
=== Body ===
+
== Body ==
 
 
It is important to note that TRUST is not able to cancel a train unless it has already reported at a location.
 
  
 
{| class='wikitable'
 
{| class='wikitable'
Line 64: Line 74:
 
|-
 
|-
 
|train_service_code
 
|train_service_code
|Train service code as per schedule
+
|Train service code as per the schedule
 
|-
 
|-
 
|orig_loc_stanox
 
|orig_loc_stanox
|Only populated in cancellation type "OUT OF PLAN", and references the identity of the location that the schedule should have been at.
+
|For an an "OUT OF PLAN" cancellation, this is the location that the train should have been at according to the schedule
 
|-
 
|-
 
|toc_id
 
|toc_id
|Operating company ID as per [[TOC_Codes]]
+
|Operating company ID as per [[TOC Codes]]
 
|-
 
|-
 
|dep_timestamp
 
|dep_timestamp
|Timestamp representing the departure time of the train at the location that the train is cancelled from
+
|The departure time at the location that the train is cancelled from (in milliseconds since the UNIX epoch)
 
|-
 
|-
 
|division_code
 
|division_code
|As toc_id
+
|Operating company ID as per [[TOC Codes]]
 
|-
 
|-
 
|loc_stanox
 
|loc_stanox
|The location that the schedule is being cancelled from. In "OUT OF PLAN" cancellations, this will not be in the schedule but a 0003 Train Movement message will have been sent.
+
|The STANOX of the location that the train is being cancelled from. For an "OUT OF PLAN" cancellation, this STANOX will not be in the schedule, but a [[Train_Movement | Train Movement]] message will have already been sent.
 
|-
 
|-
 
|canx_timestamp
 
|canx_timestamp
|The time at which the cancellation is made in TRUST.
+
|The time at which the cancellation was input to TRUST
 
|-
 
|-
 
|canx_reason_code
 
|canx_reason_code
|Reason code for cancellation, as per the Delay Attribution Guide
+
|The reason code for the cancellation, taken from the [[Delay Attribution Guide]]
 
|-
 
|-
 
|train_id
 
|train_id
|Set to the 10-character unique identity for this train, as appearing in other TRUST message types
+
|The 10-character unique identity for this train (sent in the TRUST [[Train_Activation |activation message]]). If a [[Change_of_Identity|change of identity]] occurs, this will still continue to be the original train_id from the activation message.
 
|-
 
|-
 
|orig_loc_timestamp
 
|orig_loc_timestamp
|Only populated in cancellation type "OUT OF PLAN", and references the departure time of the location that the schedule should have been at.
+
|For an "OUT OF PLAN" cancellation, this is the departure time of the location that the train should have been at according to the schedule
 
|-
 
|-
 
|canx_type
 
|canx_type
|Populated with "ON CALL", "AT ORIGIN", "EN ROUTE" or "OUT OF PLAN".
+
|Either "ON CALL" for a planned cancellation, "AT ORIGIN", "EN ROUTE" or "OUT OF PLAN"
 
|-
 
|-
 
|}
 
|}
 +
 +
{{Navtable-DataFeeds}}
 +
 +
[[Category:Train Movement Data]]

Latest revision as of 13:58, 4 November 2019

A cancellation message is sent when the train does not, or will not, complete its scheduled journey.

A train may be cancelled in one of four ways:

  • At activation time ("ON CALL"), usually where the applicable schedule has a STP indicator of "C" - see Planned Cancellations. Trains may be cancelled for other reasons before train has been activated, and when activation occurs, the train will be immediately cancelled with the appropriate reason code
  • At the train's planned origin ("AT ORIGIN")
  • En-route ("EN ROUTE")
  • Off-route ("OUT OF PLAN")

As with all other messages, cancellation messages will only be received for train schedules which have already been activated.

Data structure

{
    "header": {
        "msg_type": "0002",
        "source_dev_id": "",
        "user_id": "",
        "original_data_source": "SDR",
        "msg_queue_timestamp": "1511528427000",
        "source_system_id": "TRUST"
    },
    "body": {
        "train_file_address": null,
        "train_service_code": "22721000",
        "orig_loc_stanox": "",
        "toc_id": "88",
        "dep_timestamp": "1511527680000",
        "division_code": "88",
        "loc_stanox": "87701",
        "canx_timestamp": "1511528400000",
        "canx_reason_code": "YI",
        "train_id": "871B26MK24",
        "orig_loc_timestamp": "",
        "canx_type": "EN ROUTE"
    }
}

Header

Field Description
msg_type Set to '0002' for a cancellation message
source_dev_id LATA or CICS Session of the inputting terminal
user_id NCI signon of the inputting user
source_system_id Set to "TRUST" for a cancellation message
original_data_source Set to "TOPS" or "SDR" for a reactionary cancellation, or "" for a planned cancellation (STP 'C')
msg_queue_timestamp

Body

Field Description
train_file_address The TOPS train file address, if applicable
train_service_code Train service code as per the schedule
orig_loc_stanox For an an "OUT OF PLAN" cancellation, this is the location that the train should have been at according to the schedule
toc_id Operating company ID as per TOC Codes
dep_timestamp The departure time at the location that the train is cancelled from (in milliseconds since the UNIX epoch)
division_code Operating company ID as per TOC Codes
loc_stanox The STANOX of the location that the train is being cancelled from. For an "OUT OF PLAN" cancellation, this STANOX will not be in the schedule, but a Train Movement message will have already been sent.
canx_timestamp The time at which the cancellation was input to TRUST
canx_reason_code The reason code for the cancellation, taken from the Delay Attribution Guide
train_id The 10-character unique identity for this train (sent in the TRUST activation message). If a change of identity occurs, this will still continue to be the original train_id from the activation message.
orig_loc_timestamp For an "OUT OF PLAN" cancellation, this is the departure time of the location that the train should have been at according to the schedule
canx_type Either "ON CALL" for a planned cancellation, "AT ORIGIN", "EN ROUTE" or "OUT OF PLAN"


Network Rail Open Data Feeds
Data Feeds About the Feeds Account States Durable Subscriptions Example Code ( PHP / C# / Java / Ruby / Node.js) • Advanced UsesFAQ 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 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