Startside/Guides/Udviklere
Udviklere

GTFS, GTFS-RT og GBFS: Hvad er forskellen?

Sammenlign GTFS, GTFS-RT og GBFS for at vælge dine mobilitetsdata: planlagte tidsplaner, opdaterede informationer, stationer og delebiler.

By ROOTE·7 min læsning
GTFS, GTFS-RT og GBFS: Hvad er forskellen?
Hver tur begynder i nærheden.

Det væsentlige på få sekunder

GTFS Schedule beskriver den planlagte transporttilbud. GTFS Realtime, ofte kaldet GTFS-RT, formidler opdaterede serviceinformationer. GBFS beskriver dele-mobilitetstjenester, herunder stationer og tilgængelige køretøjer via offentliggjorte feeds. Vælg format ud fra hvilken problemstilling din applikation skal løse.

GTFS Schedule beskriver den planlagte transporttilbud. GTFS Realtime, ofte kaldet GTFS-RT, formidler opdaterede serviceinformationer. GBFS beskriver dele-mobilitetstjenester, herunder stationer og tilgængelige køretøjer via offentliggjorte feeds. Vælg format ud fra hvilken problemstilling din applikation skal løse.

Disse formater organiserer data; de garanterer ikke tilgængelighed overalt eller kvaliteten af hver feed.

GTFS til at repræsentere det planlagte tilbud

Et GTFS Schedule-sæt samler tabeldatafiler der beskriver blandt andet operatører, stoppesteder, ruter, afgange og deres passager. Kalendere angiver hvilke dage der gælder. Filerne knyttes sammen via id'er. GTFS Schedule reference.

Det gør det muligt at besvare spørgsmål som „hvor er dette stoppested?“ eller „hvilken passage er planlagt for denne service?“. For at udnytte en tidsplan skal du fortolke kalenderen og sammenhænge mellem filer.

Det er derfor ikke nok kun at læse en liste over stoppesteder for at genskabe passagerne. Omvendt kan en positionsangivelse af et stoppested være nyttig uden at vise tidsplaner.

GTFS-RT til opdatering af serviceinformationer

GTFS Realtime kan levere opdateringer af afgange, køretøjspositioner og advarsler. Afgangsopdateringer vedrører passager og ændringer i service. Feeds bruger Protocol Buffers, et struktureret serialiseringsformat. Introduktion til GTFS Realtime.

En udbyder kan offentliggøre visse kategorier uden at levere alle andre. Tilstedeværelsen af en positions-feed garanterer ikke estimater for alle stoppesteder.

For brugerfladen bør du skelne mellem planlagt passage og det opdaterede estimat. Vores guide teoretiske og realtidsplaner forklarer denne forskel fra brugerens synspunkt.

GBFS til dele-mobilitet

GBFS bruger JSON-feeds til at beskrive en dele-mobilitetstjeneste. Afhængigt af systemet og versionen kan de angive stationer, deres status, køretøjer og andre servicens karakteristika. Dokumentationen skelner særligt mellem stationoplysninger og tilgængelighedsstater. GBFS-dokumentation.

Adskil i din applikation de relativt stabile placeringer fra de hurtigt skiftende tilgængelighedstilstande. Bevar versionsnummeret og den relevante tidsstempling ved fortolkning.

En tilgængeligheds-feed er ikke en API til reservation eller oplåsning. Den hjælper med at finde tilbud; selve udlejningen håndteres af den respektive tjeneste.

Sammenlign efter brugstilfælde

Behov Format der bør overvejes
Beskrive planlagte stoppesteder og ruter GTFS Schedule
Fortolke planlagte passager og servicedage GTFS Schedule
Opdatere passager eller modtage serviceoplysninger GTFS-RT, afhængigt af udgivne feeds
Lokalisere stationer eller køretøjer til dele-mobilitet GBFS, afhængigt af offentliggjorte data

Designeksempel: et kort viser sporvognsstoppesteder og cykelstationer. Det bruger strukturelle data til lokationer og opdaterede statusser for cyklernes tilgængelighed. De to lag har forskellige behov for caching og opdatering.

Forudse begrænsningerne ved hver kilde

Kontroller versioner, valgfrie felter, dækning og brugsrettigheder. Et id giver kun mening i sin kontekst: to udbydere kan anvende identiske strenge til forskellige enheder.

Forbered dig også på manglende eller forældede data. En tom liste fra en utilgængelig feed bør ikke vises som fravær af service. Undgå at erstatte uvidenhed tavst med nul.

Brug direkte feeds eller en API

Direkte integration overlader ansvaret for at samle, validere og fortolke kilder til dig. En API kan tilbyde en fælles kontrakt, men du skal altid læse dens dækning, advarsler og betingelser.

For et første ROOTE-brugstilfælde, se hvordan man søger efter nærliggende stoppesteder med en API. Start med dit interfacebehov, og tjek dernæst de faktiske tilgængelige felter.

For udviklereROOTE Mobility API

Mobilitet omkring et punkt.
Direkte i din app.

  • Søg
    omkring en position
  • Få adgang til
    mobilitetsdata
  • Integrer i
    din applikation

Gå fra kort til data: søg mobilitetsmuligheder og -tjenester i nærheden med ROOTE API.

Læs uddrag og vælg en arkitektur

I GTFS Schedule forbinder et uddrag af stop_times.txt en kørsel, et stop og et planlagt passager. Det forenklede eksempel nedenfor er pædagogisk: det udgør ikke et komplet GTFS datasæt, og dets identifikatorer skal knyttes til trips.txt, stops.txt og kalendere.

For GTFS Realtime, søg efter den relevante enhed: en TripUpdate kan opdatere et passager, en VehiclePosition beskriver en position, og en Alert videregiver servicemeddelelser. En køretøjsposition er ikke automatisk et estimat af ankomsttid. Det overførte format er Protocol Buffers; en JSON-repræsentation til diagnosticering er ikke den binære referencestream.

I GBFS beskriver station_information stationerne, mens station_status beskriver deres offentlige status. Navne på visse tællere og tilgængelige filer varierer efter version. Det følgende JSON-uddrag illustrerer GBFS 2.3 og felterne num_bikes_available og num_docks_available; kontroller versionen, før du bruger et eksempel.

Et kort med lokaliteter kan starte med strukturelle data. En skærm med kommende afgange kræver derefter de tilsvarende opdateringer og en eksplicit planlagt back-up. En skærm med tilgængelige cykler skal håndtere tællere, lejevilkår og tidsmæssig validitet. Disse tre skærme deler ikke automatisk samme cache-politik.

# 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
}

Formatering af cykeltilgængelighed og dens aktualitet

Vælg et API eller en MCP til dit produkt

Ofte stillede spørgsmål

Indeholder GTFS automatisk realtidsinformation?

Nej. GTFS Schedule repræsenterer det planlagte tilbud; opdaterede informationer leveres via andre feeds, især GTFS-RT.

Tillader GBFS at låse en cykel op?

Det beskriver servicen og dens offentlige data. Udlejning håndteres via operatørens muligheder.

Sikrer et standardformat fuld dækning?

Nej. Formatet definerer en struktur; dækning og offentliggjorte informationer afhænger af kilderne.

Hvad med at kigge omkring dig?

Udforsk dit kvarter med ROOTE og find tilgængelige oplysninger til at planlægge din tur.

Udforsk ROOTE-kortet ↗