RTPPM: Difference between revisions

From Open Rail Data Wiki
m categorisation
m Definition of RollingPPM
 
(6 intermediate revisions by 4 users not shown)
Line 1: Line 1:
PPM, the Public Performance Measure, is the percentage of trains that arrive 'on time' at their destination, regardless of who has impacted on the train serviceRather than simply focussing on trains arriving exactly on-time ('Right Time'), a reasonable tolerance is built in to the calculation.
The Public Performance Measure (PPM), is the percentage of trains that arrive 'on time' at their destination.  The definition of 'on time' depends on whether a service is categorised as long-distance (up to to 10 minutes late) or short-distance (up to 5 minutes late).


* For long-distance services, 'on time' describes trains up to 10 minutes late
The Real-Time PPM (RTPPM) data supplied on the Open Data feed differs slightly from the official PPM figures as issued by Network Rail:
* For shorter distance services, 'on time' describes trains up to 5 minutes late


The PPM figures on the Open Data feed differs slightly from the official PPM figures issued by Network Rail:
* RTPPM data considers a day to be from 0200 one day to 0159 the next day:
 
**If a train starts its journey before midnight and finishes after 0200, it will not be counted in the day's figures.
* The RTPPM data calculates PPM on the basis on trains arriving at their destination between 0200 and 0159 the next day.
** If a train starts its journey before midnight and finishes after 0200, it will not be counted in the day's figures.
** If a train starts after midnight and finishes after 2am, it will be counted
** If a train starts after midnight and finishes after 2am, it will be counted
** If a train starts its journey before midnight but doesn't arrive at its destination until after 0159, it will not be counted
** If a train starts its journey before midnight but doesn't arrive at its destination until after 0159, it will not be counted
* All VSTP schedules are counted, i.e. trains that are planned or altered on the day they are due to run are included in the RTPPM figures, but would normally be excluded from the official PPM report
* All non-applicable timetable (the majority of VSTP) schedules are counted, but are normally excluded from the official PPM figures
* Where a train has been cancelled prior to the day it runs, the RTPPM system will process that cancellation.  If the train then actually runs, it will not be counted for PPM purposes, as the system would have already processed the planned cancellation and will treat the actual train as a duplicate
* Where a train has been cancelled prior to the day it runs, RTPPM system will process that cancellation.  If the train then actually runs, it will not be counted for PPM purposes, as the system would have already processed the planned cancellation and will treat the actual train as a duplicate
* Non-applicable trains are included in the RTPPM calculations, but not in the official PPM figures
* The system does not record 'fail to stop' events, diversions from the planned route or trains starting away from the planned origin, but it does count short terminations
* The system does not record 'fail to stop' events, diversions from the planned route or trains starting away from the planned origin.  It does, however, count short terminations
* The system rounds down all percentage values to the nearest whole number, so 92.7% will be displayed as 92%
* The system rounds down all percentage values to the nearest whole number, so 92.7% will be displayed as 92%
* The system cannot detect missed stops, which the official system picks up as a PPM failure through manual edits
* The system cannot detect missed stops, which the official system picks up as a PPM failure through manual edits
* For First Capital Connect services, RTPPM only registers a PPM success or failure at the service's destination.  This differs from the official system, which registers the services twice - once at Blackfriars (northbound) or Farringdon (southbound), and once at its destination
* For Thameslink services, RTPPM only registers a PPM success or failure at the service's destination.  This differs from the official system, which registers the services twice - once at Blackfriars (northbound) or Farringdon (southbound), and once at its destination


'CaSL' refers to Cancellations and Significant Lateness.  The figure is made up by adding together the number of cancelled trains and the number of trains more than 29 minutes late.  The percentage is derived from taking the total number of CaSL'd trains diving by the total number of trains due to run up until that point.
'CaSL' refers to Cancellations and Significant Lateness.  The figure is made up by adding together the number of cancelled trains and the number of trains more than 29 minutes late.  The percentage is derived from taking the total number of CaSL'd trains diving by the total number of trains due to run up until that point.
'PPM' is calculated using the details of all trains which have arrived at their destination in the current PPM 'day' as defined above.
'RollingPPM' is the PPM calculation restricted to trains which have arrived at their destination in the last two hours.  This gives a "live" version of PPM
= Message Topics =
RTPPM messages are delivered through ActiveMQ.
{| class="wikitable"
!Topic name
!Description
|-
|RTPPM_ALL
|Current realtime PPM statistics delivered once per minute
|}
= Record Layout =
RTPPM records are encoded as a JSON hash with a key of "RTPPMDataMsgV1" and a value containing the RTPPM data, in the following layout:
RTPPMDataMsgV1:
  owner
  timestamp
  classification
  schemaLocation
  Sender:
  application
  organisation
  Publication:
  TopicID
  RTPPMData:
  snapshotTStamp
  SystemMsg
  RAGThresholds:
    <threshold values>
  WebPPMLink
  PPT:
    rag
    ragDisplayFlag
    text
  NationalPage:
    WebDisplayPeriod
    WebFixedMsg1
    WebFixedMsg2
    WebMsgOfMoment
    StaleFlag
    NationalPPM:
    Total
    OnTime
    Late
    CancelVeryLate
    PPM:
      rag
      ragDisplayFlag
      text
    RollingPPM:
      trendInd
      rag
      text
    Sector:
    <sector records>
    Operator:
    <operator records>
  OOCPage:
    WebDisplayPeriod
    WebFixedMsg1
    WebFixedMsg2
    Operator:
    <operator records>
  CommonOperatorPage:
    WebDisplayPeriod
    WebFixedMsg1
    WebFixedMsg2
  OperatorPage:
    <operator page records>
{| class='wikitable'
!Field
!Description
|-
|snapshotTStamp
|The timestamp (in milliseconds since the UNIX epoch) when the report was created
|-
|WebDisplayPeriod
|The maximum period of time (in seconds) the data should be displayed
|-
|WebFixedMsg1
|Static message to show on a web page
|-
|WebFixedMsg2
|Static message to show on a web page
|-
|Total
|The total number of trains
|-
|OnTime
|The number of trains on time
|-
|Late
|The number of late trains
|-
|CancelVeryLate
|the number of cancelled trains and the number of trains more than 29 minutes late
|-
|rag
|
* ''G'' Good performance
* ''A'' Medium performance
* ''R'' Bad performance
* ''W'' Unknown
|-
|text
|Current performance value (percentage)
|-
|trendInd
|Trend Indicator
* ''+'' Rising trend
* ''='' No change (flat)
* ''-'' Falling trend
|-
|}
= Sector records =
sectorDesc
sectorCode
SectorPPM:
  Total
  OnTime
  Late
  CancelVeryLate
  PPM:
  rag
  text
  RollingPPM:
  trendInd
  rag
  text
{| class='wikitable'
!Field
!Description
|-
|sectorDesc
|Description of the sector
|-
|sectorCode
|Code of the sector
|-
|}
= Operator page records =
Operator:
  code
  keySymbol
  name
  Total
  OnTime
  Late
  CancelVeryLate
  PPM:
  rag
  text
  RollingPPM:
  trendInd
  displayFlag
  rag
  text
OprToleranceTotal:
  timeband
  Total
  OnTime
  Late
  CancelVeryLate
OprServiceGrp:
  <operator service group records>
{| class='wikitable'
!Field
!Description
|-
|code
|The [[TOC Codes | sector code]] used to represent the TOC in TRUST.
|-
|keySymbol
|The key character used to display different performance thresholds.
|-
|name
|The name of the TOC.
|-
|}
= Operator service group records =
name
timeband
sectorCode
Total
OnTime
Late
CancelVeryLate
PPM:
  rag
  text
 
RollingPPM:
  trendInd
  displayFlag
  rag
  text
{| class='wikitable'
!Field
!Description
|-
|name
|Name of the service group.
|-
|timeband
|
|-
|sectorCode
|Code of the sector the service group is related to.
|-
|}
{{Navtable-DataFeeds}}


[[Category:RTPPM Data]]
[[Category:RTPPM Data]]

Latest revision as of 16:20, 15 February 2021

The Public Performance Measure (PPM), is the percentage of trains that arrive 'on time' at their destination. The definition of 'on time' depends on whether a service is categorised as long-distance (up to to 10 minutes late) or short-distance (up to 5 minutes late).

The Real-Time PPM (RTPPM) data supplied on the Open Data feed differs slightly from the official PPM figures as issued by Network Rail:

  • RTPPM data considers a day to be from 0200 one day to 0159 the next day:
    • If a train starts its journey before midnight and finishes after 0200, it will not be counted in the day's figures.
    • If a train starts after midnight and finishes after 2am, it will be counted
    • If a train starts its journey before midnight but doesn't arrive at its destination until after 0159, it will not be counted
  • All non-applicable timetable (the majority of VSTP) schedules are counted, but are normally excluded from the official PPM figures
  • Where a train has been cancelled prior to the day it runs, RTPPM system will process that cancellation. If the train then actually runs, it will not be counted for PPM purposes, as the system would have already processed the planned cancellation and will treat the actual train as a duplicate
  • The system does not record 'fail to stop' events, diversions from the planned route or trains starting away from the planned origin, but it does count short terminations
  • The system rounds down all percentage values to the nearest whole number, so 92.7% will be displayed as 92%
  • The system cannot detect missed stops, which the official system picks up as a PPM failure through manual edits
  • For Thameslink services, RTPPM only registers a PPM success or failure at the service's destination. This differs from the official system, which registers the services twice - once at Blackfriars (northbound) or Farringdon (southbound), and once at its destination

'CaSL' refers to Cancellations and Significant Lateness. The figure is made up by adding together the number of cancelled trains and the number of trains more than 29 minutes late. The percentage is derived from taking the total number of CaSL'd trains diving by the total number of trains due to run up until that point.

'PPM' is calculated using the details of all trains which have arrived at their destination in the current PPM 'day' as defined above. 'RollingPPM' is the PPM calculation restricted to trains which have arrived at their destination in the last two hours. This gives a "live" version of PPM

Message Topics

RTPPM messages are delivered through ActiveMQ.

Topic name Description
RTPPM_ALL Current realtime PPM statistics delivered once per minute

Record Layout

RTPPM records are encoded as a JSON hash with a key of "RTPPMDataMsgV1" and a value containing the RTPPM data, in the following layout:

RTPPMDataMsgV1:
 owner
 timestamp
 classification
 schemaLocation
 Sender:
  application
  organisation
 Publication:
  TopicID
 RTPPMData:
  snapshotTStamp
  SystemMsg
  RAGThresholds:
   <threshold values>
  WebPPMLink
  PPT:
   rag
   ragDisplayFlag
   text
  NationalPage:
   WebDisplayPeriod
   WebFixedMsg1
   WebFixedMsg2
   WebMsgOfMoment
   StaleFlag
   NationalPPM:
    Total
    OnTime
    Late
    CancelVeryLate
    PPM:
     rag
     ragDisplayFlag
     text
    RollingPPM:
     trendInd
     rag
     text
   Sector:
    <sector records>
   Operator:
    <operator records>
  OOCPage:
   WebDisplayPeriod
   WebFixedMsg1
   WebFixedMsg2
   Operator:
    <operator records>
  CommonOperatorPage:
   WebDisplayPeriod
   WebFixedMsg1
   WebFixedMsg2
  OperatorPage:
   <operator page records>
Field Description
snapshotTStamp The timestamp (in milliseconds since the UNIX epoch) when the report was created
WebDisplayPeriod The maximum period of time (in seconds) the data should be displayed
WebFixedMsg1 Static message to show on a web page
WebFixedMsg2 Static message to show on a web page
Total The total number of trains
OnTime The number of trains on time
Late The number of late trains
CancelVeryLate the number of cancelled trains and the number of trains more than 29 minutes late
rag
  • G Good performance
  • A Medium performance
  • R Bad performance
  • W Unknown
text Current performance value (percentage)
trendInd Trend Indicator
  • + Rising trend
  • = No change (flat)
  • - Falling trend

Sector records

sectorDesc
sectorCode
SectorPPM:
 Total
 OnTime
 Late
 CancelVeryLate
 PPM:
  rag
  text
 RollingPPM:
  trendInd
  rag
  text
Field Description
sectorDesc Description of the sector
sectorCode Code of the sector

Operator page records

Operator:
 code
 keySymbol
 name
 Total
 OnTime
 Late
 CancelVeryLate
 PPM:
  rag
  text
 RollingPPM:
  trendInd
  displayFlag
  rag
  text
OprToleranceTotal:
 timeband
 Total
 OnTime
 Late
 CancelVeryLate
OprServiceGrp:
 <operator service group records>
Field Description
code The sector code used to represent the TOC in TRUST.
keySymbol The key character used to display different performance thresholds.
name The name of the TOC.

Operator service group records

name
timeband
sectorCode
Total
OnTime
Late
CancelVeryLate

PPM:
 rag
 text
 
RollingPPM:
 trendInd
 displayFlag
 rag
 text
Field Description
name Name of the service group.
timeband
sectorCode Code of the sector the service group is related to.


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 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)