-
Notifications
You must be signed in to change notification settings - Fork 183
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Draft proposal : GTFS-TripModifications #369
Comments
Thanks for the proposal @gcamp and Transit! As mentioned above, Swiftly is in support of this change! While the newShape addition to the GTFS-rt spec allows users to specify a newShape for given trips, it does not allow for new/temporary stops to be specified and does not allow for these replacement stops to have realtime predictions associated with them. This TripModifications proposal solves this problem by allowing “replacement stops” to be specified for a group of trips. It is also my understanding that the Swiftly will be following along to see what questions and comments arise. We have already given Transit quite a bit of feedback on the proposal. |
Thanks for this proposal! We agree better communication of detours would have many benefits, so it’s great to see interest from others as well. One high-level impression from this proposal is that it is aimed at communicating detours and the effect of detours on predictions. Both of these are really important, but we suggest decoupling them. We work with many agencies that would be eager to have their staff enter information about detours (close stops, add existing or temporary stops to routes, provide detour shape), but these same staff likely would not be able to always enter accurate data regarding how the detour will change vehicle travel times. Some agencies also may not want to publish adjusted travel time values ( This proposal suggests including detours (TripModifications) in an agency’s TripUpdates feed. This would limit production of this data to systems that generate a TU feed, or if this data comes from a system that doesn’t generate an agency’s main TU feed then this additional TU feed would need to be merged with an agency’s main TU feed, either by the agency/producer or consumers. Are there reasons TripModifications need to be in the TU feed? What about putting it in alerts.pb or a new tripmodifications.pb? A final piece of feedback is related to the following from the proposal:
This has the potential to greatly increase the amount of data needed to communicate a single detour. For example, a detour that applies to 3 stops served by 5 routes that each have 5 stop patterns would require 25 TripModifications that all contain the same data other than the list of Looking forward to hearing what others think. It would be great to start moving forward on publishing better detour data. |
Thanks for the review and comment @sam-hickey-ibigroup!
We agree! We're going to change the proposal to reflect that.
This might have been implicit in some places, but it wasn't our goal. We're going to clarify. I would add a reminder that the convention of having different type of gtfs-rt updates in different files, but the spec doesn't require it. It's really up to the producer to define what is more convenient for them.
This would allow us select stops with |
Thanks for the proposal. I like some of the concepts that are found here. I have a few questions about potential implementation based on work that we at Vontas has done in this area.
I have seen agencies that have multiple detours on a single stop pattern. The longer the route, the higher probability that there could be multiple detours. I could be reading this incorrectly, so I would need to have a better understanding of how that would work.
How would this work where a detour has an undetermined end date. I have seen a case where all detours are entered with no end dates. How would the consuming application handle this scenario? How should the AVL system provide this data?
This one is minor but, what happens if the first stop is the reference point but not cancelled in the detour? Then the first stop is the reference and not modified. I would also like to thank @sam-hickey-ibigroup for bringing up points that I feel are also very relevant to the implementation here. What I would like to see is a way for the features presented here to be merged with the GTFS-RT v3.1 proposal and arrive at one solution that meets sharing detour information. |
Thanks for the review @jmburge!
Yes, in this case you would have a a single
We thought it would be reasonable to always provide an estimated end time, even if the end is actually unknown. The producers can probably know if it's short term (today) or medium term (couple days). It does indeed mean that you need to re-generate the protobuf regularly to update it, when necessary. Would that be acceptable to you?
The reference stop is only the reference to calculate travel time to added stops. Assuming a stop sequence that starts a 1 and increment by 1 every stop, you would set
What would be the purpose of merging with service changes proposal? Our plan was the propose the |
This feature is ready for the PR stage, discussion can continue there! |
Hi everyone,
GTFS-ServiceChanges v3.1 has been in the proposal stage for a long time and spans very wide.
We want to move forward with the trip detour use case specifically. We saw the need for a more focused specification tailored to consistent and accurate representation of detours.
For these reasons, we came up with GTFS-TripModifications. Indeed, GTFS-TripModifications allow us to give more specific details and to be more efficient when a detour affects multiple trips, compared to a complete replacement of each affected trip, as is currently provided for in GTFS-ServiceChanges v3.1.
We just released today our first implementation of our detour feature that uses data formatted in this proposition. Swiftly is also already interested in producing this data.
We welcome your feedback either here, or directly in the Google doc! Note that GTFS-TripModifications builds on GTFS-ServiceChanges v3.1 and uses some parts of it. This proposal doesn’t prevent the remaining features in that specification from being adopted in the future.
The text was updated successfully, but these errors were encountered: