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 duTripDescriptor
de 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_id
sur les arrĂȘts de remplacement). - En fournissant dâun
ModifiedTripSelector
, les champstrip_id
,route_id
,direction_id
,start_time
,start_date
duTripDescriptor
DOIVENT ĂȘ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
ModifiedTripSelector
DEVRAIT Ă©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
ModifiedTripSelector
est 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_id
dâ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.