Google Transit / GTFS Schedule – Referenz und Unterschiede

Auf dieser Seite werden die Hauptunterschiede zwischen der offiziellen GTFS Schedule- und der Google Transit-Implementierung der Spezifikation in den folgenden Bereichen beschrieben:

  • Ignorierte offizielle Spezifikationen: Diese Felder sind Teil der offiziellen GTFS-Version. In Google Transit werden diese Daten fehlerfrei aufgenommen, aber nicht proaktiv verwendet.

  • Abweichende Interpretation: Diese Felder enthalten die Teile der offiziellen GTFS-Version, die in Google Transit anders als in der ursprünglichen Definition interpretiert werden.

  • Experimentelle Unterstützung: Diese Felder befinden sich in der Google Transit-Implementierung in der Testphase. Wenn Sie ein neues experimentelles Feld einbinden möchten, wenden Sie sich an das Google Transit-Team.

  • Von Google Transit unterstützte Erweiterung: Dieser Teil ist nicht in der offiziellen GTFS-Version enthalten. Die von Google Transit unterstützte Erweiterung umfasst sowohl öffentliche als auch spezifische Google Transit-Erweiterungen. Jeder Partner kann diese Informationen in seinem Feed an Transit senden.

Static Transit

In den folgenden Abschnitten werden die Hauptunterschiede zwischen der offiziellen GTFS-Version des Static-Feeds und der Google Transit-Implementierung beschrieben.

Ignorierte offizielle Spezifikationen in Static-Feeds

Einige der offiziellen Spezifikationen, die in Google Transit ignoriert werden, befinden sich in der Testphase. Weitere Informationen finden Sie unter gtfs.org.

In Tabelle 1 sind GTFS-Dateien aufgeführt, die in Static-Feeds nicht von Google Transit unterstützt werden. Auch die in diesen Dateien definierten Felder sind nicht zulässig.

Tabelle 1. Nicht unterstützte GTFS-Dateien in Static-Feeds
areas.txt
fare_leg_rules.txt
fare_products.txt
fare_transfer_rules.txt
levels.txt
stop_areas.txt

In Tabelle 2 sind alle gemäß GTFS definierten Felder aufgeführt, die von Google Transit in den Static-Feeds ignoriert werden.

Tabelle 2 Ignorierte GTFS-Felder in Static-Feeds
Dateiname In GTFS definiertes, ignoriertes Feld Feldtyp
fare_attributes.txt payment_method Enum
feed_info.txt default_lang Sprachcode
feed_info.txt feed_publisher_name Text
pathways.txt max_slope Gleitkommazahl
routes.txt continuous_drop_off Enum
routes.txt continuous_pickup Enum
routes.txt network_id ID
routes.txt route_desc Text
routes.txt route_sort_order Nicht negative Ganzzahl
stops.txt level_id ID
stops.txt stop_desc Text
stops.txt stop_url URL
stops.txt tts_stop_name Text
trips.txt bikes_allowed Enum

Abweichende Interpretation in Static-Feeds

Bestimmte gemäß GTFS definierte Felder werden in Google Transit akzeptiert, aber anders interpretiert.

In Tabelle 3 sind die Felder in Static-Feeds aufgeführt, die von Google Transit anders implementiert werden als in GTFS beschrieben.

Table 3 Anders implementierte Felder im Static-Feed
Dateiname In GTFS definiertes Feld Feldtyp Für Google Transit erforderlich? Google Transit-Implementierungsdetails
fare_attributes.txt transfers Enum Erforderlich

Google Transit-Erweiterung.

In der öffentlichen GTFS-Version sind nur Werte von 0 bis 2 zulässig. Google Transit unterstützt Werte von 0 bis 5.

Verwenden Sie dieses Feld, um die maximale Anzahl von Umstiegen festzulegen, die bei dem Fahrpreis zulässig sind. Nicht enthalten sind Umstiege innerhalb eines Blocks (sogenannte Blockfahrten). Wenn Sie keine Beschränkungen bei der Anzahl der Umstiege für einen bestimmten Preis festlegen möchten, lassen Sie das Feld transfers leer.

pathways.txt pathway_mode Enum Optional Wenn das Feld pathway_mode angegeben wurde, aber leer ist, wird es von Google Transit akzeptiert und als „Unbekannt“ behandelt.
stop_times.txt arrival_time Zeit Bedingt erforderlich Stunden sind auf Werte von 00 bis 99 beschränkt, was für dreitägige Reisen mehr als ausreichend ist.
transfers.txt transfer_type Enum Erforderlich

Die Werte 4 und 5 werden nicht unterstützt und deshalb ignoriert.

In Google Transit werden die Werte 0, 1, 2 und 3 unterstützt.

trips.txt block_id ID Optional Weitere Informationen finden Sie unter Beispiel für eine Blockfahrt.

Experimentelle Unterstützung in Static-Feeds

Wenn Sie Unterstützung beim Einbinden neuer experimenteller Felder in dieser Kategorie benötigen, wenden Sie sich an das Google Transit-Team.

Von Google Transit unterstützte Erweiterungen in Static-Feeds

In Tabelle 4 finden Sie Informationen zu Google Transit-Erweiterungen. Diese Felder sind in der offiziellen GTFS-Version nicht enthalten.

Tabelle 4 Unterstützte Erweiterungen des Static-Feeds
Dateiname Feld Feldtyp Für Google Transit erforderlich? Google Transit-Implementierungsdetails
fare_attributes.txt ic_price Gleitkommazahl Optional

Diese Google Transit-Erweiterung ist nur für Partner in Japan verfügbar.

Das Feld ic_price steht für den ermäßigten Betrag, der für die Fahrt mit einer Smartcard zu bezahlen ist. Wenn für diesen Preis keine Ermäßigungen angegeben werden oder die Smartcard nicht unterstützt wird, muss das Feld ic_price den Wert -1 enthalten.

fare_rules.txt contains_route_id ID Optional

Google Transit-Erweiterung.

Dieser Preis gilt nur für Fahrten auf ganz bestimmten Routen. Diese werden durch den Wert route_id bestimmt, und zwar in allen Zeilen für die Kombination der Spalten fare_id, origin_id und destination_id.

Wenn die Spalte contains_route_id fehlt oder bei allen Werten für diesen Preis null angegeben ist, ist der Preis in diesem Parameter nicht beschränkt. Falls das Feld contains_route_id für einen Preis angegeben ist, muss das Feld route_id leer sein.

routes.txt checkin_duration Ganzzahl Optional

Google Transit-Erweiterung.

Im Feld checkin_duration ist angegeben, wie viele Sekunden eine Person vor der geplanten Abfahrt ankommen sollte, um Zeit für das Vorzeigen des Tickets und das Einsteigen zu haben.

Wenn der Fahrgast umsteigen muss, um den Zielort zu erreichen, wird der Wert checkin_duration mit der definierten Umsteigezeit überschrieben.

Der Wert checkin_duration ist nur eine Empfehlung, die normalerweise vom Betreiber kommt. Er entspricht möglicherweise nicht dem absolut letzten Zeitpunkt, in dem ein Fahrgast noch ankommen und einsteigen kann.

routes.txt route_type Enum Erforderlich

Google Transit-Erweiterung.

Informationen dazu, wie in Google Transit die GTFS-konformen Optionen für den Wert route_type erweitert werden, finden Sie unter Erweiterte GTFS-Routentypen.

stop_times.txt stop_direction_name Text Optional

Google Transit-Erweiterung.

Im Feld stop_direction_name wird die Fahrtrichtung für die Fahrgäste angegeben. Die Richtung wird als direction_name-Wert der Abfahrt von dieser Haltestelle gespeichert.

Wenn das Feld stop_direction_name leer ist, wird stattdessen das Google Transit-Feld trip_direction_name verwendet. Sind die Felder trip_direction_name und stop_direction_name leer, werden sie auch vom Google Transit-Importprogramm leer gelassen. In diesem Fall können Partner stattdessen den Wert stop_headsign oder trip_headsign verwenden. Bei den Werten des Felds stop_direction_name wird die Groß-/Kleinschreibung normalisiert.

stops.txt signposted_as Text Optional

Google Transit-Erweiterung.

Im Feld signposted_as steht der Text genau so, wie er auf der Anzeige am Bus-/Bahnsteig zu sehen ist. Beispiele: „Richtung Hauptbahnhof“, „Garching-Hochbrück“.

Das GTFS-Feld platform_code und das von Google Transit unterstützte Feld signposted_as können gleichzeitig festgelegt werden.

Die Felder platform_code und signposted_as unterscheiden sich unter anderem in folgenden Punkten:

  • Länge: Das Feld platform_code enthält normalerweise eine Zahl oder einen Buchstaben wie 2 oder C.
  • Sprache: Für das Feld platform_code ist keine Sprache definiert, aber signposted_as-Werte können übersetzt werden.
  • Beständigkeit: Das Feld platform_code ändert sich viel seltener als das Feld signposted_as.
stops.txt vehicle_type Ganzzahl Optional

Google Transit-Erweiterung.

Mit dem Feld vehicle_type wird der Fahrzeugtyp angegeben, der an einer Haltestelle verwendet wird. Es werden HVT-Codes (Hierarchical Vehicle Type, hierarchischer Fahrzeugtyp) akzeptiert. Die HVT-Werte werden vom europäischen TPEG-Standard (Transport Protocol Experts Group) abgeleitet.

agency.txt ticketing_deep_link_id ID Optional

Google Transit-Fahrkartenerweiterung.

In der Datei agency.txt steht das Feld ticketing_deep_link_id für den Deeplink, über den die Fahrten dieses Betreibers gebucht werden.

routes.txt ticketing_deep_link_id ID Optional

Google Transit-Fahrkartenerweiterung.

In der Datei routes.txt steht das Feld ticketing_deep_link_id für den Deeplink, über den die Fahrten für diese Route gebucht werden.

stop_times.txt ticketing_stop_time_id ID Optional

Google Transit-Fahrkartenerweiterung.

Ist das Feld ticketing_stop_time_id in der Datei stop_times.txt vorhanden, wird damit die Kennung überschrieben, die der Haltestellenzeit für die Fahrkartenausgabe über Deeplinks entspricht.

stop_times.txt ticketing_type Enum Optional

Google Transit-Fahrkartenerweiterung.

Mit dem Feld ticketing_type wird die für diese Haltestellenzeit geltende Art der Fahrkartenausgabe angegeben.

In Google Transit werden die folgenden Werte akzeptiert:

  • Empty: Standardeinstellung gemäß Definition für die Fahrt.
  • 0: Nur verfügbar, wenn es für den Betreiber oder die Route einen aktivierten Deeplink für die Fahrkartenausgabe gibt.
  • 1: Nicht verfügbar.
ticketing_deep_links.txt android_intent_uri URI Optional

Google Transit-Fahrkartenerweiterung.

Das Feld android_intent_uri steht für den Intent-URI, der für Deeplinks unter Android verwendet wird.

ticketing_deep_links.txt ios_universal_link_url URL Optional

Google Transit-Fahrkartenerweiterung.

Das Feld ios_universal_link_url steht für die universelle Link-URL, die für Deeplinks unter iOS verwendet wird.

ticketing_deep_links.txt ticketing_deep_link_id ID Erforderlich

Google Transit-Fahrkartenerweiterung.

Das Feld ticketing_deep_link_id steht für die Kennung des Deeplinks.

ticketing_deep_links.txt web_url URL Optional

Google Transit-Fahrkartenerweiterung.

Das Feld web_url steht für die URL, die für Deeplinks im Web verwendet wird.

ticketing_identifiers.txt agency_id ID Erforderlich

Google Transit-Fahrkartenerweiterung.

Zum Angeben des Betreibers der Haltestelle, für die das Standardfeld ticketing_stop_id definiert wurde, enthält das Feld agency_id die ID aus der GTFS-Datei agency.txt.

ticketing_identifiers.txt stop_id ID Erforderlich

Google Transit-Fahrkartenerweiterung.

Zum Angeben der Haltestelle, für die das Standardfeld ticketing_stop_id definiert wurde, enthält das Feld stop_id die ID aus der GTFS-Datei stops.txt.

ticketing_identifiers.txt ticketing_stop_id ID Erforderlich

Google Transit-Fahrkartenerweiterung.

Das Feld ticketing_stop_id enthält die ID für die Fahrkartenausgabe, die auf die Haltestelle angewendet wird. Optional wird die ID von einem Betreiber bestimmt.

trips.txt exceptional Enum Optional

In diesem Feld werden Sonderfahrten angegeben. Sie finden außerhalb des normalen Fahrplans statt oder weichen aufgrund von besonderen Veranstaltungen oder geplanten Störungen wie z. B. Gleisarbeiten von der üblichen Route ab.

In Google werden die folgenden Werte akzeptiert:

  • 0. Regulärer Fahrplan
  • 1. Außerplanmäßiger Betrieb. Darunter fallen z. B. Fahrten, die aufgrund von besonderen Veranstaltungen zusätzlich angeboten werden, oder solche, die wegen geplanter Störungen von der normalen Route abweichen.
trips.txt ticketing_trip_id ID Optional

Google Transit-Fahrkartenerweiterung.

Wenn das Feld ticketing_trip_id vorhanden ist, überschreibt sein Wert das Feld trip_id, um für die Fahrt die Fahrkartenausgabe über Deeplinks festzulegen.

trips.txt ticketing_type Enum Optional

Google Transit-Fahrkartenerweiterung.

Im Feld ticketing_type wird die Art der Fahrkartenausgabe für diese Fahrt angegeben.

In Google Transit werden die folgenden Werte akzeptiert:

  • 0: Standardeinstellung. Nur verfügbar, wenn es für den Betreiber oder die Route einen aktivierten Deeplink für die Fahrkartenausgabe gibt.
  • 1: Nicht verfügbar.
translations.txt lang Sprachcode Optional

Google Transit-Erweiterung.

Das Feld lang ist in der offiziellen GTFS-Version nicht enthalten. Ist der Wert jedoch vorhanden, wird er in Google Transit verwendet.

Wenn Sie die Übersetzung für eine Wortgruppe angeben möchten, verwenden Sie das Feld lang. Es darf nicht leer sein oder den Wert und (eine nicht definierte Sprache) enthalten.

translations.txt trans_id ID Optional

Google Transit-Erweiterung.

Das Feld trans_id ist in der offiziellen GTFS-Version nicht enthalten. Ist der Wert jedoch vorhanden, wird er in Google Transit verwendet.

Verwenden Sie das Feld trans_id, um das ID-Token der Wortgruppe anzugeben, für die die Übersetzung zur Verfügung gestellt wird. Jede Zeile der Tabelle translations.txt bedeutet, dass der Ausdruck trans_id in der Sprache lang mit translation übersetzt wird.

trips.txt original_trip_id ID Optional

Google Transit-Erweiterung.

Wenn der Wert in der Datei trips.txt vorhanden ist, überschreibt er original_trip_id den Wert trip_id zur Verwendung für andere Systeme. Ein Beispiel hierfür ist der Realtime-Abgleich.

trips.txt trip_direction_name Text Optional

Google Transit-Erweiterung.

Im Feld trip_direction_name wird die Fahrtrichtung für die Fahrgäste angegeben. Der Wert in diesem Feld wird als direction_name jeder Fahrt gespeichert.

Wenn sich der Wert stop_direction_name in der Tabelle stop_times im Lauf der Fahrt ändert, wird möglicherweise der Wert trip_direction_name überschrieben.

Bei den Werten des Felds trip_direction_name wird die Groß-/Kleinschreibung normalisiert.

trips.txt vehicle_category_id ID Optional

Google Transit-Erweiterung.

In der Datei trips.txt wird im Feld vehicle_category_id das Fahrzeug angegeben, das für diese Fahrt vorgesehen ist. Ist das Feld in der Datei trips.txt vorhanden, wird damit der Wert vehicle_category_id in der Datei routes.txt überschrieben.