Zum Inhalt springen

GTFS

General Transit Feed Specification (GTFS) ist ein von Google entwickeltes digitales Austauschformat für Fahrpläne des öffentlichen Personenverkehrs und dazugehörigen geografischen Informationen, wie z.B. Standorte von Haltestellen. Die Daten werden durch Transportunternehmen zur Verfügung gestellt und als gesammelte Datenbank auf der Open-Data Plattform öV-Schweiz im GTFS Format publiziert. Genutzt werden die Daten zur Entwicklung von Applikationen im Zusammenhang mit dem öffentlichen Verkehr, wie z.B. Fahrplanabfragen.

Im Gegensatz zu GTFS Realtime (GTFS RT) liefert GTFS Static, wie der Name schon sagt, nur statische Daten und keine Echtzeitdaten.

Mit dieser Static-Datei wird erstmals der gesamte öffentliche Verkehr eines Landes in einem einzigen Feed dargestellt.

Fachliche Beschreibung

GTFS Static wird anhand einer Reihe Text Files im ZIP Format bereitgestellt. Jedes File gibt Informationen zu einem bestimmten Aspekt der Transit-Informationen wie beispielsweise Haltestellen (stops.txt), Routen (routes.txt), Fahrten (trips.txt), Transportunternehmen (agency.txt) und weiteren Fahrplanrelevanten Daten. Einige Angaben sind notwendig um valide GTFS Daten bereitzustellen, andere sind optional und liefern nützliche Zusatzinformationen (wie z.B. Änderungen des Fahrplans an spezifischen Feiertagen = calendar_dates.txt).

Die folgende Graphik zeigt das Zusammenspiel der verschiedenen Informationen, wobei zurzeit nicht alle für den öV-Schweiz erfasst und im GTFS Format verfügbar sind:

Klassen GTFS Static
Klassen GTFS Static

Gehe zu Datensatz: https://opentransportdata.swiss/dataset/timetable-2017-gtfs

Wichtige Konzepte

  • GTFS Static: Publikation von statischen Transit-Informationen im GTFS Format.
  • GTFS Realtime:  Publikation von Echtzeit-Transit-Informationen als Anreicherung der statischen GTFS Daten, in der Form von Protocoll Buffers

Technische Aspekte

Struktur der Daten

Jedes File besteht aus kommagetrennten Text- und Zahlenreihen mit Feldern, welche zusammengesetzt die gesuchten Informationen liefern. Eine ausführliche Beschreibung der einzelnen Felder in den verschiedenen Files werden im Detail auf der folgenden Webseite erläutert: https://developers.google.com/transit/gtfs/reference/

Für den GTFS Export des öV-Schweiz werden zurzeit die folgenden Files bereitgestellt:

  • agency.txt.
  • calendar.txt.
  • calendar_dates.txt
  • feed_info.txt
  • routes.txt
  • stop_times.txt
  • stops.txt
  • transfers.txt (ist in Erarbeitung)
  • trips.txt

Nicht zur Verfügung gestellt werden: fare_attributes.txt, fare_rules.txt, feed_info.txt und frequencies.txt

 

Agency.txt

calendar.txt

calendar_dates.txt

feed_info.txt

 

routes.txt

Achtung:

  • „route_short_name“ wird in Kürze noch angepasst und enthält dann eine interne Darstellung der Verkehrsmittelart.
  • Einige Routen in GTFS haben eine Erweiterung „-Y“. Der Grund liegt darin, dass sie eine künstlich angelegte Liniennummer haben. Nur so kann „route_short_name“ gültig sein. Diese künstlichen Linien sollten nicht so den Benutzern angezeigt werden. Für Züge wird „trip_short_name“ die Zugnummer beinhalten.

Die Verkehrsmitteltexte, die zur Anwendung kommen werden (noch nicht umgesetzt):

Verkehrsmitteltexte

stop_times.txt

stops.txt

 

Die Steige müssen in GTFS als einzelne Halte modelliert werden. Ein Wechsel des Steigs ist dann ein Wechsel des Stops aus Sicht GTFS.

x2123

 

Das Beispiel „8500010“ (Basel SBB):

basel

Alle Halte von Basel haben einen gemeinsamen „Parent“ „8500010P“. Die einzelnen Gleise sind mit „:“ abgetrennt. Ein „Gleis“ kann auch ein Gleis+Sektoren sein (Bsp: „8500010:0:7CD“). Es gibt auch sehr komische Ergänzungen, wie „Bern Bfpl“ also „8507000:0:Bfpl“, wenn die RBS ihn für Bahnersatzbusse verwendet.

trips.txt

Achtung:

  • Für Züge wird „trip_short_name“ die Zugnummer beinhalten.

 

transfers.txt

Die Metabahnhöfe werden in Kürze im transfers.txt abgebildet sein.

Stabilität von Identifiern zwischen Versionen des Static Files

Jede Woche wird das GTFS Static neu erzeugt. Daher kann es sein, dass die „service_id“ und die „trip_id“ nicht identisch sind.

Wann gibt es neue GTFS Static Files?

Am Montag wird das neue HRDF publiziert. Am Dienstag folgt dann das GTFS. Am Mittwoch um 14:00 wird der GTFS-RT Feed umgestellt.

Interne Konsistenz eines GTFS Static Files

Wir bemühen uns, immer korrekte GTFS Static Files zu produzieren. Google schlägt vor, die interne Konsistenz mit dem FeedValidator zu testen. Leider kann die aktuelle Version mit der Grösse unserer Datei nicht umgehen. Ein anderes mögliches Werkzeug ist gtfstidy, das unter anderem eine Validierung vornehmen kann mit dem Parameter „-v“

Weiterführende Angaben

Weiterführende Angaben zu GTFS Static finden Sie auf der GTFS Entwicklerseite von Google: https://developers.google.com/transit/gtfs/

Diskussion beginnen auf disc.opentransportdata.swiss