AIS data from AISDK, available on their FTP server.
Has different archive formats (zip,rar) and csv data formats (header, no header)
Data download area: https://data.oebb.at/#default/datasets
Trains only, no buses.
To create a gtfs.zip download all .txt files, then
rename 's/(.*).csv/$1.txt/' *.csv zip gtfs.zip *.txt
licensed under Creative Commons Namensnennung 3.0 Österreich
GeoJSON and Shape EPSG: MGI Austria Lambert!
NAMECAT distinction between train station (Bahnhof) and stop (Haltestelle)
CROSSSECT/CROSS_NAME distinction between nach Eisenbahnstrecke single-track (eingleisig), double-track (zweigleisig), station area (Bahnhofsbereich) and stop area (Haltstellenbereich)
licensed under Creative Commons Attribution 4.0 International (CC BY 4.0).
GTFS, updated quarterly (as of April 2019)
I created a gtfs archive and checked it with transitfeed 1.2.16 (latest release available at that time):
TLDR: looks usable (but be sure to look into the block_id issue if you plan to use this column).
Long version: no errors, 4060 warnings.
383 Duplicate IDs in transfers.txt: these appear to be walking times within larger stations such as Innsbruck HBF or Salzburg HBF. Since additional columns (from_trip_id,to_trip_id) have been added (which are not documented in GTFS for transfers.txt), these must be changing times for specific trips.
59 Invalid Values in routes.txt: can be ignored, all flagged values
are contained in the extended route types. Also minor warnings about route_long_name and route_short_name.
1475 Overlapping Trips In Same Blocks in trips.txt: “Trip 348 and trip 349 both are in the same block 270 and have overlapping arrival times.”
The (optional) block_id field identifies the block to which the trip belongs. A block consists of a single trip or many sequential trips made using the same vehicle, defined by shared service day and block_id.
2139 Too Fast Travels: can be ignored since feedvalidator flags everything faster than 100km/h.
4 Unrecognized Columns in stops.txt: can be ignored, the column platform_code is not defined for stops.txt
JSON with 1109 shops.
Licensed under Creative Commons Attribution 4.0 International (CC BY 4.0).
Contains loads information like opening hours, accessibility.
I tried matching the ticket shop JSON with GeoJSON stops:
pk_bfnr: nationale Bahnhofnummer, z.B. 1114
eva_bfnr: internationle Bahnhofnummer, z.B. 8100002.
GIP_OBID ID aus der Graphenintegrations-Plattform GIP, e.g. 15532299337
EXTERNALID Betriebsstellen-ID der ÖBB-Infrastruktur AG, e.g. 1235
but externalid to pk_bfnr does not produce valid matchings:
2511: FEATURENAME BST Wien Westbf
2511: 'bfname': u'Gobelsburg'