From e94bed9186dc0636567604056edef7e0af7bb29c Mon Sep 17 00:00:00 2001 From: Birte Kristina Friesel Date: Sat, 15 Nov 2025 21:27:08 +0100 Subject: Expose operator names (if available), fall back to admin IDs otherwise See #10 --- .gitignore | 2 + bin/dbris-m | 4 +- lib/Travel/Status/DE/DBRIS/Journey.pm | 34 ++- lib/Travel/Status/DE/DBRIS/Operators.pm.PL | 66 ++++ share/admin-id-to-operator.json | 466 +++++++++++++++++++++++++++++ share/admin-ids.json | 466 ----------------------------- 6 files changed, 569 insertions(+), 469 deletions(-) create mode 100644 lib/Travel/Status/DE/DBRIS/Operators.pm.PL create mode 100644 share/admin-id-to-operator.json delete mode 100644 share/admin-ids.json diff --git a/.gitignore b/.gitignore index 697aac5..129b590 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,5 @@ /cover_db /MANIFEST* /MYMETA.* + +/lib/Travel/Status/DE/DBRIS/Operators.pm diff --git a/bin/dbris-m b/bin/dbris-m index 975100c..db6cf8c 100755 --- a/bin/dbris-m +++ b/bin/dbris-m @@ -394,8 +394,8 @@ elsif ( $opt{journey} and not( $raw_json_output or $json_output ) ) { $trip->train_no // $trip->number, $trip->day->strftime('%d.%m.%Y') ); - if ( $trip->admin_ids ) { - printf( "Betrieb: %s\n", join( q{, }, $trip->admin_ids ) ); + if ( $trip->operators ) { + printf( "Betrieb: %s\n", join( q{, }, $trip->operators ) ); } say q{}; diff --git a/lib/Travel/Status/DE/DBRIS/Journey.pm b/lib/Travel/Status/DE/DBRIS/Journey.pm index 2a8cb49..5543abc 100644 --- a/lib/Travel/Status/DE/DBRIS/Journey.pm +++ b/lib/Travel/Status/DE/DBRIS/Journey.pm @@ -7,13 +7,15 @@ use 5.020; use parent 'Class::Accessor'; use Travel::Status::DE::DBRIS::Location; +use Travel::Status::DE::DBRIS::Operators; our $VERSION = '0.16'; # ->number is deprecated # TODO: Rename ->train, ->train_no to ->trip, ->trip_no Travel::Status::DE::DBRIS::Journey->mk_ro_accessors( - qw(admin_id day id train train_no line_no type number is_cancelled)); + qw(admin_id day id train train_no line_no type number operator is_cancelled) +); sub new { my ( $obj, %opt ) = @_; @@ -52,10 +54,24 @@ sub new { if ( defined( my $admin_id = $admin_id_ml{ $admin_id_argmax[0] } ) ) { $ref->{admin_id} = $admin_id; + if ( + my $op + = Travel::Status::DE::DBRIS::Operators::get_operator_name( + $admin_id) + ) + { + $ref->{operator} = $admin_id; + } } # return most frequent admin ID first $ref->{admin_ids} = \@admin_id_argmax; + $ref->{operators} = [ + map { + Travel::Status::DE::DBRIS::Operators::get_operator_name($_) + // $_ + } @admin_id_argmax + ]; } if (%trip_no_ml) { @@ -202,6 +218,12 @@ sub admin_ids { return @{ $self->{admin_ids} // [] }; } +sub operators { + my ($self) = @_; + + return @{ $self->{operators} // [] }; +} + sub TO_JSON { my ($self) = @_; @@ -274,6 +296,16 @@ majority of stops. List of strings indirectly identifying the operators of the journey, in descending order of the number of stops they are responsible for. +=item $journey->operator + +String naming the operator of the journey. In case there are mulitple +operators, returns the one responsible for the majority of stops. + +=item $journey->operators + +List of strings naming the operators of the journey, in descending order of the +number of stops they are responsible for. + =item $journey->train Textual description of the departure, typically consisting of type identifier diff --git a/lib/Travel/Status/DE/DBRIS/Operators.pm.PL b/lib/Travel/Status/DE/DBRIS/Operators.pm.PL new file mode 100644 index 0000000..91ad8d2 --- /dev/null +++ b/lib/Travel/Status/DE/DBRIS/Operators.pm.PL @@ -0,0 +1,66 @@ +#!/usr/bin/env perl + +use strict; +use warnings; +use 5.020; +use utf8; +use File::Slurp qw(read_file write_file); +use JSON; + +my $json_str = read_file('share/admin-id-to-operator.json'); +my $adm_to_op = JSON->new->utf8->decode($json_str); + +my $buf = <<'EOF'; +package Travel::Status::DE::DBRIS::Operators; + +# vim:readonly +# This module has been automatically generated from share/admin-id-to-operator.json +# by lib/Travel/Status/DE/DBRIS/Operators.pm.PL. +# Do not edit, changes will be lost. + +use strict; +use warnings; +use 5.020; +use utf8; + +our $VERSION = '0.16'; + +# Automatically generated, see share/stations.json +my %admin_id_to_operator = ( +EOF + +while ( my ( $k, $v ) = each %{$adm_to_op} ) { + if ( $k =~ m{'} or $v->[0] =~ m{'} or $v->[1] =~ m{'} ) { + die("Unsupported entry: $k"); + } + $buf .= sprintf( "'%s' => ['%s', '%s'],\n", $k, @{$v} ); +} + +$buf .= <<'EOF'; +); + +sub get_operator { + my ($id) = @_; + return $admin_id_to_operator{$id}; +} + +sub get_operator_abbr { + my ($id) = @_; + if (my $op = $admin_id_to_operator{$id}) { + return $op->[0]; + } + return; +} + +sub get_operator_name { + my ($id) = @_; + if (my $op = $admin_id_to_operator{$id}) { + return $op->[1]; + } + return; +} + +1; +EOF + +write_file( $ARGV[0], { binmode => ':utf8' }, $buf ); diff --git a/share/admin-id-to-operator.json b/share/admin-id-to-operator.json new file mode 100644 index 0000000..0a79953 --- /dev/null +++ b/share/admin-id-to-operator.json @@ -0,0 +1,466 @@ +{ +"8": ["S", "S-Bahn Berlin"], +"19": ["EST", "EUROSTAR"], +"51": ["PKP", "PKP Intercity"], +"54": ["CD", "Ceske Drahy"], +"55": ["MAV", "MAV"], +"56": ["ZSS", "ZSSK"], +"71": ["REN", "RENFE"], +"74": ["SJ", "SJ"], +"78": ["HZ", "HZPP"], +"79": ["SZ", "Slovenske zeleznice"], +"80": ["DB", "DB Fernverkehr AG"], +"81": ["ÖBB", "Österreichische Bundesbahnen"], +"82": ["CFL", "CFL"], +"83": ["TI", "Trenitalia"], +"84": ["NS", "Nederlandse Spoorwegen"], +"85": ["SBB", "SBB"], +"86": ["DSB", "Dänische Staatsbahnen"], +"87": ["SCF", "SNCF"], +"88": ["SCB", "SNCB"], +"3018": ["THA", "THALYS"], +"3189": ["ARV", "ARRIVA vlaky"], +"3230": ["VBG", "vogtlandbahn - Die Länderbahn GmbH DLB"], +"3236": ["WB", "WESTbahn"], +"3246": ["IC", "RegioJet"], +"3270": ["TN", "TRENORD"], +"3288": ["GW", "GW Train Regio"], +"3332": ["KZC", "KZC Doprava s.r.o."], +"3393": ["TGV", "SNCF Voyages Deutschland"], +"3613": ["StB", "Steiermarkbahn und Bus GmbH"], +"80001": ["S", "S-Bahn Berlin"], +"550043": ["GyS", "GySEV"], +"743051": ["ST", "Snälltåget"], +"800151": ["DB", "DB Regio AG Nordost"], +"800153": ["DB", "DB Regio AG Nordost"], +"800154": ["DB", "DB Regio AG Nordost"], +"800155": ["DB", "DB Regio AG Nordost"], +"800156": ["DB", "DB Regio AG Nordost"], +"800157": ["DB", "DB Regio AG Nordost"], +"800158": ["DB", "DB Regio AG Nordost"], +"800159": ["DB", "DB Regio AG Nordost"], +"800160": ["DB", "DB Regio AG Nordost"], +"800161": ["DB", "DB Regio AG Nordost"], +"800163": ["DB", "DB Regio AG Nordost"], +"800165": ["DB", "DB Regio AG Nordost"], +"800166": ["DB", "DB Regio AG Nordost"], +"800201": ["DB", "DB Regio AG Nord"], +"800271": ["DB", "DB Regio AG Nord"], +"800279": ["DB", "DB Regio AG Nord"], +"800292": ["DB", "DB Regio AG Nord"], +"800293": ["DB", "DB Regio AG Nord"], +"800295": ["DB", "DB Regio AG Nord"], +"800310": ["DB", "DB Regio AG NRW"], +"800318": ["DB", "DB Arriva"], +"800333": ["DB", "DB Regio AG NRW"], +"800337": ["DB", "DB Regio AG NRW"], +"800338": ["DB", "DB Regio AG NRW"], +"800348": ["DB", "DB Regio AG NRW"], +"800349": ["DB", "DB Regio AG NRW"], +"800351": ["DB", "DB Regio AG NRW"], +"800352": ["DB", "DB Regio AG NRW"], +"800354": ["DB", "DB Regio AG NRW"], +"800363": ["DB", "DB Regio AG NRW"], +"800413": ["DB", "DB Regio AG Südost"], +"800417": ["DB", "DB Regio AG Südost"], +"800430": ["EGB", "DB RegioNetz Verkehrs GmbH Erzgebirgsbahn"], +"800445": ["DB", "DB Regio AG Südost"], +"800456": ["DB", "DB Regio AG Südost"], +"800469": ["DB", "DB Regio AG Südost"], +"800478": ["DB", "DB Regio AG Südost"], +"800486": ["DB", "DB Regio AG Südost"], +"800487": ["DB", "DB Regio AG Südost"], +"800489": ["DB", "DB Regio AG Südost"], +"800523": ["KHB", "DB RegioNetz Verkehrs GmbH Kurhessenbahn"], +"800528": ["S", "DB Regio AG S-Bahn Rhein-Main"], +"800535": ["DB", "DB Regio AG Mitte"], +"800553": ["DB", "DB Regio AG Mitte"], +"800571": ["DB", "DB Regio AG Mitte"], +"800572": ["DB", "DB Regio AG Mitte"], +"800574": ["DB", "DB Regio AG Mitte"], +"800603": ["WFB", "DB RegioNetz Verkehrs GmbH Westfrankenbahn"], +"800622": ["DB", "DB Regio AG Baden-Württemberg"], +"800631": ["DB", "DB Regio AG Baden-Württemberg"], +"800632": ["DB", "DB Regio AG Baden-Württemberg"], +"800640": ["SWX", "DB Regio AG Mitte SÜWEX"], +"800643": ["S", "DB Regio AG S-Bahn Stuttgart"], +"800647": ["DB", "DB Regio AG Baden-Württemberg"], +"800659": ["DB", "DB Regio AG Baden-Württemberg"], +"800693": ["DB", "DB Regio AG Baden-Württemberg"], +"800694": ["DB", "DB Regio AG Baden-Württemberg"], +"800714": ["DB", "DB Regio AG Bayern"], +"800720": ["DB", "DB Regio AG Bayern"], +"800721": ["DB", "DB Regio AG Bayern"], +"800725": ["S", "DB Regio AG S-Bahn München"], +"800734": ["DB", "DB Regio AG Bayern"], +"800742": ["DB", "DB Regio AG Bayern"], +"800746": ["DB", "DB Regio AG Bayern"], +"800755": ["DB", "DB Regio AG Bayern"], +"800759": ["DB", "DB Regio AG Bayern"], +"800765": ["DB", "DB Regio AG Bayern"], +"800767": ["DB", "DB Regio AG Bayern"], +"800772": ["DB", "DB Regio AG Bayern"], +"800785": ["DB", "DB Regio AG Bayern"], +"800790": ["DB", "DB Regio AG Bayern"], +"801512": ["DB", "DB Regio AG Mitte"], +"801513": ["DB", "DB Regio AG Mitte"], +"801518": ["DB", "DB Regio AG Mitte"], +"801526": ["DB", "DB Regio AG Mitte"], +"801539": ["DB", "DB Regio AG Mitte"], +"801566": ["DB", "DB Regio AG Mitte"], +"801591": ["DB", "DB Regio AG Mitte"], +"801599": ["DB", "DB Regio AG Mitte"], +"810003": ["mbs", "Montafoner Bahn"], +"810005": ["ZB", "Zillertalbahn"], +"810007": ["SLB", "Salzburger Lokalbahnen"], +"810008": ["STH", "Stern & Hafferl Verkehrs-GmbH"], +"810009": ["WiL", "Wiener Linien"], +"810011": ["R", "Schneebergbahn"], +"810017": ["NÖV", "NÖ Verkehrsorganisations-ges.m.b.H."], +"810021": ["NÖV", "NÖ Verkehrsorganisations-ges.m.b.H."], +"810023": ["NÖV", "NÖ Verkehrsorganisations-ges.m.b.H."], +"810024": ["P", "Waldviertler Schmalspurbahn"], +"810025": ["SLB", "Salzburger Lokalbahnen"], +"810028": ["GyS", "GySEV"], +"810031": ["STR", "Linz Linien AG (Straßenbahn Stadt Linz)"], +"810043": ["ÖPO", "ÖBB-Postbus"], +"840037": ["Rnt", "R-net"], +"840052": ["Brg", "Breng"], +"840054": ["Vll", "Valleilijn"], +"840055": ["BN", "Blauwnet"], +"840100": ["NS", "Nederlandse Spoorwegen"], +"840500": ["ARR", "Arriva Nederland"], +"850022": ["AB", "Appenzeller Bahnen"], +"850023": ["TPC", "Transports Publics du Chablais"], +"850029": ["MBC", "Transports de la région Morges-Bière-Cossonay"], +"850031": ["BDW", "BDWM Transport"], +"850032": ["BLM", "Lauterbrunnen-Mürren"], +"850033": ["BLS", "BLS AG"], +"850035": ["BOB", "Berner Oberland-Bahnen"], +"850038": ["ASM", "Aare Seeland mobil"], +"850042": ["MVR", "Montreux-Vevey-Riviera"], +"850043": ["CJ", "Chemins de fer du Jura"], +"850044": ["TRN", "Transports Publics Neuchâtelois SA"], +"850046": ["FB", "Forchbahn"], +"850047": ["FLP", "Lugano-Ponte Tresa"], +"850048": ["MGB", "Matterhorn Gotthard Bahn (fo)"], +"850049": ["FAR", "Ferrovie Autolinee Regionali Ticinesi"], +"850051": ["FW", "Frauenfeld-Wil"], +"850053": ["TPF", "Transports publics fribourgeois"], +"850055": ["LEB", "Lausanne-Echallens-Bercher"], +"850056": ["ASM", "Aare Seeland mobil"], +"850061": ["TMR", "Transports de Martigny et Régions (mc)"], +"850064": ["MOB", "Montreux-Oberland Bernois"], +"850065": ["THU", "THURBO"], +"850066": ["NSt", "Nyon-St-Cergue-Morez"], +"850072": ["RhB", "Rhätische Bahn"], +"850073": ["TRN", "Transports Publics Neuchâtelois SA"], +"850074": ["RA", "Regionalps"], +"850078": ["SZU", "Sihltal-Zürich-Uetliberg-Bahn"], +"850081": ["ASM", "Aare Seeland mobil"], +"850082": ["SOB", "Schweizerische Südostbahn (sob)"], +"850086": ["ZB", "Zentralbahn"], +"850088": ["RBS", "Regionalverkehr Bern-Solothurn"], +"850093": ["MGB", "Matterhorn Gotthard Bahn (bvz)"], +"850096": ["WSB", "Wynental-und Suhrental-Bahn"], +"850097": ["TRA", "Transports Vallée de Joux-Yverdon-Ste-Croix"], +"850193": ["URh", "Untersee und Rhein"], +"850195": ["SBS", "Schweizerische Bodensee-Schiffahrtsgesellschaft"], +"850360": ["BSB", "Bodensee-Schiffsbetriebe"], +"850371": ["BC", "Société coopérative du Chemin de fer - Musée Blonay-Chamby"], +"850801": ["PAG", "PostAuto Schweiz"], +"850846": ["RVS", "Regionale Verkehrsbetriebe Schaffhausen"], +"853186": ["SZR", "Schiff Eglisau-Tössegg"], +"853271": ["ANA", "Association neuchâteloise des Amis du Tramway ANAT"], +"857200": ["SBB", "SBB"], +"857206": ["SBB", "SBB"], +"857210": ["SBB", "SBB"], +"857221": ["THU", "THURBO"], +"857231": ["SBB", "SBB"], +"859014": ["VDB", "Verein Dampfbahn Bern"], +"859999": ["SBB", "SBB"], +"860087": ["ARR", "Arriva Danmark"], +"861002": ["DSB", "Dänische Staatsbahnen"], +"8006000": ["DB", "DB Regio AG Baden-Württemberg"], +"0S": ["S", "S-Bahn Hamburg"], +"51KD": ["KD", "Koleje Dolnoslaskie"], +"51PR": ["PR", "Polregio"], +"51PR-Q": ["PR", "Polregio"], +"51PR-R": ["PR", "Polregio"], +"51PR-S": ["PR", "Polregio"], +"8002A3": ["DB", "DB Regio AG Nord"], +"8002B5": ["DB", "DB Regio AG Nord"], +"8003A5": ["DB", "DB Regio AG NRW"], +"8003G1": ["DB", "DB Regio AG NRW"], +"8003G2": ["DB", "DB Regio AG NRW"], +"8003H5": ["DB", "DB Regio AG NRW"], +"8003L1": ["DB", "DB Regio AG NRW"], +"8003L2": ["DB", "DB Regio AG NRW"], +"8003RL": ["DB", "DB Regio AG NRW"], +"8003S": ["DB", "DB Regio AG NRW"], +"8004A9": ["DB", "DB Regio AG Südost"], +"8004L1": ["DB", "DB Regio AG Südost"], +"8004NT": ["DB", "DB Regio AG Südost"], +"8004OB": ["OBS", "DB RegioNetz Verkehrs GmbH Oberweißbacher Berg+Schwarzatalbahn"], +"8005A4": ["DB", "DB Regio AG Mitte"], +"8005KG": ["DB", "DB Regio AG Mitte"], +"8005MW": ["DB", "DB Regio AG Mitte"], +"8005ND": ["DB", "DB Regio AG Mitte"], +"8005SV": ["DB", "Rhein-Mosel-Bus Ahrweiler"], +"8006A7": ["WFB", "DB RegioNetz Verkehrs GmbH Westfrankenbahn"], +"8006C4": ["DB", "DB Regio AG Baden-Württemberg"], +"8006C5": ["DB", "DB Regio AG Baden-Württemberg"], +"8006C6": ["DB", "DB Regio AG Baden-Württemberg"], +"8006D1": ["DB", "DB Regio AG Baden-Württemberg"], +"8006D2": ["DB", "DB Regio AG Baden-Württemberg"], +"8006D6": ["DB", "DB Regio AG Baden-Württemberg"], +"8006D8": ["DB", "DB Regio AG Baden-Württemberg"], +"8006SH": ["DB", "DB Regio AG Baden-Württemberg"], +"8007D4": ["DB", "DB Regio AG Bayern"], +"8007D5": ["DB", "DB Regio AG Bayern"], +"8007DU": ["DB", "DB Regio AG Bayern"], +"8007H1": ["DB", "DB Regio AG Bayern"], +"8007H2": ["DB", "DB Regio AG Bayern"], +"8013D": ["SOB", "DB RegioNetz Verkehrs GmbH Südostbayernbahn"], +"8013E": ["SOB", "DB RegioNetz Verkehrs GmbH Südostbayernbahn"], +"8015A1": ["DB", "DB Regio AG Mitte"], +"8015A6": ["DB", "DB Regio AG Mitte"], +"8015FR": ["DB", "DB Regio AG Mitte"], +"8015H9": ["DB", "DB Regio AG Mitte"], +"80SEV": ["DB", "DB Fernverkehr AG"], +"80SSP": ["D", "Sylt Shuttle Plus"], +"80TRI": ["EC", "DB/SBB/TI"], +"857LEX": ["LEX", "LEX"], +"85DBSH": ["SBB", "SBB"], +"A0": ["AKN", "AKN Eisenbahn GmbH"], +"A5": ["VEN", "Rhenus Veniro"], +"A6": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], +"A6S1": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], +"A6S11": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], +"A6S12": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], +"A6S31": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], +"A6S32": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], +"A6S34": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], +"A6S4": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], +"A6S41": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], +"A6S42": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], +"A6S5": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], +"A6S51": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], +"A6S52": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], +"A6S6": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], +"A6S7": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], +"A6S71": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], +"A6S8": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], +"A6S81": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], +"A8N": ["ALX", "alex - Die Länderbahn GmbH DLB"], +"A9": ["ag", "agilis"], +"AB": ["ABR", "SWEG Bahn Stuttgart GmbH"], +"ABIRE": ["IRE", "SWEG Bahn Stuttgart GmbH"], +"ABRB": ["RB", "SWEG Bahn Stuttgart GmbH"], +"ABRE": ["RE", "SWEG Bahn Stuttgart GmbH"], +"ak_AK": ["AK", "Autokraft"], +"ak_DRN": ["DIB", "Dithmarschenbus (DB Regio Bus Nord GmbH)"], +"ak_SVG": ["SVG", "Sylter Verkehrsgesellschaft"], +"AL": ["DWE", "Dessau-Wörlitzer Eisenbahn"], +"AM": ["ABR", "Abellio Rail Mitteldeutschland GmbH"], +"AMHBX": ["HBX", "Abellio Rail Mitteldeutschland GmbH"], +"AMRB": ["RB", "Abellio Rail Mitteldeutschland GmbH"], +"AMRE": ["RE", "Abellio Rail Mitteldeutschland GmbH"], +"AMS": ["S", "Abellio Rail Mitteldeutschland GmbH"], +"B1": ["DB", "DB Regio AG Nord"], +"B2": ["DB", "DB Regio AG NRW"], +"B3": ["P", "Brohltalbahn"], +"B4": ["S", "DB Regio AG S-Bahn Rhein-Main"], +"B5": ["DB", "DB Regio AG Mitte"], +"B6": ["DB", "DB Regio AG Baden-Württemberg"], +"BB": ["DB", "DB Regio AG Nordost"], +"BD": ["SDG", "SDG Sächsische Dampfeisenbahngesellschaft mbH"], +"BE": ["BE", "Bentheimer Eisenbahn"], +"BW": ["DB", "DB Regio AG Nordost"], +"C6": ["KTB", "Kandertalbahn"], +"C8": ["LEO", "Chiemgauer Lokalbahn"], +"CD": ["CB", "City-Bahn Chemnitz"], +"css002": ["P", "Chiemseebahn"], +"CX": ["MRB", "Mitteldeutsche Regiobahn"], +"CXRB": ["RB", "Mitteldeutsche Regiobahn"], +"CXRE": ["RE", "Mitteldeutsche Regiobahn"], +"D3": ["RTB", "Rurtalbahn"], +"E0": ["EVB", "EVB ELBE-WESER GmbH"], +"E3": ["P", "Kasbachtalbahn"], +"EB": ["RB", "Erfurter Bahn GmbH"], +"ED": ["FEG", "Freiberger Eisenbahngesellschaft"], +"EX": ["RE", "Erfurter Bahn GmbH"], +"F7": ["RB", "Bodensee-Oberschwaben-Bahn"], +"FLX10": ["FLX", "FlixTrain"], +"FLX11": ["FLX", "FlixTrain"], +"FLX15": ["FLX", "FlixTrain"], +"FLX20": ["FLX", "FlixTrain"], +"FLX30": ["FLX", "FlixTrain"], +"FLX35": ["FLX", "FlixTrain"], +"GA": ["GA", "Go-Ahead Baden-Württemberg GmbH"], +"GAIRE": ["IRE", "Go-Ahead Baden-Württemberg GmbH"], +"GAMEX": ["MEX", "Go-Ahead Baden-Württemberg GmbH"], +"GARB": ["RB", "Go-Ahead Baden-Württemberg GmbH"], +"GARE": ["RE", "Go-Ahead Baden-Württemberg GmbH"], +"GY": ["GA", "Go-Ahead Bayern GmbH"], +"GYRB": ["RB", "Go-Ahead Bayern GmbH"], +"GYRE": ["RE", "Go-Ahead Bayern GmbH"], +"H4": ["RT", "RegioTram"], +"H6": ["HzL", "Hohenzollerische Landesbahn (SWEG)"], +"H7": ["HzL", "Hohenzollerische Landesbahn (SWEG)"], +"HL": ["HSB", "Harzer Schmalspurbahn"], +"K4": ["HLB", "HLB Hessenbahn GmbH"], +"K4RB": ["HLB", "HLB Hessenbahn GmbH"], +"K4RE": ["HLB", "HLB Hessenbahn GmbH"], +"K6": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], +"KD": ["KD", "Köln-Düsseldorfer Deutsche Rheinschifffahrt GmbH"], +"L7": ["SBB", "SBB GmbH"], +"L8": ["BRB", "Bayerische Regiobahn"], +"LD": ["TL", "trilex - Die Länderbahn GmbH DLB"], +"LDTLX": ["TLX", "trilex-express - Die Länderbahn GmbH DLB"], +"M1": ["P", "Museumsbahn"], +"M2": ["S", "REGIOBAHN"], +"M2RE": ["R", "REGIOBAHN"], +"M4": ["VSE", "Verein Sächsischer Eisenbahnfreunde"], +"M8": ["BRB", "Bayerische Regiobahn"], +"M9": ["MSB", "Mainschleifenbahn"], +"MW": ["MBB", "Mecklenburgische Bäderbahn Molli"], +"N0": ["neg", "Norddeutsche Eisenbahn Gesellschaft"], +"N1": ["NWB", "NordWestBahn"], +"N2": ["NWB", "NordWestBahn"], +"N4": ["RB", "cantus Verkehrsgesellschaft"], +"N4RE": ["RE", "cantus Verkehrsgesellschaft"], +"N6": ["SWE", "Südwestdeutsche Landesverkehrs-GmbH"], +"N8": ["P", "BayernBahn GmbH"], +"NB": ["RB", "NEB Niederbarnimer Eisenbahn"], +"NBRB12": ["RB", "NEB Niederbarnimer Eisenbahn"], +"NBRB25": ["RB", "NEB Niederbarnimer Eisenbahn"], +"NBRB26": ["RB", "NEB Niederbarnimer Eisenbahn"], +"NBRB27": ["RB", "NEB Niederbarnimer Eisenbahn"], +"NBRB35": ["RB", "NEB Niederbarnimer Eisenbahn"], +"NBRB36": ["RB", "NEB Niederbarnimer Eisenbahn"], +"NBRB54": ["RB", "NEB Niederbarnimer Eisenbahn"], +"NBRB60": ["RB", "NEB Niederbarnimer Eisenbahn"], +"NBRB61": ["RB", "NEB Niederbarnimer Eisenbahn"], +"NBRB62": ["RB", "NEB Niederbarnimer Eisenbahn"], +"NBRB63": ["RB", "NEB Niederbarnimer Eisenbahn"], +"NWBus": ["NWB", "NordWestBahn"], +"NX": ["NX", "National Express"], +"NXRB": ["RB", "National Express"], +"NXRE": ["RE", "National Express"], +"NY": ["MSM", "MSM Partyzug"], +"NYUEX": ["UEX", "Urlaubs-Express"], +"NZ": ["RE", "DB Fernverkehr AG"], +"O0": ["NBE", "Nordbahn Eisenbahngesellschaft"], +"O7": ["ÖBA", "Öchsle-Bahn-Betriebsgesellschaft mbH"], +"O9": ["OPB", "oberpfalzbahn - Die Länderbahn GmbH DLB"], +"O9X": ["OPX", "oberpfalz-express - Die Länderbahn GmbH DLB"], +"OD": ["SOE", "Sächsisch-Oberlausitzer Eisenbahngesellschaft"], +"OWBus": ["OE", "Ostdeutsche Eisenbahn GmbH"], +"owl031": ["STB", "moBiel GmbH"], +"OWRB": ["RB", "Ostdeutsche Eisenbahn GmbH"], +"OWRB13": ["RB", "Ostdeutsche Eisenbahn GmbH"], +"OWRB14": ["RB", "Ostdeutsche Eisenbahn GmbH"], +"OWRB15": ["RB", "Ostdeutsche Eisenbahn GmbH"], +"OWRB19": ["RB", "Ostdeutsche Eisenbahn GmbH"], +"OWRB33": ["RB", "Ostdeutsche Eisenbahn GmbH"], +"OWRB46": ["RB", "Ostdeutsche Eisenbahn GmbH"], +"OWRB51": ["RB", "Ostdeutsche Eisenbahn GmbH"], +"OWRB64": ["RB", "Ostdeutsche Eisenbahn GmbH"], +"OWRB65": ["RB", "Ostdeutsche Eisenbahn GmbH"], +"OWRE": ["RE", "Ostdeutsche Eisenbahn GmbH"], +"OWRE2": ["RE", "Ostdeutsche Eisenbahn GmbH"], +"OWRE4": ["RE", "Ostdeutsche Eisenbahn GmbH"], +"PB": ["RB", "Hanseatische Eisenbahn GmbH"], +"pbaKB": ["ÖPO", "ÖBB-Postbus"], +"pbaWR": ["ÖPO", "ÖBB-Postbus"], +"R0": ["ENO", "enno"], +"R1": ["ME", "metronom"], +"R2": ["ERB", "eurobahn"], +"R2RB": ["RB", "eurobahn"], +"R2RE": ["RE", "eurobahn"], +"R4": ["VIA", "VIAS Rail GmbH"], +"R4NRN": ["VIA", "VIAS Rail GmbH"], +"R4RB35": ["VIA", "VIAS Rail GmbH"], +"R4RH": ["VIA", "VIAS GmbH"], +"R4S7": ["VIA", "VIAS Rail GmbH"], +"R4WEST": ["VIA", "VIAS Rail GmbH"], +"R7": ["HzL", "Hohenzollerische Landesbahn (SWEG)"], +"rabRAB": ["RAB", "Regionalverkehr Alb-Bodensee"], +"rbgAST": ["SBG", "Südbadenbus"], +"rbgBRN": ["BRN", "Busverkehr Rhein-Neckar"], +"rbgFMO": ["FMO", "Friedrich Müller Omnibusunternehmen GmbH"], +"rbgRBS": ["RBS", "Regiobus Stuttgart"], +"rbgRVS": ["RVS", "Südwestbus"], +"rbgRVs": ["RVS", "Südwestbus"], +"rbgSBG": ["SBG", "Südbadenbus"], +"rbpORN": ["ORN", "ORN Omnibusverkehr Rhein-Nahe GmbH (Rhein-Nahe-Bus)"], +"rbpRMA": ["DB", "Rhein-Mosel-Bus Ahrweiler"], +"rbpRMB": ["DB", "RMB Rhein-Mosel-Bus"], +"rbpRPB": ["RPB", "Rheinpfalzbus"], +"rbpSWM": ["DB", "DB Regio Bus Mitte"], +"RC": ["AZS", "AUTOZUG Sylt"], +"RD": ["VBG", "vogtlandbahn - Die Länderbahn GmbH DLB"], +"RS": ["RE", "Regionalverkehre Start Deutschland GmbH"], +"RSNM": ["RB", "Regionalverkehre Start Deutschland GmbH (Start Niedersachsen-Mitte)"], +"RSTN": ["STN", "Regionalverkehre Start Deutschland GmbH (Start Taunus)"], +"RSUE": ["RE", "Regionalverkehre Start Deutschland GmbH (Start Unterelbe)"], +"rvoRVO": ["RVO", "Regionalverkehr Oberbayern"], +"RW": ["PRE", "Pressnitztalbahn"], +"S3": ["SWB", "Stadtwerke Bonn"], +"S6": ["SWE", "SWEG Südwestdeutsche Landesverkehrs-GmbH"], +"S9": ["ag", "agilis"], +"SAB": ["SAB", "Schwäbische Alb-Bahn"], +"SAD003": ["SAD", "Vinschgaubahn"], +"SB": ["RB", "Süd-Thüringen-Bahn GmbH"], +"SBSIRE": ["IRE", "SWEG Bahn Stuttgart GmbH"], +"SBSMEX": ["MEX", "SWEG Bahn Stuttgart GmbH"], +"SBSRB": ["RB", "SWEG Bahn Stuttgart GmbH"], +"SBSRE": ["RE", "SWEG Bahn Stuttgart GmbH"], +"SBX": ["RE", "Süd-Thüringen-Bahn GmbH"], +"SD": ["DB", "DB Regio AG Südost"], +"swg099": ["SWE", "SWEG Südwestdeutsche Landesverkehrs-GmbH"], +"T8": ["BRB", "Bayerische Regiobahn"], +"TDHS": ["S", "S-Bahn Hannover (Transdev)"], +"TDRR": ["RRB", "RheinRuhrBahn (Transdev)"], +"tgo099": ["SWE", "SWEG Südwestdeutsche Landesverkehrs-GmbH"], +"TR": ["RB", "MittelrheinBahn (Trans Regio)"], +"TRI": ["TRI", "TRI Train Rental GmbH"], +"UW": ["UBB", "Usedomer Bäderbahn"], +"V6": ["vlx", "vlexx"], +"V6RB": ["RB", "vlexx"], +"V6RE": ["RE", "vlexx"], +"V7": ["SVG", "SVG Schienenverkehrsgesellschaft Stuttgart"], +"V9": ["P", "Wanderbahn im Regental"], +"vgm093": ["WB", "Westfalenbus"], +"vgmb93": ["WB", "Westfalenbus"], +"vgsSBS": ["S", "Saarbahn"], +"vrn008": ["STR", "Rhein-Neckar-Verkehr GmbH"], +"vrn011": ["STR", "Rhein-Neckar-Verkehr GmbH"], +"vrn022": ["MNV", "MNV Mittelhaardt Nahverkehrsgesellschaft"], +"vrn028": ["H&P", "Hetzler & Pfadt"], +"vrn032": ["PAL", "PalatinaBus"], +"vrn050": ["QNV", "QNV Queichtal Nahverkehr"], +"vrnOEG": ["RNV", "Rhein-Neckar-Verkehr GmbH (Oberrheinische Eisenbahn)"], +"vrnRHB": ["RNV", "Rhein-Neckar-Verkehr GmbH (Rhein-Haardtbahn)"], +"vrr088": ["BVR", "Busverkehr Rheinland"], +"vuvab": ["VU", "Verkehrsgesellschaft mbH Untermain"], +"vvs012": ["WEG", "Württembergische Eisenbahn-Gesellschaft mbH"], +"W0": ["WDR", "Wyker Dampfschiffs-Reederei Föhr-Amrum GmbH"], +"W2": ["Dab", "Daadetalbahn"], +"W3": ["WFB", "WestfalenBahn"], +"W6": ["WTB", "Wutachtalbahn"], +"W9": ["WBA", "waldbahn - Die Länderbahn GmbH DLB"], +"webBTR": ["STR", "Bremer Straßenbahn AG"], +"webUET": ["STB", "üstra Hannoversche Verkehrsbetriebe AG"], +"webXOS": ["WEB", "Weser-Ems-Bus"], +"webYGO": ["RBB", "Regionalbus Braunschweig GmbH"], +"webYUE": ["RBB", "Regionalbus Braunschweig GmbH"], +"WL": ["RB", "Kreisbahn Mansfelder Land"], +"X1": ["erx", "erixx"], +"X2": ["erx", "erixx"], +"Y0": ["SCH", "Adler-Schiffe"], +"Y8": ["BRB", "Bayerische Regiobahn"], +"Z8": ["BZB", "Bayerische Zugspitzbahn"], +"Z9": ["P", "Rhön-Zügle"] +} diff --git a/share/admin-ids.json b/share/admin-ids.json deleted file mode 100644 index 0a79953..0000000 --- a/share/admin-ids.json +++ /dev/null @@ -1,466 +0,0 @@ -{ -"8": ["S", "S-Bahn Berlin"], -"19": ["EST", "EUROSTAR"], -"51": ["PKP", "PKP Intercity"], -"54": ["CD", "Ceske Drahy"], -"55": ["MAV", "MAV"], -"56": ["ZSS", "ZSSK"], -"71": ["REN", "RENFE"], -"74": ["SJ", "SJ"], -"78": ["HZ", "HZPP"], -"79": ["SZ", "Slovenske zeleznice"], -"80": ["DB", "DB Fernverkehr AG"], -"81": ["ÖBB", "Österreichische Bundesbahnen"], -"82": ["CFL", "CFL"], -"83": ["TI", "Trenitalia"], -"84": ["NS", "Nederlandse Spoorwegen"], -"85": ["SBB", "SBB"], -"86": ["DSB", "Dänische Staatsbahnen"], -"87": ["SCF", "SNCF"], -"88": ["SCB", "SNCB"], -"3018": ["THA", "THALYS"], -"3189": ["ARV", "ARRIVA vlaky"], -"3230": ["VBG", "vogtlandbahn - Die Länderbahn GmbH DLB"], -"3236": ["WB", "WESTbahn"], -"3246": ["IC", "RegioJet"], -"3270": ["TN", "TRENORD"], -"3288": ["GW", "GW Train Regio"], -"3332": ["KZC", "KZC Doprava s.r.o."], -"3393": ["TGV", "SNCF Voyages Deutschland"], -"3613": ["StB", "Steiermarkbahn und Bus GmbH"], -"80001": ["S", "S-Bahn Berlin"], -"550043": ["GyS", "GySEV"], -"743051": ["ST", "Snälltåget"], -"800151": ["DB", "DB Regio AG Nordost"], -"800153": ["DB", "DB Regio AG Nordost"], -"800154": ["DB", "DB Regio AG Nordost"], -"800155": ["DB", "DB Regio AG Nordost"], -"800156": ["DB", "DB Regio AG Nordost"], -"800157": ["DB", "DB Regio AG Nordost"], -"800158": ["DB", "DB Regio AG Nordost"], -"800159": ["DB", "DB Regio AG Nordost"], -"800160": ["DB", "DB Regio AG Nordost"], -"800161": ["DB", "DB Regio AG Nordost"], -"800163": ["DB", "DB Regio AG Nordost"], -"800165": ["DB", "DB Regio AG Nordost"], -"800166": ["DB", "DB Regio AG Nordost"], -"800201": ["DB", "DB Regio AG Nord"], -"800271": ["DB", "DB Regio AG Nord"], -"800279": ["DB", "DB Regio AG Nord"], -"800292": ["DB", "DB Regio AG Nord"], -"800293": ["DB", "DB Regio AG Nord"], -"800295": ["DB", "DB Regio AG Nord"], -"800310": ["DB", "DB Regio AG NRW"], -"800318": ["DB", "DB Arriva"], -"800333": ["DB", "DB Regio AG NRW"], -"800337": ["DB", "DB Regio AG NRW"], -"800338": ["DB", "DB Regio AG NRW"], -"800348": ["DB", "DB Regio AG NRW"], -"800349": ["DB", "DB Regio AG NRW"], -"800351": ["DB", "DB Regio AG NRW"], -"800352": ["DB", "DB Regio AG NRW"], -"800354": ["DB", "DB Regio AG NRW"], -"800363": ["DB", "DB Regio AG NRW"], -"800413": ["DB", "DB Regio AG Südost"], -"800417": ["DB", "DB Regio AG Südost"], -"800430": ["EGB", "DB RegioNetz Verkehrs GmbH Erzgebirgsbahn"], -"800445": ["DB", "DB Regio AG Südost"], -"800456": ["DB", "DB Regio AG Südost"], -"800469": ["DB", "DB Regio AG Südost"], -"800478": ["DB", "DB Regio AG Südost"], -"800486": ["DB", "DB Regio AG Südost"], -"800487": ["DB", "DB Regio AG Südost"], -"800489": ["DB", "DB Regio AG Südost"], -"800523": ["KHB", "DB RegioNetz Verkehrs GmbH Kurhessenbahn"], -"800528": ["S", "DB Regio AG S-Bahn Rhein-Main"], -"800535": ["DB", "DB Regio AG Mitte"], -"800553": ["DB", "DB Regio AG Mitte"], -"800571": ["DB", "DB Regio AG Mitte"], -"800572": ["DB", "DB Regio AG Mitte"], -"800574": ["DB", "DB Regio AG Mitte"], -"800603": ["WFB", "DB RegioNetz Verkehrs GmbH Westfrankenbahn"], -"800622": ["DB", "DB Regio AG Baden-Württemberg"], -"800631": ["DB", "DB Regio AG Baden-Württemberg"], -"800632": ["DB", "DB Regio AG Baden-Württemberg"], -"800640": ["SWX", "DB Regio AG Mitte SÜWEX"], -"800643": ["S", "DB Regio AG S-Bahn Stuttgart"], -"800647": ["DB", "DB Regio AG Baden-Württemberg"], -"800659": ["DB", "DB Regio AG Baden-Württemberg"], -"800693": ["DB", "DB Regio AG Baden-Württemberg"], -"800694": ["DB", "DB Regio AG Baden-Württemberg"], -"800714": ["DB", "DB Regio AG Bayern"], -"800720": ["DB", "DB Regio AG Bayern"], -"800721": ["DB", "DB Regio AG Bayern"], -"800725": ["S", "DB Regio AG S-Bahn München"], -"800734": ["DB", "DB Regio AG Bayern"], -"800742": ["DB", "DB Regio AG Bayern"], -"800746": ["DB", "DB Regio AG Bayern"], -"800755": ["DB", "DB Regio AG Bayern"], -"800759": ["DB", "DB Regio AG Bayern"], -"800765": ["DB", "DB Regio AG Bayern"], -"800767": ["DB", "DB Regio AG Bayern"], -"800772": ["DB", "DB Regio AG Bayern"], -"800785": ["DB", "DB Regio AG Bayern"], -"800790": ["DB", "DB Regio AG Bayern"], -"801512": ["DB", "DB Regio AG Mitte"], -"801513": ["DB", "DB Regio AG Mitte"], -"801518": ["DB", "DB Regio AG Mitte"], -"801526": ["DB", "DB Regio AG Mitte"], -"801539": ["DB", "DB Regio AG Mitte"], -"801566": ["DB", "DB Regio AG Mitte"], -"801591": ["DB", "DB Regio AG Mitte"], -"801599": ["DB", "DB Regio AG Mitte"], -"810003": ["mbs", "Montafoner Bahn"], -"810005": ["ZB", "Zillertalbahn"], -"810007": ["SLB", "Salzburger Lokalbahnen"], -"810008": ["STH", "Stern & Hafferl Verkehrs-GmbH"], -"810009": ["WiL", "Wiener Linien"], -"810011": ["R", "Schneebergbahn"], -"810017": ["NÖV", "NÖ Verkehrsorganisations-ges.m.b.H."], -"810021": ["NÖV", "NÖ Verkehrsorganisations-ges.m.b.H."], -"810023": ["NÖV", "NÖ Verkehrsorganisations-ges.m.b.H."], -"810024": ["P", "Waldviertler Schmalspurbahn"], -"810025": ["SLB", "Salzburger Lokalbahnen"], -"810028": ["GyS", "GySEV"], -"810031": ["STR", "Linz Linien AG (Straßenbahn Stadt Linz)"], -"810043": ["ÖPO", "ÖBB-Postbus"], -"840037": ["Rnt", "R-net"], -"840052": ["Brg", "Breng"], -"840054": ["Vll", "Valleilijn"], -"840055": ["BN", "Blauwnet"], -"840100": ["NS", "Nederlandse Spoorwegen"], -"840500": ["ARR", "Arriva Nederland"], -"850022": ["AB", "Appenzeller Bahnen"], -"850023": ["TPC", "Transports Publics du Chablais"], -"850029": ["MBC", "Transports de la région Morges-Bière-Cossonay"], -"850031": ["BDW", "BDWM Transport"], -"850032": ["BLM", "Lauterbrunnen-Mürren"], -"850033": ["BLS", "BLS AG"], -"850035": ["BOB", "Berner Oberland-Bahnen"], -"850038": ["ASM", "Aare Seeland mobil"], -"850042": ["MVR", "Montreux-Vevey-Riviera"], -"850043": ["CJ", "Chemins de fer du Jura"], -"850044": ["TRN", "Transports Publics Neuchâtelois SA"], -"850046": ["FB", "Forchbahn"], -"850047": ["FLP", "Lugano-Ponte Tresa"], -"850048": ["MGB", "Matterhorn Gotthard Bahn (fo)"], -"850049": ["FAR", "Ferrovie Autolinee Regionali Ticinesi"], -"850051": ["FW", "Frauenfeld-Wil"], -"850053": ["TPF", "Transports publics fribourgeois"], -"850055": ["LEB", "Lausanne-Echallens-Bercher"], -"850056": ["ASM", "Aare Seeland mobil"], -"850061": ["TMR", "Transports de Martigny et Régions (mc)"], -"850064": ["MOB", "Montreux-Oberland Bernois"], -"850065": ["THU", "THURBO"], -"850066": ["NSt", "Nyon-St-Cergue-Morez"], -"850072": ["RhB", "Rhätische Bahn"], -"850073": ["TRN", "Transports Publics Neuchâtelois SA"], -"850074": ["RA", "Regionalps"], -"850078": ["SZU", "Sihltal-Zürich-Uetliberg-Bahn"], -"850081": ["ASM", "Aare Seeland mobil"], -"850082": ["SOB", "Schweizerische Südostbahn (sob)"], -"850086": ["ZB", "Zentralbahn"], -"850088": ["RBS", "Regionalverkehr Bern-Solothurn"], -"850093": ["MGB", "Matterhorn Gotthard Bahn (bvz)"], -"850096": ["WSB", "Wynental-und Suhrental-Bahn"], -"850097": ["TRA", "Transports Vallée de Joux-Yverdon-Ste-Croix"], -"850193": ["URh", "Untersee und Rhein"], -"850195": ["SBS", "Schweizerische Bodensee-Schiffahrtsgesellschaft"], -"850360": ["BSB", "Bodensee-Schiffsbetriebe"], -"850371": ["BC", "Société coopérative du Chemin de fer - Musée Blonay-Chamby"], -"850801": ["PAG", "PostAuto Schweiz"], -"850846": ["RVS", "Regionale Verkehrsbetriebe Schaffhausen"], -"853186": ["SZR", "Schiff Eglisau-Tössegg"], -"853271": ["ANA", "Association neuchâteloise des Amis du Tramway ANAT"], -"857200": ["SBB", "SBB"], -"857206": ["SBB", "SBB"], -"857210": ["SBB", "SBB"], -"857221": ["THU", "THURBO"], -"857231": ["SBB", "SBB"], -"859014": ["VDB", "Verein Dampfbahn Bern"], -"859999": ["SBB", "SBB"], -"860087": ["ARR", "Arriva Danmark"], -"861002": ["DSB", "Dänische Staatsbahnen"], -"8006000": ["DB", "DB Regio AG Baden-Württemberg"], -"0S": ["S", "S-Bahn Hamburg"], -"51KD": ["KD", "Koleje Dolnoslaskie"], -"51PR": ["PR", "Polregio"], -"51PR-Q": ["PR", "Polregio"], -"51PR-R": ["PR", "Polregio"], -"51PR-S": ["PR", "Polregio"], -"8002A3": ["DB", "DB Regio AG Nord"], -"8002B5": ["DB", "DB Regio AG Nord"], -"8003A5": ["DB", "DB Regio AG NRW"], -"8003G1": ["DB", "DB Regio AG NRW"], -"8003G2": ["DB", "DB Regio AG NRW"], -"8003H5": ["DB", "DB Regio AG NRW"], -"8003L1": ["DB", "DB Regio AG NRW"], -"8003L2": ["DB", "DB Regio AG NRW"], -"8003RL": ["DB", "DB Regio AG NRW"], -"8003S": ["DB", "DB Regio AG NRW"], -"8004A9": ["DB", "DB Regio AG Südost"], -"8004L1": ["DB", "DB Regio AG Südost"], -"8004NT": ["DB", "DB Regio AG Südost"], -"8004OB": ["OBS", "DB RegioNetz Verkehrs GmbH Oberweißbacher Berg+Schwarzatalbahn"], -"8005A4": ["DB", "DB Regio AG Mitte"], -"8005KG": ["DB", "DB Regio AG Mitte"], -"8005MW": ["DB", "DB Regio AG Mitte"], -"8005ND": ["DB", "DB Regio AG Mitte"], -"8005SV": ["DB", "Rhein-Mosel-Bus Ahrweiler"], -"8006A7": ["WFB", "DB RegioNetz Verkehrs GmbH Westfrankenbahn"], -"8006C4": ["DB", "DB Regio AG Baden-Württemberg"], -"8006C5": ["DB", "DB Regio AG Baden-Württemberg"], -"8006C6": ["DB", "DB Regio AG Baden-Württemberg"], -"8006D1": ["DB", "DB Regio AG Baden-Württemberg"], -"8006D2": ["DB", "DB Regio AG Baden-Württemberg"], -"8006D6": ["DB", "DB Regio AG Baden-Württemberg"], -"8006D8": ["DB", "DB Regio AG Baden-Württemberg"], -"8006SH": ["DB", "DB Regio AG Baden-Württemberg"], -"8007D4": ["DB", "DB Regio AG Bayern"], -"8007D5": ["DB", "DB Regio AG Bayern"], -"8007DU": ["DB", "DB Regio AG Bayern"], -"8007H1": ["DB", "DB Regio AG Bayern"], -"8007H2": ["DB", "DB Regio AG Bayern"], -"8013D": ["SOB", "DB RegioNetz Verkehrs GmbH Südostbayernbahn"], -"8013E": ["SOB", "DB RegioNetz Verkehrs GmbH Südostbayernbahn"], -"8015A1": ["DB", "DB Regio AG Mitte"], -"8015A6": ["DB", "DB Regio AG Mitte"], -"8015FR": ["DB", "DB Regio AG Mitte"], -"8015H9": ["DB", "DB Regio AG Mitte"], -"80SEV": ["DB", "DB Fernverkehr AG"], -"80SSP": ["D", "Sylt Shuttle Plus"], -"80TRI": ["EC", "DB/SBB/TI"], -"857LEX": ["LEX", "LEX"], -"85DBSH": ["SBB", "SBB"], -"A0": ["AKN", "AKN Eisenbahn GmbH"], -"A5": ["VEN", "Rhenus Veniro"], -"A6": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], -"A6S1": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], -"A6S11": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], -"A6S12": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], -"A6S31": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], -"A6S32": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], -"A6S34": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], -"A6S4": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], -"A6S41": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], -"A6S42": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], -"A6S5": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], -"A6S51": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], -"A6S52": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], -"A6S6": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], -"A6S7": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], -"A6S71": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], -"A6S8": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], -"A6S81": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], -"A8N": ["ALX", "alex - Die Länderbahn GmbH DLB"], -"A9": ["ag", "agilis"], -"AB": ["ABR", "SWEG Bahn Stuttgart GmbH"], -"ABIRE": ["IRE", "SWEG Bahn Stuttgart GmbH"], -"ABRB": ["RB", "SWEG Bahn Stuttgart GmbH"], -"ABRE": ["RE", "SWEG Bahn Stuttgart GmbH"], -"ak_AK": ["AK", "Autokraft"], -"ak_DRN": ["DIB", "Dithmarschenbus (DB Regio Bus Nord GmbH)"], -"ak_SVG": ["SVG", "Sylter Verkehrsgesellschaft"], -"AL": ["DWE", "Dessau-Wörlitzer Eisenbahn"], -"AM": ["ABR", "Abellio Rail Mitteldeutschland GmbH"], -"AMHBX": ["HBX", "Abellio Rail Mitteldeutschland GmbH"], -"AMRB": ["RB", "Abellio Rail Mitteldeutschland GmbH"], -"AMRE": ["RE", "Abellio Rail Mitteldeutschland GmbH"], -"AMS": ["S", "Abellio Rail Mitteldeutschland GmbH"], -"B1": ["DB", "DB Regio AG Nord"], -"B2": ["DB", "DB Regio AG NRW"], -"B3": ["P", "Brohltalbahn"], -"B4": ["S", "DB Regio AG S-Bahn Rhein-Main"], -"B5": ["DB", "DB Regio AG Mitte"], -"B6": ["DB", "DB Regio AG Baden-Württemberg"], -"BB": ["DB", "DB Regio AG Nordost"], -"BD": ["SDG", "SDG Sächsische Dampfeisenbahngesellschaft mbH"], -"BE": ["BE", "Bentheimer Eisenbahn"], -"BW": ["DB", "DB Regio AG Nordost"], -"C6": ["KTB", "Kandertalbahn"], -"C8": ["LEO", "Chiemgauer Lokalbahn"], -"CD": ["CB", "City-Bahn Chemnitz"], -"css002": ["P", "Chiemseebahn"], -"CX": ["MRB", "Mitteldeutsche Regiobahn"], -"CXRB": ["RB", "Mitteldeutsche Regiobahn"], -"CXRE": ["RE", "Mitteldeutsche Regiobahn"], -"D3": ["RTB", "Rurtalbahn"], -"E0": ["EVB", "EVB ELBE-WESER GmbH"], -"E3": ["P", "Kasbachtalbahn"], -"EB": ["RB", "Erfurter Bahn GmbH"], -"ED": ["FEG", "Freiberger Eisenbahngesellschaft"], -"EX": ["RE", "Erfurter Bahn GmbH"], -"F7": ["RB", "Bodensee-Oberschwaben-Bahn"], -"FLX10": ["FLX", "FlixTrain"], -"FLX11": ["FLX", "FlixTrain"], -"FLX15": ["FLX", "FlixTrain"], -"FLX20": ["FLX", "FlixTrain"], -"FLX30": ["FLX", "FlixTrain"], -"FLX35": ["FLX", "FlixTrain"], -"GA": ["GA", "Go-Ahead Baden-Württemberg GmbH"], -"GAIRE": ["IRE", "Go-Ahead Baden-Württemberg GmbH"], -"GAMEX": ["MEX", "Go-Ahead Baden-Württemberg GmbH"], -"GARB": ["RB", "Go-Ahead Baden-Württemberg GmbH"], -"GARE": ["RE", "Go-Ahead Baden-Württemberg GmbH"], -"GY": ["GA", "Go-Ahead Bayern GmbH"], -"GYRB": ["RB", "Go-Ahead Bayern GmbH"], -"GYRE": ["RE", "Go-Ahead Bayern GmbH"], -"H4": ["RT", "RegioTram"], -"H6": ["HzL", "Hohenzollerische Landesbahn (SWEG)"], -"H7": ["HzL", "Hohenzollerische Landesbahn (SWEG)"], -"HL": ["HSB", "Harzer Schmalspurbahn"], -"K4": ["HLB", "HLB Hessenbahn GmbH"], -"K4RB": ["HLB", "HLB Hessenbahn GmbH"], -"K4RE": ["HLB", "HLB Hessenbahn GmbH"], -"K6": ["AVG", "Albtal-Verkehrs-Gesellschaft mbH"], -"KD": ["KD", "Köln-Düsseldorfer Deutsche Rheinschifffahrt GmbH"], -"L7": ["SBB", "SBB GmbH"], -"L8": ["BRB", "Bayerische Regiobahn"], -"LD": ["TL", "trilex - Die Länderbahn GmbH DLB"], -"LDTLX": ["TLX", "trilex-express - Die Länderbahn GmbH DLB"], -"M1": ["P", "Museumsbahn"], -"M2": ["S", "REGIOBAHN"], -"M2RE": ["R", "REGIOBAHN"], -"M4": ["VSE", "Verein Sächsischer Eisenbahnfreunde"], -"M8": ["BRB", "Bayerische Regiobahn"], -"M9": ["MSB", "Mainschleifenbahn"], -"MW": ["MBB", "Mecklenburgische Bäderbahn Molli"], -"N0": ["neg", "Norddeutsche Eisenbahn Gesellschaft"], -"N1": ["NWB", "NordWestBahn"], -"N2": ["NWB", "NordWestBahn"], -"N4": ["RB", "cantus Verkehrsgesellschaft"], -"N4RE": ["RE", "cantus Verkehrsgesellschaft"], -"N6": ["SWE", "Südwestdeutsche Landesverkehrs-GmbH"], -"N8": ["P", "BayernBahn GmbH"], -"NB": ["RB", "NEB Niederbarnimer Eisenbahn"], -"NBRB12": ["RB", "NEB Niederbarnimer Eisenbahn"], -"NBRB25": ["RB", "NEB Niederbarnimer Eisenbahn"], -"NBRB26": ["RB", "NEB Niederbarnimer Eisenbahn"], -"NBRB27": ["RB", "NEB Niederbarnimer Eisenbahn"], -"NBRB35": ["RB", "NEB Niederbarnimer Eisenbahn"], -"NBRB36": ["RB", "NEB Niederbarnimer Eisenbahn"], -"NBRB54": ["RB", "NEB Niederbarnimer Eisenbahn"], -"NBRB60": ["RB", "NEB Niederbarnimer Eisenbahn"], -"NBRB61": ["RB", "NEB Niederbarnimer Eisenbahn"], -"NBRB62": ["RB", "NEB Niederbarnimer Eisenbahn"], -"NBRB63": ["RB", "NEB Niederbarnimer Eisenbahn"], -"NWBus": ["NWB", "NordWestBahn"], -"NX": ["NX", "National Express"], -"NXRB": ["RB", "National Express"], -"NXRE": ["RE", "National Express"], -"NY": ["MSM", "MSM Partyzug"], -"NYUEX": ["UEX", "Urlaubs-Express"], -"NZ": ["RE", "DB Fernverkehr AG"], -"O0": ["NBE", "Nordbahn Eisenbahngesellschaft"], -"O7": ["ÖBA", "Öchsle-Bahn-Betriebsgesellschaft mbH"], -"O9": ["OPB", "oberpfalzbahn - Die Länderbahn GmbH DLB"], -"O9X": ["OPX", "oberpfalz-express - Die Länderbahn GmbH DLB"], -"OD": ["SOE", "Sächsisch-Oberlausitzer Eisenbahngesellschaft"], -"OWBus": ["OE", "Ostdeutsche Eisenbahn GmbH"], -"owl031": ["STB", "moBiel GmbH"], -"OWRB": ["RB", "Ostdeutsche Eisenbahn GmbH"], -"OWRB13": ["RB", "Ostdeutsche Eisenbahn GmbH"], -"OWRB14": ["RB", "Ostdeutsche Eisenbahn GmbH"], -"OWRB15": ["RB", "Ostdeutsche Eisenbahn GmbH"], -"OWRB19": ["RB", "Ostdeutsche Eisenbahn GmbH"], -"OWRB33": ["RB", "Ostdeutsche Eisenbahn GmbH"], -"OWRB46": ["RB", "Ostdeutsche Eisenbahn GmbH"], -"OWRB51": ["RB", "Ostdeutsche Eisenbahn GmbH"], -"OWRB64": ["RB", "Ostdeutsche Eisenbahn GmbH"], -"OWRB65": ["RB", "Ostdeutsche Eisenbahn GmbH"], -"OWRE": ["RE", "Ostdeutsche Eisenbahn GmbH"], -"OWRE2": ["RE", "Ostdeutsche Eisenbahn GmbH"], -"OWRE4": ["RE", "Ostdeutsche Eisenbahn GmbH"], -"PB": ["RB", "Hanseatische Eisenbahn GmbH"], -"pbaKB": ["ÖPO", "ÖBB-Postbus"], -"pbaWR": ["ÖPO", "ÖBB-Postbus"], -"R0": ["ENO", "enno"], -"R1": ["ME", "metronom"], -"R2": ["ERB", "eurobahn"], -"R2RB": ["RB", "eurobahn"], -"R2RE": ["RE", "eurobahn"], -"R4": ["VIA", "VIAS Rail GmbH"], -"R4NRN": ["VIA", "VIAS Rail GmbH"], -"R4RB35": ["VIA", "VIAS Rail GmbH"], -"R4RH": ["VIA", "VIAS GmbH"], -"R4S7": ["VIA", "VIAS Rail GmbH"], -"R4WEST": ["VIA", "VIAS Rail GmbH"], -"R7": ["HzL", "Hohenzollerische Landesbahn (SWEG)"], -"rabRAB": ["RAB", "Regionalverkehr Alb-Bodensee"], -"rbgAST": ["SBG", "Südbadenbus"], -"rbgBRN": ["BRN", "Busverkehr Rhein-Neckar"], -"rbgFMO": ["FMO", "Friedrich Müller Omnibusunternehmen GmbH"], -"rbgRBS": ["RBS", "Regiobus Stuttgart"], -"rbgRVS": ["RVS", "Südwestbus"], -"rbgRVs": ["RVS", "Südwestbus"], -"rbgSBG": ["SBG", "Südbadenbus"], -"rbpORN": ["ORN", "ORN Omnibusverkehr Rhein-Nahe GmbH (Rhein-Nahe-Bus)"], -"rbpRMA": ["DB", "Rhein-Mosel-Bus Ahrweiler"], -"rbpRMB": ["DB", "RMB Rhein-Mosel-Bus"], -"rbpRPB": ["RPB", "Rheinpfalzbus"], -"rbpSWM": ["DB", "DB Regio Bus Mitte"], -"RC": ["AZS", "AUTOZUG Sylt"], -"RD": ["VBG", "vogtlandbahn - Die Länderbahn GmbH DLB"], -"RS": ["RE", "Regionalverkehre Start Deutschland GmbH"], -"RSNM": ["RB", "Regionalverkehre Start Deutschland GmbH (Start Niedersachsen-Mitte)"], -"RSTN": ["STN", "Regionalverkehre Start Deutschland GmbH (Start Taunus)"], -"RSUE": ["RE", "Regionalverkehre Start Deutschland GmbH (Start Unterelbe)"], -"rvoRVO": ["RVO", "Regionalverkehr Oberbayern"], -"RW": ["PRE", "Pressnitztalbahn"], -"S3": ["SWB", "Stadtwerke Bonn"], -"S6": ["SWE", "SWEG Südwestdeutsche Landesverkehrs-GmbH"], -"S9": ["ag", "agilis"], -"SAB": ["SAB", "Schwäbische Alb-Bahn"], -"SAD003": ["SAD", "Vinschgaubahn"], -"SB": ["RB", "Süd-Thüringen-Bahn GmbH"], -"SBSIRE": ["IRE", "SWEG Bahn Stuttgart GmbH"], -"SBSMEX": ["MEX", "SWEG Bahn Stuttgart GmbH"], -"SBSRB": ["RB", "SWEG Bahn Stuttgart GmbH"], -"SBSRE": ["RE", "SWEG Bahn Stuttgart GmbH"], -"SBX": ["RE", "Süd-Thüringen-Bahn GmbH"], -"SD": ["DB", "DB Regio AG Südost"], -"swg099": ["SWE", "SWEG Südwestdeutsche Landesverkehrs-GmbH"], -"T8": ["BRB", "Bayerische Regiobahn"], -"TDHS": ["S", "S-Bahn Hannover (Transdev)"], -"TDRR": ["RRB", "RheinRuhrBahn (Transdev)"], -"tgo099": ["SWE", "SWEG Südwestdeutsche Landesverkehrs-GmbH"], -"TR": ["RB", "MittelrheinBahn (Trans Regio)"], -"TRI": ["TRI", "TRI Train Rental GmbH"], -"UW": ["UBB", "Usedomer Bäderbahn"], -"V6": ["vlx", "vlexx"], -"V6RB": ["RB", "vlexx"], -"V6RE": ["RE", "vlexx"], -"V7": ["SVG", "SVG Schienenverkehrsgesellschaft Stuttgart"], -"V9": ["P", "Wanderbahn im Regental"], -"vgm093": ["WB", "Westfalenbus"], -"vgmb93": ["WB", "Westfalenbus"], -"vgsSBS": ["S", "Saarbahn"], -"vrn008": ["STR", "Rhein-Neckar-Verkehr GmbH"], -"vrn011": ["STR", "Rhein-Neckar-Verkehr GmbH"], -"vrn022": ["MNV", "MNV Mittelhaardt Nahverkehrsgesellschaft"], -"vrn028": ["H&P", "Hetzler & Pfadt"], -"vrn032": ["PAL", "PalatinaBus"], -"vrn050": ["QNV", "QNV Queichtal Nahverkehr"], -"vrnOEG": ["RNV", "Rhein-Neckar-Verkehr GmbH (Oberrheinische Eisenbahn)"], -"vrnRHB": ["RNV", "Rhein-Neckar-Verkehr GmbH (Rhein-Haardtbahn)"], -"vrr088": ["BVR", "Busverkehr Rheinland"], -"vuvab": ["VU", "Verkehrsgesellschaft mbH Untermain"], -"vvs012": ["WEG", "Württembergische Eisenbahn-Gesellschaft mbH"], -"W0": ["WDR", "Wyker Dampfschiffs-Reederei Föhr-Amrum GmbH"], -"W2": ["Dab", "Daadetalbahn"], -"W3": ["WFB", "WestfalenBahn"], -"W6": ["WTB", "Wutachtalbahn"], -"W9": ["WBA", "waldbahn - Die Länderbahn GmbH DLB"], -"webBTR": ["STR", "Bremer Straßenbahn AG"], -"webUET": ["STB", "üstra Hannoversche Verkehrsbetriebe AG"], -"webXOS": ["WEB", "Weser-Ems-Bus"], -"webYGO": ["RBB", "Regionalbus Braunschweig GmbH"], -"webYUE": ["RBB", "Regionalbus Braunschweig GmbH"], -"WL": ["RB", "Kreisbahn Mansfelder Land"], -"X1": ["erx", "erixx"], -"X2": ["erx", "erixx"], -"Y0": ["SCH", "Adler-Schiffe"], -"Y8": ["BRB", "Bayerische Regiobahn"], -"Z8": ["BZB", "Bayerische Zugspitzbahn"], -"Z9": ["P", "Rhön-Zügle"] -} -- cgit v1.2.3