Trip Modifications¶
Un message TripModifications identifie une liste de trip_ids similaires du (CSV) GTFS qui sont tous affectés par des modifications particuliÚres, comme un détour.
Attention :cette entitĂ© est encore expĂ©rimentale et sujette Ă changement. Il pourrait ĂȘtre formellement adoptĂ© Ă lâavenir.
SLOÂ : objectif de niveau de service¶
La frĂ©quence de mise Ă jour des donnĂ©es devrait ĂȘtre dâenviron toutes les heures (~ 24 fois/jour). Le temps dâingestion peut dĂ©pendre du nombre total de dĂ©placements concernĂ©s. Les consommateurs sont censĂ©s ingĂ©rer un seul TripModification en 5 minutes et un flux comportant des centaines de dĂ©tours en 20 minutes.
TripModifications¶
Les TripModifications sont en vigueur Ă toutes les dates de service rĂ©pertoriĂ©es, jusquâĂ ce quâelles soient supprimĂ©es du flux. Ă une date de service donnĂ©e, un voyage NE DOIT PAS ĂȘtre attribuĂ© Ă plus dâun objet TripModifications.
Il PEUT y avoir plusieurs TripModifications pour un modĂšle dâarrĂȘt donnĂ©. Il peut ĂȘtre souhaitable de diviser les trajets en plusieurs modifications, par exemple si le « propagated_modification_delay » change de maniĂšre significative au cours du dĂ©tour.
Les voyages créés via GTFS- TripModifications modifient et remplacent chaque trip_id spĂ©cifiĂ©, et ne crĂ©ent pas de copie ou dâexĂ©cution supplĂ©mentaire. Les modifications sont appliquĂ©es sur les informations de planning, comme si un GTFS (CSV) statique Ă©tait modifiĂ©.
Les horaires dâarrĂȘts programmĂ©es de chaque trajet de remplacement sont créées Ă partir de celles du trajet concernĂ©, en effectuant les changements listĂ©s dans les modifications. stop_sequence pour tous les horaires dâarrĂȘts sont remplacĂ©s par une nouvelle valeur de 1 Ă n, commençant par 1 lors du premier stop_time et augmentant de 1 pour chaque arrĂȘt du trajet. Un message TripUpdate doit ĂȘtre fourni pour publier les heures dâarrivĂ©e/dĂ©part en temps rĂ©el pour le voyage de remplacement.
Lien vers TripUpdates¶
- Une TripUpdate DEVRAIT ĂȘtre fournie en utilisant un
ModifiedTripSelectorĂ lâintĂ©rieur duTripDescriptorde TripUpdate.- Lorsque TripUpdate fait rĂ©fĂ©rence au voyage de remplacement, lâapplication rĂ©utilisatrice doit se comporter comme si le GTFS statique aurait Ă©tĂ© modifiĂ© avec les TripModifications (par exemple
arrival_time,departure_time,stop_sequence,stop_idsur les arrĂȘts de remplacement). - En fournissant dâun
ModifiedTripSelector, les champstrip_id,route_id,direction_id,start_time,start_dateduTripDescriptorDOIVENT ĂȘtre laissĂ©s vides, pour Ă©viter toute confusion chez les consommateurs qui ne cherchent pas la valeurModifiedTripSelector. - Les flux TripUpdate fournissant des mises Ă jour avec
ModifiedTripSelectorDEVRAIT Ă©galement inclure un TripUpdate ciblant les clients qui ne prennent pas en charge TripModifications. En dâautres termes, il devrait y avoir deux TripUpdates : une pour les clients avec des voyages modifiĂ©s (avecTripModifications) et une pour les clients avec le GTFS dâorigine non modifiĂ© (sansTripModifications). - Fournir un TripUpdate avec un
ModifiedTripSelectorest le seul moyen de crĂ©er des prĂ©dictions aux arrĂȘts de remplacement.
- Lorsque TripUpdate fait rĂ©fĂ©rence au voyage de remplacement, lâapplication rĂ©utilisatrice doit se comporter comme si le GTFS statique aurait Ă©tĂ© modifiĂ© avec les TripModifications (par exemple
- Si aucun TripUpdate de ce type nâest trouvĂ©, les TripUpdates pour le
trip_iddâorigine sâappliqueront au voyage modifiĂ©.- Dans ce cas, les informations GTFS statiques utilisĂ©es doivent provenir du GTFS statique avant lâapplication de toute TripModifications.
- Des informations en temps rĂ©el peuvent ĂȘtre disponibles sur les arrĂȘts communs entre le trajet prĂ©cĂ©dent et le nouveau trajet modifié ; cependant, aucune ETA ne serait disponible aux arrĂȘts de remplacement.
Modification¶
Un message Modification dĂ©crit les modifications apportĂ©es Ă chaque trajet concernĂ© Ă partir de start_stop_selector. Il peut y avoir zĂ©ro, un ou plusieurs temps dâarrĂȘt remplacĂ©s par une « Modification». Les Ă©tendues des modifications DOIT pas se chevaucher. Les travĂ©es ne peuvent pas ĂȘtre contiguĂ«s ; dans ce cas, les deux modifications DOIT ĂȘtre fusionnĂ©es en une seule. Ces horaires dâarrĂȘts sont remplacĂ©s par un nouveau temps dâarrĂȘt pour chaque arrĂȘt de remplacement dĂ©crit par replacement_stops.
La sĂ©quence de replacement_stops peut ĂȘtre de longueur arbitraire. Par exemple, 3 arrĂȘts pourraient ĂȘtre remplacĂ©s par 2, 4 ou 0 arrĂȘts selon la situation.
Un exemple montrant lâeffet dâune modification sur un voyage particulier. Cette modification peut Ă©galement sâappliquer Ă plusieurs autres trajets.
Les dĂ©lais de dĂ©tour propagĂ©s affectent tous les arrĂȘts suivant la fin dâune modification. Si un trajet a plusieurs modifications, les retards sont accumulĂ©s.
ReplacementStop¶
Chaque message ReplacementStop dĂ©finit un arrĂȘt qui sera dĂ©sormais visitĂ© par le voyage, et spĂ©cifie Ă©ventuellement le temps de trajet estimĂ© jusquâau arrĂȘt. Le message ReplacementStop est utilisĂ© pour construire le stop_time planifiĂ© pour lâarrĂȘt.
Lorsque travel_time_to_stop est spĂ©cifiĂ©, le arrival_time est calculĂ© Ă partir dâun arrĂȘt de rĂ©fĂ©rence dans le trajet dâorigine, plus le dĂ©calage dans travel_time_to_stop. Sinon, le arrival_time peut ĂȘtre interpolĂ© en fonction de la durĂ©e totale de la modification dans le voyage dâorigine.
Le departure_time est toujours égal au arrival_time.
Les champs facultatifs de stop_times.txt dans la spécification (CSV) GTFS sont tous définis sur leurs valeurs par défaut.
Si une modification affecte le premier arrĂȘt du trajet, cet arrĂȘt sert Ă©galement dâarrĂȘt de rĂ©fĂ©rence de la modification.