# GTFS-RT data only has \`schedule\_relationship\` = 0

**URL:** <https://boduf.discourse.group/t/gtfs-rt-data-only-has-schedule-relationship-0/132>\
**Category:** Bus location data\
**Created:** [22 January 2025 12:48 UTC](https://boduf.discourse.group/t/gtfs-rt-data-only-has-schedule-relationship-0/132 "2025-01-22T12:48:19Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![strangeluke](https://avatars.discourse-cdn.com/v4/letter/s/7feea3/32.png) [@strangeluke](https://boduf.discourse.group/u/strangeluke)\
**Post date:** [22 January 2025 12:48 UTC](https://boduf.discourse.group/t/gtfs-rt-data-only-has-schedule-relationship-0/132/1 "2025-01-22T12:48:20Z")

</div>

There are [6 different options](https://gtfs.org/documentation/realtime/reference/#enum-schedulerelationship_1) for `schedule_relationship`.

In 10 days of GTFS-RT data we collected from BODS, we didn’t see a value other than 0, which means “scheduled”.

We know that in 10 days some bus services must have been one of: `cancelled`, `added`, `unscheduled`, `deleted`, or `duplicated`. Particularly cancelled. So is it the case that BODS isn’t reporting any information about cancelled services? Or, is it that their `schedule_relationship` has not been updated to the correct status?

---

<div class="post-metadata">

**Author:** ![timrivett](https://avatars.discourse-cdn.com/v4/letter/t/839c29/32.png) [@timrivett](https://boduf.discourse.group/u/timrivett)\
**Post date:** [23 January 2025 14:18 UTC](https://boduf.discourse.group/t/gtfs-rt-data-only-has-schedule-relationship-0/132/2 "2025-01-23T14:18:25Z")

</div>

The source data feed for BODS is SIRI VM which is then converted to GTFS-RT.  
SIRI VM supports cancellation but it can only provide that for current journeys and in reality it will only show for a journey which has started and then been cancelled part way along a route.  
Most journeys which are cancelled are done so before the journey starts so will never appear in a SIRI VM feed, and therefore not in a GTFS one either.

---

<div class="post-metadata">

**Author:** ![strangeluke](https://avatars.discourse-cdn.com/v4/letter/s/7feea3/32.png) [@strangeluke](https://boduf.discourse.group/u/strangeluke)\
**Post date:** [23 January 2025 14:55 UTC](https://boduf.discourse.group/t/gtfs-rt-data-only-has-schedule-relationship-0/132/3 "2025-01-23T14:55:29Z")

</div>

Hey Tim,

Do you know (rough estimate will do) a percentage of journeys that are cancelled before they start vs. during the route?

With the few that are cancelled during the journey, how does SIRI VM report these, and why do they not appear at all in GTFS-RT?

It’s interesting to me to find out that SIRI VM powers the GTFS-RT feed. In that case, I would expect the data in both to be the same. But I raised [another issue on the forum](https://boduf.discourse.group/t/gtfs-rt-and-siri-feeds-contain-different-data/125) in which I analysed a snapshot of data from both SIRI and GTFSRT, and they reported quite different data.

Maybe the discrepancy between the two is an error in how they’re being converted?

We’re a bit in the dark with all of this, so any info is greatly appreciated.

Thanks,  
Luke.

---

<div class="post-metadata">

**Author:** ![timrivett](https://avatars.discourse-cdn.com/v4/letter/t/839c29/32.png) [@timrivett](https://boduf.discourse.group/u/timrivett)\
**Post date:** [24 January 2025 14:54 UTC](https://boduf.discourse.group/t/gtfs-rt-data-only-has-schedule-relationship-0/132/4 "2025-01-24T14:54:17Z")

</div>

Hi Luke,

I would suspect that very few journeys are marked as cancelled once a journey has started in the VM feeds from operators, certainly less than 10%.

There are a couple of ways to code it but the easiest would be in VehicleStatus in JourneyProgress as part of a MonitoredVehicleJourney.

---

<div class="post-metadata">

**Author:** ![strangeluke](https://avatars.discourse-cdn.com/v4/letter/s/7feea3/32.png) [@strangeluke](https://boduf.discourse.group/u/strangeluke)\
**Post date:** [24 January 2025 15:09 UTC](https://boduf.discourse.group/t/gtfs-rt-data-only-has-schedule-relationship-0/132/5 "2025-01-24T15:09:11Z")

</div>

That’s interesting, thank you. If it’s possible to code, I wonder why these aren’t showing up in the GTFS-RT feed?

---

<div class="post-metadata">

**Author:** ![timrivett](https://avatars.discourse-cdn.com/v4/letter/t/839c29/32.png) [@timrivett](https://boduf.discourse.group/u/timrivett)\
**Post date:** [24 January 2025 17:07 UTC](https://boduf.discourse.group/t/gtfs-rt-data-only-has-schedule-relationship-0/132/6 "2025-01-24T17:07:17Z")

</div>

probably because there aren’t cancellations in the incoming SIRI feed. There is almost no cancellation data in the BODS SIRI feeds at the moment because SIRI VM isn’t really meant for cancellations.  
in the BODS ecosystem the disruptions service is where it will be which provides SIRI SX, and for the moment that is more focused on diversions, roadworks and significant issues such as storms etc.

---

<div class="post-metadata">

**Author:** ![miklcct](https://yyz2.discourse-cdn.com/flex004/user_avatar/boduf.discourse.group/miklcct/32/11_2.png) [@miklcct](https://boduf.discourse.group/u/miklcct)\
**Post date:** [1 April 2025 15:44 UTC](https://boduf.discourse.group/t/gtfs-rt-data-only-has-schedule-relationship-0/132/7 "2025-04-01T15:44:29Z")

</div>

To my understanding, in the SIRI ecosystem, trip cancellations should be done in SIRI-ET. So which service in BODS can I obtain these data, and how do operators submit the bus cancellation data?

---

<div class="post-metadata">

**Author:** ![timrivett](https://avatars.discourse-cdn.com/v4/letter/t/839c29/32.png) [@timrivett](https://boduf.discourse.group/u/timrivett)\
**Post date:** [7 April 2025 20:57 UTC](https://boduf.discourse.group/t/gtfs-rt-data-only-has-schedule-relationship-0/132/8 "2025-04-07T20:57:35Z")

</div>

There is a BODS disruptions service which uses SIRI SX, mainly providing road and stop closures at the moment, development to support individual journey cancellations I believe is underway.
