Przeniesienie blokowe, zwane też przeniesieniem na siedzenie, jest dostępne, gdy zestaw podróży spełnia te warunki:
- Podróże są następujące po sobie.
 - Oba przejazdy są realizowane tym samym pojazdem.
 - Podróże są obsługiwane z tą samą wartością 
block_idw plikutrips.txtw pliku danych o przejazdach. 
Wymagania wstępne
Aby Mapy Google mogły rozpoznać, że przeniesienie bloku między przejazdami jest możliwe, muszą być spełnione te wymagania wstępne:
- Podróże muszą mieć tę samą wartość 
block_idw polutrips.txt. Wskazuje to, że w przypadku tych przejazdów używany jest ten sam pojazd. - Podróże muszą odbywać się w tych samych dniach lub w dni następujących po sobie, jeśli podróż przekracza północ.
 - Podróże muszą być kolejne i nie mogą się nakładać.
 - Ostatni przystanek w przyjeździe i pierwszy przystanek w wyjeździe muszą być takie same (zalecane) lub fizycznie blisko siebie.
 
Aby włączyć przenoszenie bloków, użyj elementu block_id
Przejazdy blokowe mogą być realizowane między kolejnymi przejazdami na różnych trasach lub na tej samej trasie, jeśli jest to linia okrężna. W polu block_id możesz określić, które przejazdy znajdują się w jednym bloku i gdzie dostępne są przesiadki na inne miejsca.
Przykład 1. Blokowanie przejazdów w ramach zaplanowanych podróży
W tym przykładzie weź pod uwagę te wartości w każdym pliku:
trips.txt
route_id | 
      trip_id | 
      block_id | 
    
|---|---|---|
RouteA | 
      RouteATrip1 | 
      Block1 | 
    
RouteB | 
      RouteBTrip1 | 
      Block1 | 
    
stop_times.txt
trip_id | 
      arrival_time | 
      departure_time | 
      stop_id | 
      stop_sequence | 
    
|---|---|---|---|---|
RouteATrip1 | 
      12:00:00 | 
      12:01:00 | 
      A | 
      1 | 
    
RouteATrip1 | 
      12:05:00 | 
      12:06:00 | 
      B | 
      2 | 
    
RouteATrip1 | 
      12:15:00 | 
      C | 
      3 | 
    |
RouteBTrip1 | 
      12:18:00 | 
      C | 
      1 | 
    |
RouteBTrip1 | 
      12:22:00 | 
      12:23:00 | 
      D | 
      2 | 
    
RouteBTrip1 | 
      12:30:00 | 
      E | 
      3 | 
    
W tym przykładzie:
- Użytkownik, który wyszukuje trasę z przystanku A do przystanku E, jest kierowany na przystanek A o godzinie 12:00 na trasie A i ma pozostać w pojeździe, gdy dotrze do przystanku C po zakończeniu 
RouteATrip1. Dzieje się tak, ponieważ te same usługiRouteBTrip1są świadczone na trasie B. - Pasażerowie 
RouteATrip1, którzy chcą kontynuować podróż do przystanku na trasieRouteBTrip1, mogą pozostać w pojeździe. - Pasażerowie innych przejazdów w innych pojazdach na tych samych trasach nie mają tej opcji, ponieważ korzystają z różnych pojazdów na każdą podróż.
 
Przykład 2. Zablokuj przesiadki w przypadku podróży opartych na częstotliwości z dokładnymi godzinami
Blokowanie przejazdów jest obsługiwane tylko w przypadku przejazdów o określonej częstotliwości, które spełniają co najmniej jeden z tych warunków (oprócz wymagań wymienionych w sekcji Warunki wstępne):
- Jeśli przejazd jest okrężny, musi zaczynać się i kończyć na tym samym przystanku.
 - W pliku 
frequencies.txtwartość polaexact_timesmusi wynosić1. 
W tym przykładzie pokazano, jak ustawić wartości dla drugiego warunku:
trips.txt
route_id | 
      trip_id | 
      block_id | 
    
|---|---|---|
route1 | 
      route1_trip1 | 
      block_2 | 
    
route2 | 
      route2_trip1 | 
      block_2 | 
    
stop_times.txt
trip_id | 
      arrival_time | 
      departure_time | 
      stop_id | 
      stop_sequence | 
    
|---|---|---|---|---|
route1_trip1 | 
      08:00:00 | 
      08:04:00 | 
      stop1 | 
      1 | 
    
route1_trip1 | 
      08:10:00 | 
      08:14:00 | 
      stop2 | 
      2 | 
    
route1_trip1 | 
      08:20:00 | 
      stop3 | 
      3 | 
    |
route2_trip1 | 
      08:24:00 | 
      stop3 | 
      1 | 
    |
route2_trip1 | 
      08:30:00 | 
      08:34:00 | 
      stop4 | 
      2 | 
    
route2_trip1 | 
      08:40:00 | 
      08:44:00 | 
      stop5 | 
      3 | 
    
frequencies.txt
trip_id | 
      start_time | 
      end_time | 
      headway_secs | 
      exact_times | 
    
|---|---|---|---|---|
route1_trip1 | 
      08:00:00 | 
      08:20:00 | 
      600 | 
      1 | 
    
route2_trip1 | 
      08:24:00 | 
      08:44:00 | 
      600 | 
      1 | 
    
W tym przykładzie:
- Użytkownik, który wyszukuje trasę z 
stop1dostop5, jest kierowany dostop1o godz. 8:00route1. Użytkownik pozostaje w pojazdzie, gdy dociera dostop3po zakończeniuroute1_trip1. Dzieje się tak, ponieważ te same usługi pojazduroute2_trip1w domenieroute2. - Pasażerowie 
route1_trip1, którzy chcą kontynuować podróż do przystanku na trasieroute2_trip1, mogą pozostać w pojeździe. - Pasażerowie innych przejazdów w innych pojazdach na tych samych trasach nie mają tej opcji, ponieważ w przypadku każdej podróży korzystają z innych pojazdów.
 - Weźmy na przykład 
route1_trip1. Wartośćheadway_secsjest połową przedziału międzystart_timeaend_time. W tym przypadku oznacza to, że są 2 podróże. Więcej informacji o używaniu elementuheadway_secsznajdziesz w pliku referencyjnym GTFS Schedule na stronie gtfs.org. 
Blokowanie przenoszenia w linii pętli
Na linii okrężnej pierwszy i ostatni przystanek podróży są takie same i mają tę samą stop_id. Jest to wymagane zarówno w przypadku podróży o określonej częstotliwości, jak i z ustalonym harmonogramem.
O ile kolejne pętle mają tę samą block_id, blokowanie lub przesiadka na inne miejsce jest włączona, co pozwala pasażerom pierwszej podróży pozostać w pojazdzie, gdy kontynuuje on następną pętlę.
Prawidłowe bloki w plikach danych GTFS
Aby umożliwić przenoszenie bloków, musisz prawidłowo zdefiniować co najmniej 1 blok w pliku danych. Aby można było przejść weryfikację, przejazdy należące do tego samego bloku nie mogą się na siebie nakładać i muszą mieć ten sam route_type (metro, pociąg, autobus itp.).
Podróże mogą należeć do tego samego bloku, nawet jeśli odbywają się w różnych dniach. Jeśli w pliku danych statycznych zdefiniowano jakieś bloki, będą one widoczne w raporcie weryfikacji na karcie Przegląd.