Inconsistency in trip update example vs. reference documentation?
- 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
Assessment
This issue has not been assessed yet.