Startpagina/Gidsen/Ontwikkelaars
Ontwikkelaars

GTFS, GTFS-RT en GBFS: wat zijn de verschillen?

Vergelijk GTFS, GTFS-RT en GBFS om uw mobiliteitsdata te kiezen: geplande dienstregelingen, actuele informatie, stations en gedeelde voertuigen.

By ROOTE·7 minuten leestijd
GTFS, GTFS-RT en GBFS: wat zijn de verschillen?
Elke rit begint dichtbij.

Het belangrijkste in enkele seconden

GTFS Schedule beschrijft het geplande vervoeraanbod. GTFS Realtime, vaak GTFS-RT genoemd, levert actuele informatie over de dienst. GBFS beschrijft gedeelde mobiliteitsdiensten, inclusief hun stations en beschikbare voertuigen volgens gepubliceerde feeds. Kies het formaat vanuit de vraag die uw applicatie moet oplossen.

GTFS Schedule beschrijft het geplande vervoeraanbod. GTFS Realtime, vaak GTFS-RT genoemd, levert actuele informatie over de dienst. GBFS beschrijft gedeelde mobiliteitsdiensten, inclusief hun stations en beschikbare voertuigen volgens gepubliceerde feeds. Kies het formaat vanuit de vraag die uw applicatie moet oplossen.

Deze formaten structureren de data; ze garanderen noch de beschikbaarheid overal, noch de kwaliteit van elke feed.

GTFS om het geplande aanbod te representeren

Een GTFS Schedule set bevat tabelbestanden die o.a. de vervoerders, haltes, lijnen, ritten en doorkomsten beschrijven. Kalenders geven de relevante dagen aan. Bestanden zijn gekoppeld via identifiers. Referentie GTFS Schedule.

Het stelt vragen als "waar is deze halte?" of "welke doorkomst is gepland voor deze dienst?" te beantwoorden. Om een dienstregeling te gebruiken, moet u de kalender en de relaties tussen bestanden interpreteren.

Alleen een lijst haltes lezen is dus niet genoeg om de passages te reconstrueren. Omgekeerd kan een haltepositie nuttig zijn zonder dienstregelingen te tonen.

GTFS-RT om de dienstinformatie te actualiseren

GTFS Realtime kan updates van ritten, voertuigposities en waarschuwingen leveren. Rittenupdates betreffen vooral passages en dienstwijzigingen. De feeds gebruiken Protocol Buffers, een gestructureerd serialisatieformaat. Introductie GTFS Realtime.

Een aanbieder kan bepaalde categorieën publiceren zonder alle andere te leveren. De aanwezigheid van een positietoevoer garandeert geen schattingen voor alle haltes.

Voor de interface maak onderscheid tussen de geplande passage en de geactualiseerde schatting. Onze gids theoretische dienstregelingen en realtime legt dit verschil uit vanuit het gebruikersperspectief.

GBFS voor gedeelde mobiliteit

GBFS gebruikt JSON-feeds om een gedeelde mobiliteitsdienst te beschrijven. Afhankelijk van het systeem en de versie kunnen deze feeds informatie geven over stations, hun status, voertuigen en andere kenmerken van de dienst. De documentatie onderscheidt vooral stationinformatie en beschikbaarheidsstatussen. Documentatie GBFS.

Schep in uw applicatie een onderscheid tussen relatief stabiele locaties en snel veranderende staten. Bewaar de formatversie en relevante timestamp bij interpretatie.

Een beschikbaarheidsfeed is geen reserverings- of ontgrendel-API. Het helpt het aanbod te ontdekken; het verhuurproces valt onder de betreffende dienst.

Vergelijk op basis van gebruikssituatie

Behoefte Te bekijken formaat
Geplande haltes en lijnen beschrijven GTFS Schedule
Geplande passages en dienstdagen interpreteren GTFS Schedule
Passages actualiseren of dienstinformatie ontvangen GTFS-RT, afhankelijk van gepubliceerde feeds
Stations of gedeelde voertuigen lokaliseren GBFS, afhankelijk van gepubliceerde data

Ontwerpexample: een kaart toont tramhhaltes en fietsdeelsystemen. Het gebruikt structurele data voor locaties en actuele staten voor beschikbaarheid van fietsen. De twee lagen vragen om verschillende caching en updatestrategieën.

Houd de grenzen van elke bron in de gaten

Controleer versies, optionele velden, dekking en gebruiksrechten. Een identifier is alleen zinvol in context: twee aanbieders kunnen dezelfde string gebruiken voor verschillende entiteiten.

Reken ook op ontbrekende of verouderde data. Een lege lijst van een onbeschikbare feed mag niet als ontbreken van dienst worden weergegeven. Vermijd onbekende informatie stilzwijgend door nul te vervangen.

Feeds direct gebruiken of via een API

Directe integratie laat u verantwoordelijk voor het verzamelen, valideren en interpreteren van bronnen. Een API kan een gemeenschappelijk contract bieden, maar u moet altijd de dekking, waarschuwingen en voorwaarden lezen.

Voor een eerste ROOTE use case, zie hoe haltes in de buurt te zoeken met een API. Begin met de behoefte van uw interface en controleer de daadwerkelijk beschikbare velden.

Voor ontwikkelaarsROOTE Mobility API

Mobiliteit rond een punt.
Direct in je app.

  • Zoeken
    rond een locatie
  • Toegang tot
    mobiliteitsdata
  • Inbouwen in
    je app

Ga van kaart naar data: zoek mobiliteit en diensten in de buurt met de ROOTE API.

Fragments lezen en een architectuur kiezen

In GTFS Schedule verbindt een fragment van stop_times.txt een rit, een halte en een geplande passage. Het onderstaande verkorte voorbeeld is ter illustratie: het is geen volledige GTFS-set en de identificaties moeten gekoppeld worden aan trips.txt, stops.txt en de kalenderbestanden.

Voor GTFS Realtime zoekt u naar de nuttige entiteit: een TripUpdate kan een passage actualiseren, een VehiclePosition beschrijft een positie en een Alert geeft een service-informatie door. Een voertuigpositie is niet automatisch een aankomstinschatting. Het verzonden formaat is Protocol Buffers; een JSON-weergave voor diagnose is niet de binaire referentiestroom.

In GBFS beschrijft station_information de stations terwijl station_status hun gepubliceerde status vermeldt. De namen van sommige tellers en beschikbare bestanden variëren per versie. Het onderstaande JSON-fragment illustreert GBFS 2.3 en de velden num_bikes_available en num_docks_available; controleer de versie vóór het hergebruiken van een voorbeeld.

Een kaart met locaties kan beginnen met structurele data. Een scherm met aankomende passages vereist vervolgens de bijbehorende updates en een expliciet geplande fallback. Een scherm met beschikbare fietsen moet tellers, verhuurvoorwaarden en tijdsvaliditeit beheren. Deze drie schermen delen niet automatisch hetzelfde cachebeleid.

# Extrait pédagogique de stop_times.txt
trip_id,arrival_time,departure_time,stop_id,stop_sequence
trip_demo,08:10:00,08:10:00,stop_demo,1

# Extrait pédagogique de station_status en GBFS 2.3
{
  "station_id": "station_demo",
  "num_bikes_available": 3,
  "num_docks_available": 7,
  "is_installed": true,
  "is_renting": true,
  "is_returning": true,
  "last_reported": 1720000000
}

Het beschikbaarheid van een fiets en de actualiteit formatteren

Kies een API of MCP voor uw product

Veelgestelde vragen

Bevat GTFS automatisch realtime data?

Nee. GTFS Schedule representeert het geplande aanbod; actuele informatie valt onder andere feeds, vooral GTFS-RT.

Stelt GBFS in staat een fiets te ontgrendelen?

Het beschrijft de dienst en openbare data. Verhuur gebeurt via de mogelijkheden van de aanbieder.

Garandeert een standaard formaat volledige dekking?

Nee. Het formaat bepaalt een structuur; dekking en gepubliceerde informatie hangen van de bronnen af.

Wat als je eens om je heen kijkt?

Ontdek je buurt met ROOTE en vind beschikbare informatie om je verplaatsing voor te bereiden.

Verken de ROOTE kaart ↗