/stations

List of stations and associated metadata

Primary LanguageRubyOpen Data Commons Open Database License v1.0ODbL-1.0

Build Status

Trainline EU sells tickets for numerous train operators across Europe.

Stations - A Database of European Train Stations

This repository contains the information Trainline EU uses to identify stations across the diverse systems of the train operators.

If you want to contribute to this database, please read CONTRIBUTING.md.

Licence

The file stations.csv is distributed under the Open Database License (ODbL) licence, see LICENCE.txt. In short, any modification to this data source must be published.

Data sources include OpenStreetMap, SNCF OpenData, and GeoNames all released under ODbL or compatible licences; and a lot of blood, sweat, and tears.

The Data

The file stations.csv contains all our data representing train stations. The file is UTF-8 encoded text file and Comma Separated Value (CSV) formatted – although a semi-colon ; is used to delimitate fields.

Columns

Column Name Notes
id Internal unique identifier.
name Name of the station as it is locally known; see info_* for translations.
slug Guaranteed to be unique across all the suggestable stations; see is_suggestable.
uic The UIC code of the station.
uic8_sncf SNCF sometimes uses an UIC code with 8 digits instead of 7. The last digit is a checksum.
longitude Coordinates as decimal value.
latitude Coordinates as decimal value.
parent_station_id A station can belong to a meta station whose id is this value, i.e. Paris Gare d’Austerlitz belongs to the metastation Paris.
is_city This value is unreliable.
country 2 letters, ISO 3166-1 alpha-2
is_main_station This value is unreliable.
time_zone Continent/Country ISO codes.
is_suggestable Can the user input this station.
sncf_self_service_machine Presence of a SNCF self-service machine at the station.
same_as Some systems allow stations to be split in two, with two id values. If provided, the station identified by the given value should be considered as the actual station.

Operator Specific

Operator specific columns contain identifiers and values specific to the operator. Columns are prefixed with a name unique to the operator.

Column Name Notes
*_id id of the station as it is known by the carrier.
*_is_enabled Can a ticket be booked to/from the station through that carrier?
sncf_id
sncf_is_enabled
idtgv_id
idtgv_is_enabled
db_id
db_is_enabled
hkx_id
hkx_is_enabled
busbud_id
busbud_is_enabled
ouigo_id
ouigo_is_enabled
trenitalia_id
trenitalia_is_enabled
ntv_id
ntv_is_enabled

Internationalisation

Language specific info columns contain translations of the station name. The language used is suffixed as an ISO 639-1:2002 code.

Column Name Notes
info:* Extra information that is useful in the specific language.
info:fr
info:en
info:de
info:it

Tests

bundle install
ruby test_data.rb