google / google/transit

Inconsistency in trip update example vs. reference documentation?

Open
#468 2 comments 0 reactions 0 assignees View on GitHub
Change type: Documentation Maintenance GTFS Realtime Status: Stale Support: Needs Help
Dominant language
No language data
Stars
1.1k
Forks
225
Avg merge
7d 17h
Merged PRs (30d)
3

Description

### Introduce yourself

_No response_

### Ask a question

The trip update examples maintained at https://github.com/google/transit/blob/master/gtfs-realtime/spec/en/examples/trip-updates-full.asciipb and shown at https://gtfs.org/realtime/feed-examples/trip-updates/ contain StopTimeUpdate messages with just a stop sequence number in the second and third entities.

Extract taken from the second entity:
> stop_time_update {
> # selected by stop_sequence. It will update the vehicle's arrival time
> stop_sequence: 10
> # with the default delay of 0 (on time) and propagate this update
> # for the rest of the vehicle's stops.
> }

The reference documentation for a StopTimeUpdate message however states that the _arrival_ and _departure_ fields are conditionally required, with the following clause:

> If schedule_relationship is empty or SCHEDULED, either arrival or departure must be provided within a StopTimeUpdate - both fields cannot be empty. arrival and departure may both be empty when schedule_relationship is SKIPPED. If schedule_relationship is NO_DATA, arrival and departure must be empty.

This suggests the example should specify at least one of the fields, or explicitly set schedule_relationship to _NO_DATA_. In my understanding, using _NO_DATA_ will effectively reset the delays to zero and stop propagation of any previously specified delay. _NO_DATA_ is however defined as "no realtime timing information available"—which may not be semantically correct when we know the actual delay to be zero.

What are your thoughts?

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.