Detta inlägg är gammalt och kan innehålla inaktuell information.

GTFS calendar/service_id

Hej!

Jag har en fråga angående datat i GTFS API:t. Tittar man i filen calendar.txt så kan man se vilka dagar en tur gäller för (inklusive start/slut datum). Så t.ex. kan man hämta ut service_id för en speciell tur från filen trips.txt, och sedan söka efter det id:t i calendar.txt. Men då har vi märkt att det är ganska många service_id:s som finns i trips.txt men som inte finns i calendar.txt.

Går det då inte att få reda på vilka dagar/datum den turen gäller för? Eller kan man få ut vilka dagar/datum som gäller på ett annat sätt?

Mvh
/ Peter

Kommentarer

  • Hej!

    Har du något service_id som finns i trips.txtmen som inte finns i calendar.txt?

    /Martin

    Team Trafiklab
  • Hej!

    Ja jag testade igen nu och här kommer några exempel:

    Jag utgår först ifrån agency_id (testade med agency_id=257). Sedan letar jag reda på alla route_id som har detta agency_id i filen routes.txt. Därefter använder jag route_id för att leta reda på alla trip_id i filen trips.txt (då får jag också fram service_id för den turen). Detta service_id använder jag sedan för att leta i calendar.txt för att få ut vilka dagar som gäller. Då får jag träff på vissa och vissa finns inte. Dessa är exempel på service_id som inte finns:

    Exempel 1:
    route_id = 257_20_BLT
    trip_id = 53627914
    service_id = 447

    Exempel 2:
    route_id = 257_51_BLT
    trip_id = 53627984
    service_id = 484

    Exempel 4:
    route_id = 257_3_BLT
    trip_id = 53627809
    service_id = 582

    / Peter

  • Hej!

    De som inte finns i filen calendar.txt finner du i filen calendar_dates.txt. Läs mer om varför visa läggs i calendar.txt och vissa i calendar_dates.txt vid de första punkterna https://developers.google.com/transit/gtfs/refe...

    Här kan du se en bra överblick över gtfs filerna http://openplans.org/wp-content/uploads/2012/08...

    Hoppas det hjälper.

    /Martin

    Team Trafiklab
  • Hej,

    Ja då börjar jag förstå lite mer. Tack så mycket för bra support!

    Så om man t.ex. använder mitt exempel 1 och plockar ut service_id = 447 och söker efter det i calendar_dates.txt så hittar jag följande rader:

    447,20140321,1
    447,20140328,1
    447,20140404,1
    447,20140411,1
    447,20140425,1
    447,20140502,1
    447,20140509,1
    447,20140516,1
    447,20140523,1
    447,20140530,1
    447,20140613,1

    Där ser man att exception_type = 1, och om jag tolkar dokumentationen rätt så går denna tur enbart dessa datum? Om det hade stått en 2:a så betyder det att turen inte körs dessa datum?
    Men man kan då alltså inte få ut vilka dagar som är giltiga/ogiltiga (som det står i calendar.txt) utan bara vilka datum där det finns en avvikelse?

    Mvh
    / Peter

  • Hej!

    Du har förstått rätt att 447 enbart går dessa datum.

    /Martin

    Team Trafiklab

Kommentera eller skriv ett nytt inlägg

Ditt namn och inlägg kan ses av alla. Din e-post visas aldrig publikt.