Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • C chouette-core
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 36
    • Merge requests 36
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Infrastructure Registry
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Administrator
  • chouette-core
  • Wiki
  • GTFS Import

Last edited by Luc Donnet Oct 18, 2018
Page history
This is an old version of this page. You can view the most recent version or browse the history.

GTFS Import

Structure de l'import

L'import GTFS prend en entrée un zip contenant des fichiers csv.

Les fichiers csv pris en compte par l'import gtfs sont :

  • agencies.txt
  • stops.txt
  • routes.txt
  • trips.txt
  • stop_times.txt
  • calendars.txt
  • calendar_dates.txt

L'import ignorera les fichiers suivants

  • fare_attributes.txt
  • fare_rules.txt
  • shapes.txt
  • frequencies.txt
  • transfers.txt
  • feed_info.txt

Les fichiers doivent respecter le format des fichiers GTFS comme défini dans la documentation officielle.

Rappel de la documentation officielle google : https://developers.google.com/transit/gtfs/reference/

Des exemples de fichiers GTFS sont disponibles à l'adresse suivante : https://developers.google.com/transit/gtfs/examples/gtfs-feed

Traitement des fichiers

Les fichiers sont traités dans l'ordre suivant :

  • agencies.txt
  • stops.txt
  • routes.txt
  • calendars.txt
  • calendar_dates.txt
  • trips.txt
  • stop_times.txt

agencies.txt

Validation des données GTFS

Attributs obligatoires :

  • agency_id (l'attribut n'est pas obligatoire selon la norme gtfs, mais les Chouette::Companies sont créées à partir de cet identifiant)
  • agency_name
  • agency_url
  • agency_timezone

Conversion du modèle GTFS en modèle Chouette

Une Agency GTFS sera convertie en Company dans Chouette.

GTFS Agency Chouette::Company
agency_id registration_number
agency_name name
agency_url url
agency_timezone time_zone

stops.txt

Validation des données GTFS

Attributs obligatoires :

  • stop_id
  • stop_name
  • stop_lat
  • stop_lon

Conversion du modèle GTFS en modèle Chouette

Un Stop GTFS sera converti en StopArea dans Chouette.

GTFS Stop Chouette::StopArea
stop_id registration_number
stop_name name
stop_lat latitude
stop_lon longitude
location_type area_type

Le Chouette::StopArea aura par défaut un kind "Commercial" et un confirmed_at à l'heure de l'import. L'attribut GTFS parent_station permet de trouver le parent de l'arrêt qui lui sera associé.

Si l'attribut GTFS location_type est égal à "1" alors l'attribut Chouette area_type sera égal à "zdlp", sinon l'attribut area_type sera égal à "zdep".

routes.txt

Validation des données GTFS

Attributs obligatoires :

  • route_id
  • route_short_name
  • route_long_name

L'attribut route_type est obligatoire selon le profil GTFS mais n'est pas importé dans Chouette.

Conversion du modèle GTFS en modèle Chouette

Une Route GTFS sera convertie en Line Chouette.

GTFS Route Chouette::Line
route_id registration_number
route_short_name number
route_long_name name
route_long_name published_name
route_desc comment
route_url url

L'attribut GTFS agency_id permet de trouver la Chouette::Company de la ligne qui lui sera associée.

calendars.txt

Validation des données GTFS

Attributs obligatoires :

  • service_id
  • monday
  • thuesday
  • wednesday
  • thursday
  • friday
  • saturday
  • sunday
  • start_date
  • end_date

Conversion du modèle GTFS en modèle Chouette

Un Calendar GTFS sera converti en une combinaison de TimeTable et Period Chouette. La TimeTable contient les jours d'application, et la Period qui lui est associée contient les dates de début et de fin de la période concernée.

GTFS Route Chouette::TimeTable Chouette::Period
monday monday -
thuesday thuesday -
wednesday wednesday -
thursday thursday -
friday friday -
saturday saturday -
sunday sunday -
start_date - period_start
end_date - period_end

L'attribut service_id sera stocké dans le champ comment de la TimeTable Chouette sous la forme : "Calendar [service_id]".

calendar_dates.txt

Validation des données GTFS

Attributs obligatoires :

  • service_id
  • date
  • exception_type

Conversion du modèle GTFS en modèle Chouette

Un CalendarDate GTFS sera converti en Date Chouette associée à une TimeTable.

GTFS CalendarDate Chouette::Date
date date
exception_type in_out

L'attribut Chouette in_out est un booléen. Si l'attribut GTFS exception_type est égal à "1" alors in_out sera égal à "true", si exception_type est égal à "2" alors in_out sera égal à "false".

Clone repository

Test

test2

test 3