diff options
| -rw-r--r-- | .mailmap | 2 | ||||
| -rw-r--r-- | Build.PL | 34 | ||||
| -rw-r--r-- | Changelog | 10 | ||||
| -rwxr-xr-x | bin/efa-m | 41 | ||||
| -rw-r--r-- | cpanfile | 3 | ||||
| -rw-r--r-- | lib/Travel/Status/DE/EFA.pm | 608 | ||||
| -rw-r--r-- | lib/Travel/Status/DE/EFA/Departure.pm (renamed from lib/Travel/Status/DE/EFA/Result.pm) | 41 | ||||
| -rw-r--r-- | lib/Travel/Status/DE/EFA/Line.pm | 2 | ||||
| -rw-r--r-- | t/20-vrr.t | 87 | ||||
| -rw-r--r-- | t/21-vrr-ambig.t | 35 | ||||
| -rw-r--r-- | t/in/essen_alfred_ambiguous.json | 327 | ||||
| -rw-r--r-- | t/in/essen_alfredusbad_ambiguous.xml | 81 | ||||
| -rw-r--r-- | t/in/essen_bp.html | 762 | ||||
| -rw-r--r-- | t/in/essen_bp.json | 3979 | ||||
| -rw-r--r-- | t/in/essen_hb.xml | 1034 | ||||
| -rw-r--r-- | t/in/essen_hb_invalid.xml | 80 | 
16 files changed, 4658 insertions, 2468 deletions
diff --git a/.mailmap b/.mailmap new file mode 100644 index 0000000..b1c1914 --- /dev/null +++ b/.mailmap @@ -0,0 +1,2 @@ +Birte Kristina Friesel <derf@chaosdorf.de> +Birte Kristina Friesel <derf@finalrewind.org> @@ -8,29 +8,29 @@ Module::Build->new(  	build_requires => {  		'File::Slurp' => 0, -		'Test::More' => 0, -		'Test::Pod' => 0, +		'Test::More'  => 0, +		'Test::Pod'   => 0,  	},  	configure_requires => {  		'Module::Build' => 0.40,  	},  	module_name => 'Travel::Status::DE::VRR', -	license => 'perl', -	requires => { -		'perl' => '5.10.1', -		'Carp' => 0, -		'Class::Accessor' => 0, -		'DateTime' => 0, -		'Getopt::Long' => 0, -		'List::Util' => 0, -		'LWP::UserAgent' => 0, -		'LWP::Protocol::https' => 0, -		'XML::LibXML' => 0, +	license     => 'perl', +	requires    => { +		'perl'                       => '5.10.1', +		'Carp'                       => 0, +		'Class::Accessor'            => 0, +		'DateTime'                   => 0, +		'DateTime::Format::Strptime' => 0, +		'Getopt::Long'               => 0, +		'JSON'                       => 0, +		'List::Util'                 => 0, +		'LWP::UserAgent'             => 0, +		'LWP::Protocol::https'       => 0,  	}, -	sign => 1, +	sign       => 1,  	meta_merge => { -		resources => { -			repository => 'https://github.com/derf/Travel-Status-DE-VRR' -		} +		resources => +		  { repository => 'https://github.com/derf/Travel-Status-DE-VRR' }  	},  )->create_build_script(); @@ -1,3 +1,13 @@ +git HEAD +    * Drop XML::LibXML dependency +    * New dependencies: DateTime::Format::Strptime, JSON +    * Switch API language from XML to JSON +    * Rename Travel::Status::DE::EFA::Result to Travel::Status::DE::EFA::Departure +    * EFA: Remove "identified_data" accessor (not supported by JSON backends) +    * Result/Departure: Remove "info" accessor +    * Result/Departure: add "hints" accessor +    * Line: Add "number" accessor +  Travel::Status::DE::VRR 2.02 - Sun May 19 2024      * EFA->new: Deprecate "efa_url" option. Use "service" instead.        "efa_url" is still supported, just not documented anymore. @@ -198,6 +198,13 @@ sub format_route {  				$stop->name, $stop->platform,  			);  		} +		elsif ( $stop->name ) { +			$output .= sprintf( "               %40s %s\n", +				$stop->name, $stop->platform, ); +		} +		else { +			$output .= "?\n"; +		}  	}  	return $output;  } @@ -217,12 +224,12 @@ sub display_result {  	for my $line (@lines) { -		if ( $edata{messages} and length( $line->[5] ) ) { -			$line->[5] =~ tr{\n\x0d}{ }s; -			chomp $line->[5]; +		if ( $edata{messages} and $line->[5] and @{ $line->[5] } ) {  			print "\n"; -			for my $info_line ( split( qr{\n}, $line->[5] ) ) { -				say "# ${info_line}"; +			for my $hint ( @{ $line->[5] } ) { +				$hint =~ tr{\n\x0d}{ }s; +				chomp $hint; +				say "# ${hint}";  			}  		} @@ -244,7 +251,7 @@ sub show_lines {  	for my $l ( $efa->lines ) { -		if (   ( @grep_lines and none { $l->name eq $_ } @grep_lines ) +		if (   ( @grep_lines and none { $l->number eq $_ } @grep_lines )  			or ( @grep_mots and none { $l->mot_name eq $_ } @grep_mots ) )  		{  			next; @@ -254,8 +261,13 @@ sub show_lines {  			next;  		} -		push( @output, -			[ $l->type, $l->name, $l->direction // q{}, q{}, $l->route // q{} ] +		push( +			@output, +			[ +				$l->type, $l->number, +				$l->direction // q{}, q{}, +				$l->route // q{} +			]  		);  	} @@ -288,10 +300,6 @@ sub show_results {  			: $d->datetime->strftime('%H:%M')  		); -		if ( $d->platform_db ) { -			$platform .= ' (DB)'; -		} -  		if (  			   ( @grep_lines and none { $d->line eq $_ } @grep_lines )  			or ( @grep_mots  and none { $d->mot_name eq $_ } @grep_mots ) @@ -326,12 +334,15 @@ sub show_results {  		}  		my $line = $d->line; -		if ( length($line) > 10 and $d->train_type and $d->train_no ) { +		if (    ( length($line) > 10 or not $line ) +			and $d->train_type +			and $d->train_no ) +		{  			$line = $d->train_type . ' ' . $d->train_no;  		}  		@output_line -		  = ( $dtime, $platform, $line, q{}, $d->destination, $d->info ); +		  = ( $dtime, $platform, $line, q{}, $d->destination, [ $d->hints ] );  		if ( $edata{route} ) {  			$output_line[3] @@ -615,8 +626,6 @@ None.  =item * Travel::Status::DE::EFA(3pm) -=item * XML::LibXML(3pm) -  =back  =head1 BUGS AND LIMITATIONS @@ -1,11 +1,12 @@  requires 'Carp';  requires 'Class::Accessor';  requires 'DateTime'; +requires 'DateTime::Format::Strptime';  requires 'Getopt::Long'; +requires 'JSON';  requires 'List::Util';  requires 'LWP::UserAgent';  requires 'LWP::Protocol::https'; -requires 'XML::LibXML';  on test => sub {  	requires 'File::Slurp'; diff --git a/lib/Travel/Status/DE/EFA.pm b/lib/Travel/Status/DE/EFA.pm index ca207d5..eb104b3 100644 --- a/lib/Travel/Status/DE/EFA.pm +++ b/lib/Travel/Status/DE/EFA.pm @@ -9,75 +9,78 @@ our $VERSION = '2.02';  use Carp qw(confess cluck);  use DateTime; +use DateTime::Format::Strptime;  use Encode qw(encode); +use JSON;  use Travel::Status::DE::EFA::Line; -use Travel::Status::DE::EFA::Result; +use Travel::Status::DE::EFA::Departure;  use Travel::Status::DE::EFA::Stop;  use LWP::UserAgent; -use XML::LibXML;  my %efa_instance = (  	BSVG => { -		url  => 'https://bsvg.efa.de/bsvagstd/XML_DM_REQUEST', +		url  => 'https://bsvg.efa.de/bsvagstd',  		name => 'Braunschweiger Verkehrs-GmbH',  	},  	DING => { -		url  => 'https://www.ding.eu/ding3/XSLT_DM_REQUEST', +		url     => 'https://www.ding.eu/ding3', +		stopseq => +'https://www.ding.eu/ding3/XML_STOPSEQCOORD_REQUEST?=&jsonp=jsonpFn5&line=din:87002: :R:j24&stop=9001008&tripCode=290&date=20240520&time=14.0041.00&coordOutputFormat=WGS84[DD.DDDDD]&coordListOutputFormat=string&outputFormat=json&tStOTType=NEXT&hideBannerInfo=1',  		name => 'Donau-Iller Nahverkehrsverbund',  	},  	KVV => { -		url  => 'https://projekte.kvv-efa.de/sl3-alone/XSLT_DM_REQUEST', +		url  => 'https://projekte.kvv-efa.de/sl3-alone',  		name => 'Karlsruher Verkehrsverbund',  	},  	LinzAG => { -		url      => 'https://www.linzag.at/static/XSLT_DM_REQUEST', +		url      => 'https://www.linzag.at/static',  		name     => 'Linz AG',  		encoding => 'iso-8859-15',  	},  	MVV => { -		url  => 'https://efa.mvv-muenchen.de/mobile/XSLT_DM_REQUEST', +		url  => 'https://efa.mvv-muenchen.de/mobile',  		name => 'Münchner Verkehrs- und Tarifverbund',  	},  	NVBW => { -		url  => 'https://www.efa-bw.de/nvbw/XSLT_DM_REQUEST', +		url  => 'https://www.efa-bw.de/nvbw',  		name => 'Nahverkehrsgesellschaft Baden-Württemberg',  	},  	VAG => { -		url  => 'https://efa.vagfr.de/vagfr3/XSLT_DM_REQUEST', +		url  => 'https://efa.vagfr.de/vagfr3',  		name => 'Freiburger Verkehrs AG',  	},  	VGN => { -		url  => 'https://efa.vgn.de/vgnExt_oeffi/XML_DM_REQUEST', +		url  => 'https://efa.vgn.de/vgnExt_oeffi',  		name => 'Verkehrsverbund Grossraum Nuernberg',  	},  	# HTTPS: certificate verification fails  	VMV => { -		url  => 'http://efa.vmv-mbh.de/vmv/XML_DM_REQUEST', +		url  => 'http://efa.vmv-mbh.de/vmv',  		name => 'Verkehrsgesellschaft Mecklenburg-Vorpommern',  	},  	VRN => { -		url  => 'https://www.vrn.de/mngvrn//XML_DM_REQUEST', +		url  => 'https://www.vrn.de/mngvrn/',  		name => 'Verkehrsverbund Rhein-Neckar',  	},  	VRR => { -		url  => 'https://efa.vrr.de/vrr/XSLT_DM_REQUEST', +		url  => 'https://efa.vrr.de/vrr',  		name => 'Verkehrsverbund Rhein-Ruhr',  	},  	VRR2 => { -		url  => 'https://app.vrr.de/standard/XML_DM_REQUEST', +		url  => 'https://app.vrr.de/standard',  		name => 'Verkehrsverbund Rhein-Ruhr (alternative)',  	},  	VRR3 => { -		url  => 'https://efa.vrr.de/rbgstd3/XML_DM_REQUEST', +		url  => 'https://efa.vrr.de/rbgstd3',  		name => 'Verkehrsverbund Rhein-Ruhr (alternative alternative)',  	},  	VVO => { -		url  => 'https://efa.vvo-online.de/VMSSL3/XSLT_DM_REQUEST', +		url  => 'https://efa.vvo-online.de/VMSSL3',  		name => 'Verkehrsverbund Oberelbe',  	},  	VVS => { -		url  => 'https://www2.vvs.de/vvs/XSLT_DM_REQUEST', +		url  => 'https://www2.vvs.de/vvs',  		name => 'Verkehrsverbund Stuttgart',  	}, @@ -107,26 +110,10 @@ sub new_p {  			}  			my $content = $tx->res->body; -			if ( $opt{efa_encoding} ) { -				$self->{xml} = encode( $opt{efa_encoding}, $content ); -			} -			else { -				$self->{xml} = $content; -			} - -			if ( not $self->{xml} ) { - -				# LibXML doesn't like empty documents -				$promise->reject('Server returned nothing (empty result)'); -				return; -			} - -			$self->{tree} = XML::LibXML->load_xml( -				string => $self->{xml}, -			); +			$self->{response} = $self->{json}->decode($content);  			if ( $self->{developer_mode} ) { -				say $self->{tree}->toString(1); +				say $self->{json}->pretty->encode( $self->{response} );  			}  			$self->check_for_ambiguous(); @@ -158,7 +145,7 @@ sub new {  		delete $opt{timeout};  	} -	if ( not( $opt{name} ) ) { +	if ( not( $opt{name} or $opt{from_json} ) ) {  		confess('You must specify a name');  	}  	if ( $opt{type} @@ -169,6 +156,12 @@ sub new {  	if ( $opt{service} and exists $efa_instance{ $opt{service} } ) {  		$opt{efa_url} = $efa_instance{ $opt{service} }{url}; +		if ( $opt{journey} ) { +			$opt{efa_url} .= '/XML_STOPSEQCOORD_REQUEST'; +		} +		else { +			$opt{efa_url} .= '/XML_DM_REQUEST'; +		}  		$opt{time_zone} //= $efa_instance{ $opt{service} }{time_zone};  	} @@ -219,39 +212,33 @@ sub new {  	my $self = {  		post => { -			command                => q{}, -			deleteAssignedStops_dm => '1', -			help                   => 'Hilfe', -			itdDateDay             => $dt->day, -			itdDateMonth           => $dt->month, -			itdDateYear            => $dt->year, -			itdLPxx_id_dm          => ':dm', -			itdLPxx_mapState_dm    => q{}, -			itdLPxx_mdvMap2_dm     => q{}, -			itdLPxx_mdvMap_dm      => '3406199:401077:NAV3', -			itdLPxx_transpCompany  => 'vrr', -			itdLPxx_view           => q{}, -			itdTimeHour            => $dt->hour, -			itdTimeMinute          => $dt->minute, -			language               => 'de', -			mode                   => 'direct', -			nameInfo_dm            => 'invalid', -			nameState_dm           => 'empty', -			name_dm                => encode( 'UTF-8', $opt{name} ), -			outputFormat           => 'XML', -			ptOptionsActive        => '1', -			requestID              => '0', -			reset                  => 'neue Anfrage', -			sessionID              => '0', -			submitButton           => 'anfordern', -			typeInfo_dm            => 'invalid', -			type_dm                => $opt{type} // 'stop', -			useProxFootSearch      => $opt{proximity_search} ? '1' : '0', -			useRealtime            => '1', +			language          => 'de', +			mode              => 'direct', +			outputFormat      => 'JSON', +			type_dm           => $opt{type} // 'stop', +			useProxFootSearch => $opt{proximity_search} ? '1' : '0', +			useRealtime       => '1', +			itdDateDay        => $dt->day, +			itdDateMonth      => $dt->month, +			itdDateYear       => $dt->year, +			itdTimeHour       => $dt->hour, +			itdTimeMinute     => $dt->minute, +			name_dm           => encode( 'UTF-8', $opt{name} ),  		}, +		response       => $opt{from_json},  		developer_mode => $opt{developer_mode},  		efa_url        => $opt{efa_url},  		service        => $opt{service}, +		strp_stopseq   => DateTime::Format::Strptime->new( +			pattern   => '%Y%m%d %H:%M', +			time_zone => 'Europe/Berlin', +		), +		strp_stopseq_s => DateTime::Format::Strptime->new( +			pattern   => '%Y%m%d %H:%M:%S', +			time_zone => 'Europe/Berlin', +		), + +		json => JSON->new->utf8,  	};  	if ( $opt{place} ) { @@ -281,33 +268,26 @@ sub new {  		return $self;  	} -	my $response = $self->{ua}->post( $self->{efa_url}, $self->{post} ); - -	if ( $response->is_error ) { -		$self->{errstr} = $response->status_line; -		return $self; +	if ( $self->{developer_mode} ) { +		say 'POST ' . $self->{efa_url}; +		while ( my ( $key, $value ) = each %{ $self->{post} } ) { +			printf( "%30s = %s\n", $key, $value ); +		}  	} -	if ( $opt{efa_encoding} ) { -		$self->{xml} = encode( $opt{efa_encoding}, $response->content ); -	} -	else { -		$self->{xml} = $response->decoded_content; -	} +	if ( not $self->{response} ) { +		my $response = $self->{ua}->post( $self->{efa_url}, $self->{post} ); -	if ( not $self->{xml} ) { +		if ( $response->is_error ) { +			$self->{errstr} = $response->status_line; +			return $self; +		} -		# LibXML doesn't like empty documents -		$self->{errstr} = 'Server returned nothing (empty result)'; -		return $self; +		$self->{response} = $self->{json}->decode( $response->content );  	} -	$self->{tree} = XML::LibXML->load_xml( -		string => $self->{xml}, -	); -  	if ( $self->{developer_mode} ) { -		say $self->{tree}->toString(1); +		say $self->{json}->pretty->encode( $self->{response} );  	}  	$self->check_for_ambiguous(); @@ -315,20 +295,6 @@ sub new {  	return $self;  } -sub new_from_xml { -	my ( $class, %opt ) = @_; - -	my $self = { -		xml => $opt{xml}, -	}; - -	$self->{tree} = XML::LibXML->load_xml( -		string => $self->{xml}, -	); - -	return bless( $self, $class ); -} -  sub errstr {  	my ($self) = @_; @@ -356,182 +322,98 @@ sub place_candidates {  sub check_for_ambiguous {  	my ($self) = @_; -	my $xml = $self->{tree}; +	my $json = $self->{response}; -	my $xp_place = XML::LibXML::XPathExpression->new('//itdOdv/itdOdvPlace'); -	my $xp_name  = XML::LibXML::XPathExpression->new('//itdOdv/itdOdvName'); -	my $xp_mesg -	  = XML::LibXML::XPathExpression->new('//itdMessage[@type="error"]'); - -	my $xp_place_elem = XML::LibXML::XPathExpression->new('./odvPlaceElem'); -	my $xp_name_elem  = XML::LibXML::XPathExpression->new('./odvNameElem'); - -	my $e_place = ( $xml->findnodes($xp_place) )[0]; -	my $e_name  = ( $xml->findnodes($xp_name) )[0]; -	my @e_mesg  = $xml->findnodes($xp_mesg); - -	if ( not( $e_place and $e_name ) ) { - -		# this should not happen[tm] -		cluck('skipping ambiguity check- itdOdvPlace/itdOdvName missing'); -		return; -	} - -	my $s_place = $e_place->getAttribute('state'); -	my $s_name  = $e_name->getAttribute('state'); - -	if ( $s_place eq 'list' ) { -		$self->{place_candidates} = [ map { $_->textContent } -			  @{ $e_place->findnodes($xp_place_elem) } ]; -		$self->{errstr} = 'ambiguous place parameter'; +	if ( $json->{departureList} ) {  		return;  	} -	if ( $s_name eq 'list' ) { -		$self->{name_candidates} -		  = [ map { $_->textContent } @{ $e_name->findnodes($xp_name_elem) } ]; -		$self->{errstr} = 'ambiguous name parameter'; -		return; -	} -	if ( $s_place eq 'notidentified' ) { -		$self->{errstr} = 'invalid place parameter'; -		return; -	} -	if ( $s_name eq 'notidentified' ) { -		$self->{errstr} = 'invalid name parameter'; -		return; -	} -	if (@e_mesg) { -		$self->{errstr} = join( q{; }, map { $_->textContent } @e_mesg ); -		return; +	for my $m ( @{ $json->{dm}{message} // [] } ) { +		if ( $m->{name} eq 'error' and $m->{value} eq 'name list' ) { +			$self->{errstr} = "ambiguous name parameter"; +			$self->{name_candidates} +			  = [ map { $_->{name} } @{ $json->{dm}{points} // [] } ]; +			return; +		} +		if ( $m->{name} eq 'error' and $m->{value} eq 'place list' ) { +			$self->{errstr} = "ambiguous name parameter"; +			$self->{name_candidates} +			  = [ map { $_->{name} } @{ $json->{dm}{points} // [] } ]; +			return; +		}  	}  	return;  } -sub identified_data { -	my ($self) = @_; - -	if ( not $self->{tree} ) { -		return; -	} - -	my $xp_place -	  = XML::LibXML::XPathExpression->new('//itdOdv/itdOdvPlace/odvPlaceElem'); -	my $xp_name -	  = XML::LibXML::XPathExpression->new('//itdOdv/itdOdvName/odvNameElem'); - -	my $e_place = ( $self->{tree}->findnodes($xp_place) )[0]; -	my $e_name  = ( $self->{tree}->findnodes($xp_name) )[0]; - -	return ( $e_place->textContent, $e_name->textContent ); -} -  sub lines {  	my ($self) = @_; -	my @lines;  	if ( $self->{lines} ) {  		return @{ $self->{lines} };  	} -	if ( not $self->{tree} ) { -		return; -	} - -	my $xp_element -	  = XML::LibXML::XPathExpression->new('//itdServingLines/itdServingLine'); - -	my $xp_info  = XML::LibXML::XPathExpression->new('./itdNoTrain'); -	my $xp_route = XML::LibXML::XPathExpression->new('./itdRouteDescText'); -	my $xp_oper  = XML::LibXML::XPathExpression->new('./itdOperator/name'); - -	for my $e ( $self->{tree}->findnodes($xp_element) ) { - -		my $e_info  = ( $e->findnodes($xp_info) )[0]; -		my $e_route = ( $e->findnodes($xp_route) )[0]; -		my $e_oper  = ( $e->findnodes($xp_oper) )[0]; - -		if ( not($e_info) ) { -			cluck( 'node with insufficient data. This should not happen. ' -				  . $e->getAttribute('number') ); -			next; -		} - -		my $line       = $e->getAttribute('number'); -		my $direction  = $e->getAttribute('direction'); -		my $valid      = $e->getAttribute('valid'); -		my $type       = $e_info->getAttribute('name'); -		my $mot        = $e->getAttribute('motType'); -		my $route      = ( $e_route ? $e_route->textContent : undef ); -		my $operator   = ( $e_oper  ? $e_oper->textContent  : undef ); -		my $identifier = $e->getAttribute('stateless'); - -		push( -			@lines, -			Travel::Status::DE::EFA::Line->new( -				name       => $line, -				direction  => $direction, -				valid      => $valid, -				type       => $type, -				mot        => $mot, -				route      => $route, -				operator   => $operator, -				identifier => $identifier, -			) -		); +	for my $line ( @{ $self->{response}{servingLines}{lines} // [] } ) { +		push( @{ $self->{lines} }, $self->parse_line($line) );  	} -	$self->{lines} = \@lines; +	return @{ $self->{lines} // [] }; +} -	return @lines; +sub parse_line { +	my ( $self, $line ) = @_; + +	my $mode = $line->{mode} // {}; + +	return Travel::Status::DE::EFA::Line->new( +		type       => $mode->{product}, +		name       => $mode->{name}, +		number     => $mode->{number}, +		direction  => $mode->{destination}, +		valid      => $mode->{timetablePeriod}, +		mot        => $mode->{product}, +		operator   => $mode->{diva}{operator}, +		identifier => $mode->{diva}{globalId}, +		, +	);  }  sub parse_route { -	my ( $self, @nodes ) = @_; -	my $xp_routepoint_date -	  = XML::LibXML::XPathExpression->new('./itdDateTime/itdDate'); -	my $xp_routepoint_time -	  = XML::LibXML::XPathExpression->new('./itdDateTime/itdTime'); - +	my ( $self, $stop_seq, $requested_id ) = @_;  	my @ret; -	for my $e (@nodes) { -		my @dates = $e->findnodes($xp_routepoint_date); -		my @times = $e->findnodes($xp_routepoint_time); +	if ( not $stop_seq ) { +		return \@ret; +	} + +	# Oh EFA, you so silly +	if ( ref($stop_seq) eq 'HASH' ) { +		# For lines that start or terminate at the requested stop, onwardStopSeq / prevStopSeq includes the requested stop. +		if ( $stop_seq->{ref}{id} eq $requested_id ) { +			return \@ret; +		} +		$stop_seq = [$stop_seq]; +	} + +	for my $stop ( @{ $stop_seq // [] } ) { +		my $ref = $stop->{ref};  		my ( $arr, $dep ); -		# note that the first stop has an arrival node with an invalid -		# timestamp and the terminal stop has a departure node with an -		# invalid timestamp. - -		if ( $dates[0] and $times[0] and $dates[0]->getAttribute('day') != -1 ) -		{ -			$arr = DateTime->new( -				year      => $dates[0]->getAttribute('year'), -				month     => $dates[0]->getAttribute('month'), -				day       => $dates[0]->getAttribute('day'), -				hour      => $times[0]->getAttribute('hour'), -				minute    => $times[0]->getAttribute('minute'), -				second    => $times[0]->getAttribute('second') // 0, -				time_zone => 'Europe/Berlin' -			); +		if ( $ref->{arrDateTimeSec} ) { +			$arr = $self->{strp_stopseq_s} +			  ->parse_datetime( $ref->{arrDateTimeSec} ); +		} +		elsif ( $ref->{arrDateTime} ) { +			$arr = $self->{strp_stopseq}->parse_datetime( $ref->{arrDateTime} );  		} -		if (    $dates[-1] -			and $times[-1] -			and $dates[-1]->getAttribute('day') != -1 ) -		{ -			$dep = DateTime->new( -				year      => $dates[-1]->getAttribute('year'), -				month     => $dates[-1]->getAttribute('month'), -				day       => $dates[-1]->getAttribute('day'), -				hour      => $times[-1]->getAttribute('hour'), -				minute    => $times[-1]->getAttribute('minute'), -				second    => $times[-1]->getAttribute('second') // 0, -				time_zone => 'Europe/Berlin' -			); +		if ( $ref->{depDateTimeSec} ) { +			$dep = $self->{strp_stopseq_s} +			  ->parse_datetime( $ref->{depDateTimeSec} ); +		} +		elsif ( $ref->{depDateTime} ) { +			$dep = $self->{strp_stopseq}->parse_datetime( $ref->{depDateTime} );  		}  		push( @@ -539,14 +421,79 @@ sub parse_route {  			Travel::Status::DE::EFA::Stop->new(  				arr      => $arr,  				dep      => $dep, -				name     => $e->getAttribute('name'), -				name_suf => $e->getAttribute('nameWO'), -				platform => $e->getAttribute('platformName'), +				name     => $stop->{name}, +				name_suf => $stop->{nameWO}, +				platform => $ref->{platform} || $stop->{platformName} || undef,  			)  		);  	} -	return @ret; +	return \@ret; +} + +sub parse_departure { +	my ( $self, $departure ) = @_; + +	my ( $sched_dt,   $real_dt ); +	my ( $prev_route, $next_route ); + +	if ( my $dt = $departure->{dateTime} ) { +		$sched_dt = DateTime->new( +			year      => $dt->{year}, +			month     => $dt->{month}, +			day       => $dt->{day}, +			hour      => $dt->{hour}, +			minute    => $dt->{minute}, +			second    => $dt->{second} // 0, +			time_zone => 'Europe/Berlin', +		); +	} + +	if ( my $dt = $departure->{realDateTime} ) { +		$real_dt = DateTime->new( +			year      => $dt->{year}, +			month     => $dt->{month}, +			day       => $dt->{day}, +			hour      => $dt->{hour}, +			minute    => $dt->{minute}, +			second    => $dt->{second} // 0, +			time_zone => 'Europe/Berlin', +		); +	} + +	if ( $departure->{prevStopSeq} ) { +		$prev_route = $self->parse_route( $departure->{prevStopSeq}, +			$departure->{stopID} ); +	} +	if ( $departure->{onwardStopSeq} ) { +		$next_route = $self->parse_route( $departure->{onwardStopSeq}, +			$departure->{stopID} ); +	} + +	my @hints +	  = map { $_->{content} } @{ $departure->{servingLine}{hints} // [] }; + +	return Travel::Status::DE::EFA::Departure->new( +		rt_datetime    => $real_dt, +		platform       => $departure->{platform}, +		platform_name  => $departure->{platformName}, +		platform_type  => $departure->{pointType}, +		line           => $departure->{servingLine}{symbol}, +		train_type     => $departure->{servingLine}{trainType}, +		train_name     => $departure->{servingLine}{trainName}, +		train_no       => $departure->{servingLine}{trainNum}, +		origin         => $departure->{servingLine}{directionFrom}, +		destination    => $departure->{servingLine}{direction}, +		occupancy      => $departure->{occupancy}, +		countdown      => $departure->{countdown}, +		delay          => $departure->{servingLine}{delay}, +		sched_datetime => $sched_dt, +		type           => $departure->{servingLine}{name}, +		mot            => $departure->{servingLine}{motType}, +		hints          => \@hints, +		prev_route     => $prev_route, +		next_route     => $next_route, +	);  }  sub results { @@ -557,147 +504,10 @@ sub results {  		return @{ $self->{results} };  	} -	if ( not $self->{tree} ) { -		return; -	} - -	my $xp_element = XML::LibXML::XPathExpression->new('//itdDeparture'); - -	my $xp_date  = XML::LibXML::XPathExpression->new('./itdDateTime/itdDate'); -	my $xp_time  = XML::LibXML::XPathExpression->new('./itdDateTime/itdTime'); -	my $xp_rdate = XML::LibXML::XPathExpression->new('./itdRTDateTime/itdDate'); -	my $xp_rtime = XML::LibXML::XPathExpression->new('./itdRTDateTime/itdTime'); -	my $xp_line  = XML::LibXML::XPathExpression->new('./itdServingLine'); -	my $xp_info -	  = XML::LibXML::XPathExpression->new('./itdServingLine/itdNoTrain'); -	my $xp_prev_route -	  = XML::LibXML::XPathExpression->new('./itdPrevStopSeq/itdPoint'); -	my $xp_next_route -	  = XML::LibXML::XPathExpression->new('./itdOnwardStopSeq/itdPoint'); - -	$self->lines; - -	for my $e ( $self->{tree}->findnodes($xp_element) ) { - -		my $e_date = ( $e->findnodes($xp_date) )[0]; -		my $e_time = ( $e->findnodes($xp_time) )[0]; -		my $e_line = ( $e->findnodes($xp_line) )[0]; -		my $e_info = ( $e->findnodes($xp_info) )[0]; - -		my $e_rdate = ( $e->findnodes($xp_rdate) )[0]; -		my $e_rtime = ( $e->findnodes($xp_rtime) )[0]; - -		if ( not( $e_date and $e_time and $e_line ) ) { -			cluck('node with insufficient data. This should not happen'); -			next; -		} - -		my ( $sched_dt, $real_dt ); - -		if ( $e_date and $e_time and $e_date->getAttribute('day') != -1 ) { -			$sched_dt = DateTime->new( -				year      => $e_date->getAttribute('year'), -				month     => $e_date->getAttribute('month'), -				day       => $e_date->getAttribute('day'), -				hour      => $e_time->getAttribute('hour'), -				minute    => $e_time->getAttribute('minute'), -				second    => $e_time->getAttribute('second') // 0, -				time_zone => 'Europe/Berlin' -			); -		} - -		if ( $e_rdate and $e_rtime and $e_rdate->getAttribute('day') != -1 ) { -			$real_dt = DateTime->new( -				year      => $e_rdate->getAttribute('year'), -				month     => $e_rdate->getAttribute('month'), -				day       => $e_rdate->getAttribute('day'), -				hour      => $e_rtime->getAttribute('hour'), -				minute    => $e_rtime->getAttribute('minute'), -				second    => $e_rtime->getAttribute('second') // 0, -				time_zone => 'Europe/Berlin' -			); -		} - -		my $platform      = $e->getAttribute('platform'); -		my $platform_name = $e->getAttribute('platformName'); -		my $countdown     = $e->getAttribute('countdown'); -		my $occupancy     = $e->getAttribute('occupancy'); -		my $line          = $e_line->getAttribute('number'); -		my $train_type    = $e_line->getAttribute('trainType'); -		my $train_name    = $e_line->getAttribute('trainName'); -		my $train_no      = $e_line->getAttribute('trainNum'); -		my $dest          = $e_line->getAttribute('direction'); -		my $info          = $e_info->textContent; -		my $key           = $e_line->getAttribute('key'); -		my $delay         = $e_info->getAttribute('delay'); -		my $type          = $e_info->getAttribute('name'); -		my $mot           = $e_line->getAttribute('motType'); - -		my $platform_is_db = 0; - -		my @prev_route; -		my @next_route; - -		if ( $self->{want_full_routes} ) { -			@prev_route -			  = $self->parse_route( @{ [ $e->findnodes($xp_prev_route) ] } ); -			@next_route -			  = $self->parse_route( @{ [ $e->findnodes($xp_next_route) ] } ); -		} +	my $json = $self->{response}; -		my @line_obj -		  = grep { $_->{identifier} eq $e_line->getAttribute('stateless') } -		  @{ $self->{lines} }; - -		# platform / platformName are inconsistent. The following cases are -		# known: -		# -		# * platform="int", platformName="" : non-DB platform -		# * platform="int", platformName="Bstg. int" : non-DB platform -		# * platform="#int", platformName="Gleis int" : non-DB platform -		# * platform="#int", platformName="Gleis int" : DB platform? -		# * platform="", platformName="Gleis int" : DB platform -		# * platform="DB", platformName="Gleis int" : DB platform -		# * platform="gibberish", platformName="Gleis int" : DB platform - -		if ( ( $platform_name and $platform_name =~ m{ ^ Gleis }ox ) -			and not( $platform and $platform =~ s{ ^ \# }{}ox ) ) -		{ -			$platform_is_db = 1; -		} - -		if ( $platform_name and $platform_name =~ m{ ^ (Gleis | Bstg[.])}ox ) { -			$platform = ( split( / /, $platform_name ) )[1]; -		} -		elsif ( $platform_name and not $platform ) { -			$platform = $platform_name; -		} - -		push( -			@results, -			Travel::Status::DE::EFA::Result->new( -				rt_datetime    => $real_dt, -				platform       => $platform, -				platform_db    => $platform_is_db, -				platform_name  => $platform_name, -				key            => $key, -				lineref        => $line_obj[0] // undef, -				line           => $line, -				train_type     => $train_type, -				train_name     => $train_name, -				train_no       => $train_no, -				destination    => $dest, -				occupancy      => $occupancy, -				countdown      => $countdown, -				info           => $info, -				delay          => $delay, -				sched_datetime => $sched_dt, -				type           => $type, -				mot            => $mot, -				prev_route     => \@prev_route, -				next_route     => \@next_route, -			) -		); +	for my $departure ( @{ $json->{departureList} // [] } ) { +		push( @results, $self->parse_departure($departure) );  	}  	@results = map { $_->[0] } @@ -734,7 +544,7 @@ Travel::Status::DE::EFA - unofficial EFA departure monitor      use Travel::Status::DE::EFA;      my $status = Travel::Status::DE::EFA->new( -        efa_url => 'https://efa.vrr.de/vrr/XSLT_DM_REQUEST', +        efa_url => 'https://efa.vrr.de/vrr/XML_DM_REQUEST',          name => 'Essen Helenenstr'      ); @@ -805,7 +615,7 @@ iso-8859-15.  If true: Request full routes for all departures from the backend. This  enables the B<route_pre>, B<route_post> and B<route_interesting> accessors in -Travel::Status::DE::EFA::Result(3pm). +Travel::Status::DE::EFA::Departure(3pm).  =item B<proximity_search> => B<0>|B<1> @@ -867,7 +677,7 @@ nothing (undef / empty list) otherwise.  =item $status->results -Returns a list of Travel::Status::DE::EFA::Result(3pm) objects, each one describing +Returns a list of Travel::Status::DE::EFA::Departure(3pm) objects, each one describing  one departure.  =item Travel::Status::DE::EFA::get_efa_urls() @@ -906,23 +716,25 @@ None.  =item * DateTime(3pm) -=item * LWP::UserAgent(3pm) +=item * DateTime::Format::Strptime(3pm) + +=item * JSON(3pm) -=item * XML::LibXML(3pm) +=item * LWP::UserAgent(3pm)  =back  =head1 BUGS AND LIMITATIONS -Not all features of the web interface are supported. +The API is not exposed completely.  =head1 SEE ALSO -efa-m(1), Travel::Status::DE::EFA::Result(3pm). +efa-m(1), Travel::Status::DE::EFA::Departure(3pm).  =head1 AUTHOR -Copyright (C) 2011-2023 by Birte Kristina Friesel E<lt>derf@finalrewind.orgE<gt> +Copyright (C) 2011-2024 by Birte Kristina Friesel E<lt>derf@finalrewind.orgE<gt>  =head1 LICENSE diff --git a/lib/Travel/Status/DE/EFA/Result.pm b/lib/Travel/Status/DE/EFA/Departure.pm index 11ff15a..802f84e 100644 --- a/lib/Travel/Status/DE/EFA/Result.pm +++ b/lib/Travel/Status/DE/EFA/Departure.pm @@ -1,4 +1,4 @@ -package Travel::Status::DE::EFA::Result; +package Travel::Status::DE::EFA::Departure;  use strict;  use warnings; @@ -8,10 +8,10 @@ use parent 'Class::Accessor';  our $VERSION = '2.02'; -Travel::Status::DE::EFA::Result->mk_ro_accessors( -	qw(countdown datetime delay destination is_cancelled info key line lineref -	  mot occupancy operator platform platform_db platform_name rt_datetime -	  sched_datetime train_type train_name train_no type) +Travel::Status::DE::EFA::Departure->mk_ro_accessors( +	qw(countdown datetime delay destination is_cancelled key line lineref +	  mot occupancy operator origin platform platform_db platform_name +	  rt_datetime sched_datetime train_type train_name train_no type)  );  my @mot_mapping = qw{ @@ -37,6 +37,12 @@ sub new {  	return bless( $ref, $obj );  } +sub hints { +	my ($self) = @_; + +	return @{ $self->{hints} // [] }; +} +  sub mot_name {  	my ($self) = @_; @@ -46,13 +52,13 @@ sub mot_name {  sub route_pre {  	my ($self) = @_; -	return @{ $self->{prev_route} }; +	return @{ $self->{prev_route} // [] };  }  sub route_post {  	my ($self) = @_; -	return @{ $self->{next_route} }; +	return @{ $self->{next_route} // [] };  }  sub route_interesting { @@ -121,7 +127,7 @@ __END__  =head1 NAME -Travel::Status::DE::EFA::Result - Information about a single +Travel::Status::DE::EFA::Departure - Information about a single  departure received by Travel::Status::DE::EFA  =head1 SYNOPSIS @@ -140,7 +146,7 @@ version 2.02  =head1 DESCRIPTION -Travel::Status::DE::EFA::Result describes a single departure as obtained by +Travel::Status::DE::EFA::Departure describes a single departure as obtained by  Travel::Status::DE::EFA.  It contains information about the time, platform,  line number and destination. @@ -171,12 +177,11 @@ indicates departure on time. undef when no realtime information is available.  Destination name. -=item $departure->info +=item $departure->hints -Additional information related to the departure (string).  If departures for -an address were requested, this is the stop name, otherwise it may be recent -news related to the line's schedule.  If no information is available, returns -an empty string. +Additional information related to the departure (list of strings). If +departures for an address were requested, this is the stop name, otherwise it +may be recent news related to the line's schedule.  =item $departure->is_cancelled @@ -216,6 +221,10 @@ Occupancy values are passed from the backend as-is. Known values are  "MANY_SEATS" (low occupation), "FEW_SEATS" (high occupation),  "STANDING_ONLY" (very high occupation), and "FULL" (boarding not advised). +=item $departure->origin + +Origin name. +  =item $departure->platform  Departure platform number (may not be a number). @@ -277,9 +286,9 @@ field.  See L</DEPARTURE TYPES>.  =over -=item $departure = Travel::Status::DE::EFA::Result->new(I<%data>) +=item $departure = Travel::Status::DE::EFA::Departure->new(I<%data>) -Returns a new Travel::Status::DE::EFA::Result object.  You should not need to +Returns a new Travel::Status::DE::EFA::Departure object.  You should not need to  call this.  =item $departure->TO_JSON diff --git a/lib/Travel/Status/DE/EFA/Line.pm b/lib/Travel/Status/DE/EFA/Line.pm index 69526fd..4f44c7b 100644 --- a/lib/Travel/Status/DE/EFA/Line.pm +++ b/lib/Travel/Status/DE/EFA/Line.pm @@ -9,7 +9,7 @@ use parent 'Class::Accessor';  our $VERSION = '2.02';  Travel::Status::DE::EFA::Line->mk_ro_accessors( -	qw(direction mot name operator route type valid)); +	qw(direction mot name number operator route type valid));  my @mot_mapping = qw{    zug s-bahn u-bahn stadtbahn tram stadtbus regionalbus @@ -6,92 +6,81 @@ use utf8;  use Encode      qw(decode);  use File::Slurp qw(slurp); -use Test::More tests => 113; +use JSON; +use Test::More tests => 112;  BEGIN {  	use_ok('Travel::Status::DE::VRR');  }  require_ok('Travel::Status::DE::VRR'); -my $xml = slurp('t/in/essen_hb.xml'); +my $json = JSON->new->utf8->decode( scalar slurp('t/in/essen_bp.json') ); -my $status = Travel::Status::DE::VRR->new_from_xml( xml => $xml ); +my $status = Travel::Status::DE::VRR->new( from_json => $json );  isa_ok( $status, 'Travel::Status::DE::EFA' );  can_ok( $status, qw(errstr results) );  is( $status->errstr, undef, 'no error' ); -is_deeply( [ $status->identified_data ], -	[qw[Essen Hauptbahnhof]], 'identified_data' );  my @results = $status->results;  for my $result (@results) { -	isa_ok( $result, 'Travel::Status::DE::EFA::Result' ); +	isa_ok( $result, 'Travel::Status::DE::EFA::Departure' );  	can_ok( $result, -		qw(datetime destination info line type platform sched_datetime) ); +		qw(datetime destination hints line type platform sched_datetime) );  } -is( $results[0]->destination, 'Düsseldorf Hbf', -	'first result: destination ok' ); -is( $results[0]->info, 'Bordrestaurant',            'first result: no info' ); -is( $results[0]->line, 'ICE 946 Intercity-Express', 'first result: line ok' ); +is( +	$results[0]->destination, +	'Essen Germaniaplatz', +	'first result: destination ok' +); +is_deeply( [ $results[0]->hints ], [], 'first result: no hints' ); +is( $results[0]->line, '106', 'first result: line ok' );  is( $results[0]->datetime->strftime('%d.%m.%Y'), -	'16.11.2011', 'first result: real date ok' ); +	'21.09.2024', 'first result: real date ok' );  is( $results[0]->datetime->strftime('%H:%M'), -	'09:40', 'first result: real time ok' ); -is( $results[0]->delay, 4, 'first result: delay 4' ); +	'18:35', 'first result: real time ok' ); +is( $results[0]->delay, 0, 'first result: delay 0' );  is( $results[0]->sched_datetime->strftime('%d.%m.%Y'), -	'16.11.2011', 'first result: scheduled date ok' ); +	'21.09.2024', 'first result: scheduled date ok' );  is( $results[0]->sched_datetime->strftime('%H:%M'), -	'09:36', 'first result: scheduled time ok' ); -is( $results[0]->mot_name, 'zug', 'first result: mot_name ok' ); - -#is($results[0]->platform, '1', 'first result: platform ok'); -#is($results[0]->platform_db, 1, 'first result: platform_db ok'); +	'18:35', 'first result: scheduled time ok' ); +is( $results[0]->mot_name, 'tram', 'first result: mot_name ok' );  is(  	$results[3]->destination, -	'Mülheim Heißen Kirche', +	'Gelsenkirchen Buerer Str.',  	'fourth result: destination ok'  ); -is( -	$results[3]->info, -	'Ab (H) Heißen Kirche, Umstieg in den SEV Ri. Mülheim Hbf.', -	'fourth result: no info' -); -is( $results[3]->line, '18', 'fourth result: line ok' ); +is_deeply( [ $results[3]->hints ], [], 'fourth result: no hints' ); +is( $results[3]->line, 'U11', 'fourth result: line ok' );  is( $results[3]->datetime->strftime('%d.%m.%Y'), -	'16.11.2011', 'fourth result: real date ok' ); +	'21.09.2024', 'fourth result: real date ok' );  is( $results[3]->datetime->strftime('%H:%M'), -	'09:39', 'fourth result: real time ok' ); -is( $results[3]->delay, undef, 'fourth result: delay undef' ); +	'18:36', 'fourth result: real time ok' ); +is( $results[3]->delay, 0, 'fourth result: delay 0' );  is( $results[3]->sched_datetime->strftime('%d.%m.%Y'), -	'16.11.2011', 'fourth result: scheduled date ok' ); +	'21.09.2024', 'fourth result: scheduled date ok' );  is( $results[3]->sched_datetime->strftime('%H:%M'), -	'09:39', 'fourth result: scheduled time ok' ); +	'18:36', 'fourth result: scheduled time ok' );  is( $results[3]->mot_name, 'u-bahn', 'fourth result: mot_name ok' ); -#is($results[3]->platform, '2', 'fourth result: platform ok'); -#is($results[3]->platform_db, 0, 'fourth result: platform_db ok'); - -is( $results[-1]->destination, 'Hamm (Westf)', 'last result: destination ok' );  is( -	$results[-1]->info, -	'Fahrradmitnahme begrenzt möglich', -	'last result: info ok' +	$results[-1]->destination, +	'Essen Zeche Ludwig', +	'last result: destination ok'  ); -is( $results[-1]->delay, 12,    'last result: delay 12' ); -is( $results[-1]->line,  'RE1', 'last result: line ok' ); +is_deeply( [ $results[-1]->hints ], [], 'last result: no hints' ); +is( $results[-1]->delay, 0,     'last result: delay 0' ); +is( $results[-1]->line,  '105', 'last result: line ok' );  is( $results[-1]->datetime->strftime('%d.%m.%Y'), -	'16.11.2011', 'last result: date ok' ); -is( $results[-1]->datetime->strftime('%H:%M'), '10:05', +	'21.09.2024', 'last result: date ok' ); +is( $results[-1]->datetime->strftime('%H:%M'), '19:08',  	'last result: time ok' );  is( $results[-1]->sched_datetime->strftime('%d.%m.%Y'), -	'16.11.2011', 'first result: scheduled date ok' ); +	'21.09.2024', 'first result: scheduled date ok' );  is( $results[-1]->sched_datetime->strftime('%H:%M'), -	'09:53', 'last result: scheduled time ok' ); -is( $results[-1]->mot_name, 'zug', 'last result: mot_name ok' ); - -#is($results[-1]->platform, '6', 'last result: platform ok'); -#is($results[-1]->platform_db, 1, 'last result: platform ok'); +	'19:08', 'last result: scheduled time ok' ); +is( $results[-1]->mot_name, 'tram', 'last result: mot_name ok' ); diff --git a/t/21-vrr-ambig.t b/t/21-vrr-ambig.t index e4783f5..a201d52 100644 --- a/t/21-vrr-ambig.t +++ b/t/21-vrr-ambig.t @@ -5,27 +5,36 @@ use 5.010;  use utf8;  use File::Slurp qw(slurp); -use Test::More tests => 10; +use JSON; +use Test::More tests => 9;  BEGIN {  	use_ok('Travel::Status::DE::VRR');  }  require_ok('Travel::Status::DE::VRR'); -my $xml = slurp('t/in/essen_alfredusbad_ambiguous.xml'); +my $json +  = JSON->new->utf8->decode( scalar slurp('t/in/essen_alfred_ambiguous.json') ); -my $status = Travel::Status::DE::VRR->new_from_xml(xml => $xml); +my $status = Travel::Status::DE::VRR->new( from_json => $json ); -isa_ok($status, 'Travel::Status::DE::VRR'); -can_ok($status, qw(errstr results)); +isa_ok( $status, 'Travel::Status::DE::VRR' ); +can_ok( $status, qw(errstr results) );  $status->check_for_ambiguous(); -is($status->errstr, 'ambiguous name parameter', 'errstr ok'); - -is_deeply([$status->place_candidates], [], 'place candidates ok'); -is_deeply([$status->name_candidates], ['Alfredusbad', 'Am Alfredusbad'], 'name candidates ok'); - -is_deeply([$status->lines], [], 'no lines'); -is_deeply([$status->results], [], 'no results'); -is_deeply([$status->identified_data], [qw[Essen Alfredusbad]], 'identified data'); +is( $status->errstr, 'ambiguous name parameter', 'errstr ok' ); + +is_deeply( [ $status->place_candidates ], [], 'place candidates ok' ); +is_deeply( +	[ $status->name_candidates ], +	[ +		'Essen, Alfred-Krupp-Schule', +		'Essen, Alfredbrücke', +		'Essen, Alfredusbad' +	], +	'name candidates ok' +); + +is_deeply( [ $status->lines ],   [], 'no lines' ); +is_deeply( [ $status->results ], [], 'no results' ); diff --git a/t/in/essen_alfred_ambiguous.json b/t/in/essen_alfred_ambiguous.json new file mode 100644 index 0000000..1cf215e --- /dev/null +++ b/t/in/essen_alfred_ambiguous.json @@ -0,0 +1,327 @@ +{ +   "dm" : { +      "message" : [ +         { +            "value" : "1", +            "name" : "code" +         }, +         { +            "value" : "name list", +            "name" : "error" +         }, +         { +            "name" : "type", +            "value" : "" +         }, +         { +            "name" : "module", +            "value" : "BROKER" +         } +      ], +      "input" : { +         "input" : "Alfred" +      }, +      "points" : [ +         { +            "usage" : "dm", +            "tariffLayer2" : "", +            "stateless" : "20009114", +            "type" : "stop", +            "name" : "Essen, Alfred-Krupp-Schule", +            "tariffAreaName" : "", +            "tariffArea" : "", +            "ref" : { +               "gid" : "", +               "place" : "Essen", +               "omc" : "5113000", +               "id" : "20009114", +               "placeID" : "18" +            }, +            "tariffLayer1" : "" +         }, +         { +            "name" : "Essen, Alfredbrücke", +            "type" : "stop", +            "stateless" : "20009113", +            "tariffLayer2" : "", +            "usage" : "dm", +            "tariffAreaName" : "", +            "ref" : { +               "gid" : "", +               "place" : "Essen", +               "placeID" : "18", +               "omc" : "5113000", +               "id" : "20009113" +            }, +            "tariffArea" : "", +            "tariffLayer1" : "" +         }, +         { +            "ref" : { +               "omc" : "5113000", +               "id" : "20009115", +               "placeID" : "18", +               "gid" : "", +               "place" : "Essen" +            }, +            "tariffArea" : "", +            "tariffLayer1" : "", +            "name" : "Essen, Alfredusbad", +            "type" : "stop", +            "stateless" : "20009115", +            "usage" : "dm", +            "tariffLayer2" : "", +            "tariffAreaName" : "" +         } +      ] +   }, +   "arr" : { +      "points" : null, +      "input" : { +         "input" : "" +      } +   }, +   "servingLines" : { +      "lines" : null +   }, +   "departureList" : null, +   "dateRange" : [ +      { +         "year" : "2024", +         "day" : "21", +         "weekday" : "7", +         "month" : "09" +      }, +      { +         "month" : "09", +         "day" : "22", +         "weekday" : "1", +         "year" : "2024" +      }, +      { +         "day" : "23", +         "weekday" : "2", +         "month" : "09", +         "year" : "2024" +      }, +      { +         "year" : "2024", +         "day" : "24", +         "weekday" : "3", +         "month" : "09" +      }, +      { +         "year" : "2024", +         "day" : "25", +         "weekday" : "4", +         "month" : "09" +      }, +      { +         "month" : "09", +         "day" : "26", +         "weekday" : "5", +         "year" : "2024" +      }, +      { +         "year" : "2024", +         "month" : "09", +         "day" : "27", +         "weekday" : "6" +      }, +      { +         "year" : "2024", +         "weekday" : "7", +         "day" : "28", +         "month" : "09" +      }, +      { +         "year" : "2024", +         "month" : "09", +         "weekday" : "1", +         "day" : "29" +      }, +      { +         "year" : "2024", +         "weekday" : "2", +         "day" : "30", +         "month" : "09" +      }, +      { +         "weekday" : "3", +         "day" : "01", +         "month" : "10", +         "year" : "2024" +      }, +      { +         "month" : "10", +         "day" : "02", +         "weekday" : "4", +         "year" : "2024" +      }, +      { +         "day" : "03", +         "weekday" : "5", +         "month" : "10", +         "year" : "2024" +      }, +      { +         "year" : "2024", +         "day" : "04", +         "weekday" : "6", +         "month" : "10" +      }, +      { +         "year" : "2024", +         "day" : "05", +         "weekday" : "7", +         "month" : "10" +      } +   ], +   "dateTime" : { +      "hour" : "18", +      "minute" : "33", +      "ttpTo" : "20250228", +      "ttpFrom" : "20240601", +      "deparr" : "dep", +      "year" : "2024", +      "day" : "21", +      "month" : "9" +   }, +   "option" : { +      "ptOption" : { +         "assistance" : "0", +         "lowPlatformVhcl" : "0", +         "useProxFootSearchDestination" : "0", +         "useProxFootSearch" : "0", +         "privateTransport" : "0", +         "noSolidStairs" : "0", +         "activeCom" : "-1", +         "noCrowded" : "0", +         "noInsecurePlaces" : "0", +         "maxChanges" : "9", +         "useProxFootSearchOrigin" : "0", +         "routeType" : "LEASTTIME", +         "active" : "-1", +         "changeSpeed" : "normal", +         "illumTransfer" : "0", +         "activeSec" : "-1", +         "excludedMeans" : [ +            { +               "selected" : "0", +               "value" : "0" +            }, +            { +               "value" : "1", +               "selected" : "0" +            }, +            { +               "selected" : "0", +               "value" : "2" +            }, +            { +               "selected" : "0", +               "value" : "3" +            }, +            { +               "selected" : "0", +               "value" : "4" +            }, +            { +               "selected" : "0", +               "value" : "5" +            }, +            { +               "selected" : "0", +               "value" : "6" +            }, +            { +               "selected" : "0", +               "value" : "7" +            }, +            { +               "value" : "8", +               "selected" : "0" +            }, +            { +               "value" : "9", +               "selected" : "0" +            }, +            { +               "value" : "10", +               "selected" : "0" +            }, +            { +               "value" : "11", +               "selected" : "0" +            }, +            { +               "selected" : "0", +               "value" : "12" +            }, +            { +               "value" : "13", +               "selected" : "0" +            }, +            { +               "selected" : "0", +               "value" : "14" +            }, +            { +               "value" : "15", +               "selected" : "0" +            }, +            { +               "selected" : "0", +               "value" : "16" +            }, +            { +               "value" : "17", +               "selected" : "0" +            }, +            { +               "value" : "18", +               "selected" : "0" +            }, +            { +               "selected" : "0", +               "value" : "19" +            } +         ], +         "plane" : "0", +         "maxWait" : "120", +         "maxTime" : "360", +         "noElevators" : "0", +         "overgroundTransfer" : "0", +         "activeImp" : "-1", +         "noEscalators" : "0", +         "needElevatedPlt" : "0", +         "bike" : "0", +         "SOSAvail" : "0", +         "lineRestriction" : "403", +         "noLonelyTransfer" : "0", +         "wheelchair" : "0" +      } +   }, +   "parameters" : [ +      { +         "name" : "serverID", +         "value" : "EFA2_" +      }, +      { +         "name" : "requestID", +         "value" : "0" +      }, +      { +         "name" : "sessionID", +         "value" : "0" +      }, +      { +         "name" : "calcTime", +         "value" : "166.310" +      }, +      { +         "value" : "2024-09-21T18:33:39", +         "name" : "serverTime" +      } +   ] +} diff --git a/t/in/essen_alfredusbad_ambiguous.xml b/t/in/essen_alfredusbad_ambiguous.xml deleted file mode 100644 index 9b3e589..0000000 --- a/t/in/essen_alfredusbad_ambiguous.xml +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<itdRequest version="9.16.27.53" language="de" lengthUnit="METER" sessionID="efa1.vrr.de_36925562" client="libwww-perl/6.03" clientIP="87.147.17.185" serverID="efa1.vrr.de_" virtDir="vrr" now="2011-11-20T12:18:48" nowWD="1"> -  <itdLayoutParams> -    <itdLayoutParam name="mdvMap2_dm" value="" /> -    <itdLayoutParam name="mapState_dm" value="" /> -    <itdLayoutParam name="mdvMap_dm" value="3406199:401077:NAV3" /> -    <itdLayoutParam name="view" value="" /> -    <itdLayoutParam name="id_dm" value=":dm" /> -    <itdLayoutParam name="transpCompany" value="vrr" /> -  </itdLayoutParams> -  <itdDepartureMonitorRequest requestID="1"> -    <itdOdv type="stop" usage="dm"> -      <itdOdvPlace state="identified" method="itp"> -        <odvPlaceElem omc="5113000" placeID="18" value="5113000:18" span="0" type="remote" mainPlace="1">Essen</odvPlaceElem> -        <odvPlaceInput>E</odvPlaceInput> -      </itdOdvPlace> -      <itdOdvName state="list" method="itp"> -        <itdMessage type="error" module="BROKER" code="1">name list</itdMessage> -        <odvNameElem listIndex="0" selected="0" matchQuality="999010" stopID="20009115" value="0:1">Alfredusbad</odvNameElem> -        <odvNameElem listIndex="1" selected="0" matchQuality="996010" stopID="20009903" value="1:2">Am Alfredusbad</odvNameElem> -        <odvNameInput>Afredusbad</odvNameInput> -      </itdOdvName> -    </itdOdv> -    <itdDateTime ttpFrom="20110901" ttpTo="20120531"> -      <itdDate weekday="1" year="2011" month="11" day="20" /> -      <itdTime hour="12" minute="20" /> -    </itdDateTime> -    <itdDateRange> -      <itdDate day="20" month="11" year="2011" weekday="1" /> -      <itdDate day="21" month="11" year="2011" weekday="2" /> -      <itdDate day="22" month="11" year="2011" weekday="3" /> -      <itdDate day="23" month="11" year="2011" weekday="4" /> -      <itdDate day="24" month="11" year="2011" weekday="5" /> -      <itdDate day="25" month="11" year="2011" weekday="6" /> -      <itdDate day="26" month="11" year="2011" weekday="7" /> -      <itdDate day="27" month="11" year="2011" weekday="1" /> -      <itdDate day="28" month="11" year="2011" weekday="2" /> -      <itdDate day="29" month="11" year="2011" weekday="3" /> -      <itdDate day="30" month="11" year="2011" weekday="4" /> -      <itdDate day="01" month="12" year="2011" weekday="5" /> -      <itdDate day="02" month="12" year="2011" weekday="6" /> -      <itdDate day="03" month="12" year="2011" weekday="7" /> -      <itdDate day="04" month="12" year="2011" weekday="1" /> -    </itdDateRange> -    <itdTripOptions> -      <itdPtOptions> -        <excludedMeans> -          <meansElem value="0" selected="0">Zug</meansElem> -          <meansElem value="1" selected="0">S-Bahn</meansElem> -          <meansElem value="2" selected="0">U-Bahn</meansElem> -          <meansElem value="3" selected="0">Stadtbahn</meansElem> -          <meansElem value="4" selected="0">Straßen-/Trambahn</meansElem> -          <meansElem value="5" selected="0">Stadtbus</meansElem> -          <meansElem value="6" selected="0">Regionalbus</meansElem> -          <meansElem value="7" selected="0">Schnellbus</meansElem> -          <meansElem value="8" selected="0">Seil-/Zahnradbahn</meansElem> -          <meansElem value="9" selected="0">Schiff</meansElem> -          <meansElem value="10" selected="0">AST/Rufbus</meansElem> -          <meansElem value="11" selected="0">Sonstige</meansElem> -        </excludedMeans> -      </itdPtOptions> -      <itdItOptions> -        <itRouter logASCII="false" logSVG="false" /> -        <itPedestrian computeMonomodalTrip="false" computationType="PT_AND_IT" itIncidentData="false" useElevation="false" speedFactor="100" costFactor="0" distanceFactor="50" traveltimeFactor="50" noTunnel="false" noBridge="false" noFerry="false" maxTime="20" maxLength="2147483647" ignoreRestrictions="false" /> -        <itBicycle preferAsphaltTracks="false" preferGreenTracks="false" usePseudoRouting="false" useSignedRoute="false" cycleSpeed="20" prefHikePath="false" elevFac="50" bikeProf="UNKNOWN" computeMonomodalTrip="false" computationType="PT_AND_IT" itIncidentData="false" useElevation="false" speedFactor="100" costFactor="0" distanceFactor="50" traveltimeFactor="50" noTunnel="false" noBridge="false" noFerry="false" maxTime="15" maxLength="2147483647" ignoreRestrictions="false" /> -        <mitCar computeMonomodalTrip="false" computationType="PT_AND_IT" itIncidentData="false" useElevation="false" speedFactor="100" costFactor="0" distanceFactor="10" traveltimeFactor="90" noTunnel="false" noBridge="false" noFerry="false" maxTime="90" maxLength="2147483647" ignoreRestrictions="false" mitProfileData="false" mitIncidentData="false" mitOnlineData="false" noHighway="false" noTollRoad="false" /> -        <departureTransport> -          <individualTransport meansCode="100" value="8" speed="normal" selected="1" /> -          <individualTransport meansCode="101" value="15" speed="normal" selected="0" /> -          <individualTransport meansCode="102" value="15" speed="normal" selected="0" /> -          <individualTransport meansCode="103" value="10" speed="normal" selected="0" /> -          <individualTransport meansCode="104" value="10" speed="normal" selected="0" /> -          <individualTransport meansCode="105" value="30" speed="normal" selected="0" /> -          <individualTransport meansCode="106" value="15" speed="normal" selected="0" /> -          <individualTransport meansCode="107" value="15" speed="normal" selected="0" /> -        </departureTransport> -      </itdItOptions> -    </itdTripOptions> -  </itdDepartureMonitorRequest> -</itdRequest> - diff --git a/t/in/essen_bp.html b/t/in/essen_bp.html deleted file mode 100644 index f8cc826..0000000 --- a/t/in/essen_bp.html +++ /dev/null @@ -1,762 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html xmlns:vrr="http://www.vrr.de/" xmlns:mdv="http://www.mentzdv.de/">
 -<head>
 -<META http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
 -<title>Fahrplanauskunft</title>
 -<link rel="stylesheet" type="text/css" href="css/map.css">
 -<link rel="stylesheet" type="text/css" href="css/MDVMapContextMenu.css">
 -<link rel="stylesheet" type="text/css" href="css/MDVMapControl.css">
 -<link rel="stylesheet" type="text/css" href="css/calendar.css">
 -<link rel="stylesheet" type="text/css" href="css/itpTravelService.css">
 -<link rel="stylesheet" type="text/css" href="css/vrr.css"><script type="text/javascript"><!--
 -			
 -			function attachEventListener(target, eventType, functionRef, capture) {
 -			  if (typeof target.addEventListener != "undefined") {
 -				target.addEventListener(eventType, functionRef, capture);
 -			  }
 -			  else if (typeof target.attachEvent != "undefined") {
 -				target.attachEvent("on" + eventType, functionRef);
 -			  }
 -			  else {
 -				eventType = "on" + eventType;
 -			
 -				if (typeof target[eventType] == "function") {
 -				  var oldListener = target[eventType];
 -			
 -				  target[eventType] = function() {
 -					oldListener();
 -			
 -					return  functionRef();
 -				  }
 -				}
 -				else {
 -				  target[eventType] = functionRef;
 -				}
 -			  }
 -			
 -			  return true; 
 -			}
 -					
 -			function checkPwdBoxes()
 -			{
 -				if(document.forms[0].ppPersonNetPassword.value!=document.forms[0].ppPersonConfirmNetPassword.value || document.forms[0].ppPersonNetPassword.value=='')
 -				{
 -					alert('Ihre Passwortangaben sind ungültig. Bitte geben Sie zweimal dasselbe Passwort ein.');
 -					document.forms[0].ppPersonNetPassword.value="";
 -					document.forms[0].ppPersonConfirmNetPassword.value="";
 -					return false;
 -				}
 -				else return true;
 -			}
 -			
 -			function concatDate()
 -			{
 -				var completDate;
 -				completDate = document.forms[0].itdLPxx_date.value;
 -				completDate = completDate + "-" + document.forms[0].itdLPxx_month.value;
 -				completDate = completDate + "-" + document.forms[0].itdLPxx_year.value;
 -				
 -				document.forms[0].filterDateValid.value=completDate;
 -			}
 -			
 -			var viaInMobilityRestrictionOptions = 'true';
 -			var viaFlag = 'false';
 -			var identifiedOdv = {
 -				'origin' : '',
 -				'destination' : '',
 -				'via' : '',
 -				'command' : ''
 -			};
 -			var sid = 'efa10.vrr.de_40963484';
 -			var curLanguage = 'de';
 -			var dmStop = "Haltestelle";
 -			var dmPOI = "wichtiger Punkt";
 -			
 -			var includedMeans = [];
 -			
 -			var excludedMeans = [];
 -			
 -			
 -			function checkMeans() {
 -
 -				var f = document.getElementsByName('jp')[0]; 
 -				
 -				if (!f || sid!=='0') {
 -					return true;
 -				}
 -				
 -				if (includedMeans.length >=1) {
 -					for (var i=0; i < includedMeans.length; i++) {
 -						if(f['inclMOT_' + includedMeans[i]]) {
 -							f['inclMOT_' + includedMeans[i]].checked = false;
 -						}
 -					}
 -				} else if (excludedMeans.length >=1) {
 -					for (var j=0; j < excludedMeans.length; j++) {
 -						if (f['inclMOT_' + excludedMeans[j]]) {
 -							f['inclMOT_' + excludedMeans[j]].checked = false;
 -						}
 -					}
 -				}
 -			}	
 -			
 -			attachEventListener(window, 'load', checkMeans, false);
 -				//--></script><script type="text/javascript" src="JavaScriptFunctions/mdv.js"></script><script type="text/javascript" src="JavaScriptFunctions/odvScript.js"></script><script type="text/javascript" src="/mdv/mdvMap/mdvMap.js"></script><link type="text/css" href="css/jquery-ui-1.8.6.custom.css" rel="stylesheet"><!--[if IE]><style>.ui-datepicker { margin-top: -150px; }</style><![endif]--><script type="text/javascript" src="JavaScriptFunctions/jquery-1.4.2.min.js"></script><script type="text/javascript" src="JavaScriptFunctions/jquery-ui-1.8.6.custom.min.js"></script><script type="text/javascript" src="JavaScriptFunctions/datepicker-de.js"></script><script type="text/javascript" src="mdvMapSettings.js"></script><script type="text/javascript" src="miniMapSettings.js"></script><script type="text/javascript" src="JavaScriptFunctions/mdvMapHandler.js"></script><script type="text/javascript"><!--
 -					var bCreateMapRequest = false;
 -					--></script><script type="text/javascript"><!--
 -						/* language of the map */
 -						var mapLanguage = 'de';
 -						var odv = new Array();
 -					--></script><script>function initMdvMapConfig() {var usages = new Array("origin", "destination", "via", "dm", "stt");for(var i=0; i<usages.length; i++) {var usage = usages[i];mdvMapConfigs[usage] = mdvMapConfig.clone();mdvMapConfigs[usage].add("serverURL", "http://efa.vrr.de/maps/nrw/");mdvMapConfigs[usage].add("efaURL", "../lite/XSLT_COORD_REQUEST");mdvMapConfigs[usage].add("transparentImg", "images/transparent.gif");mdvMapConfigs[usage].add("defaultScale", "2");mdvMapConfigs[usage].add("toolTimeOut", "20");mdvMapConfigs[usage].add("zoomOnDoubleClick", "true");mdvMapConfigs[usage].add("useMagnifyGlass", "true");mdvMapConfigs[usage].add("cursorMove", "images/grabbing.cur");mdvMapConfigs[usage].add("poiArea", "true");mdvMapConfigs[usage].add("poiPoint", "true");mdvMapConfigs[usage].add("language", "de");mdvMapConfigs[usage].add("imagePath", "images/mdvMap/");mdvMapConfigs[usage].add("xCenterReal", "3368363");mdvMapConfigs[usage].add("yCenterReal", "450530");mdvMapConfigs[usage].add("mapName", "NAV3");mdvMapConfigs[usage].add("network", "NRW");mdvMapConfigs[usage].add("useBubbleForEFAInfo", "true");mdvMapConfigs[usage].add("info.stop.size.width", "250");mdvMapConfigs[usage].add("info.stop.size.height", "200");mdvMapConfigs[usage].add("info.poi.size.width", "250");mdvMapConfigs[usage].add("info.poi.size.height", "120");mdvMapConfigs[usage].add("useBubbleOverflowForEFAInfo", "true");mdvMapConfigs[usage].add("block", "100");mdvMapConfigs[usage].add("language", "de");mdvMiniMapConfigs[usage] = mdvMiniMapConfig.clone();mdvMiniMapConfigs[usage].add("serverURL", "http://efa.vrr.de/maps/nrw/");mdvMiniMapConfigs[usage].add("efaURL", "../lite/XSLT_COORD_REQUEST");mdvMiniMapConfigs[usage].add("transparentImg", "images/transparent.gif");mdvMiniMapConfigs[usage].add("defaultScale", "2");mdvMiniMapConfigs[usage].add("toolTimeOut", "20");mdvMiniMapConfigs[usage].add("zoomOnDoubleClick", "true");mdvMiniMapConfigs[usage].add("useMagnifyGlass", "true");mdvMiniMapConfigs[usage].add("cursorMove", "images/grabbing.cur");mdvMiniMapConfigs[usage].add("language", "de");mdvMiniMapConfigs[usage].add("imagePath", "images/mdvMap/");mdvMiniMapConfigs[usage].add("xCenterReal", "3368363");mdvMiniMapConfigs[usage].add("yCenterReal", "450530");mdvMiniMapConfigs[usage].add("mapName", "NAV3");mdvMiniMapConfigs[usage].add("network", "NRW");mdvMiniMapConfigs[usage].add("block", "100");mdvMiniMapConfigs[usage].add("language", "de");}}
 -	</script></head>
 -<body onload="">
 -<form action="XSLT_DM_REQUEST" name="jp" method="POST"><input type="hidden" name="sessionID" id="sessionID" value="efa10.vrr.de_40963484"><input type="hidden" name="language" id="language" value="de"><input type="hidden" name="requestID" id="requestID" value="1"><input type="hidden" name="command" id="command" value=""><input type="hidden" name="useRealtime" value="1"><input type="hidden" name="itdLPxx_view" value=""><input type="hidden" name="ptOptionsActive" value="1"><input type="hidden" name="useProxFootSearch" value="0"><input type="hidden" name="deleteAssignedStops_dm" value="1"><input type="hidden" name="itdLPxx_mdvMap2_dm" id="itdLPxx_mdvMap2_dm" value="3406199:401077:NAV3"><input type="hidden" name="itdLPxx_mapState_dm" id="itdLPxx_mapState_dm" value=""><input type="hidden" name="itdLPxx_mdvMap_dm" id="itdLPxx_mdvMap_dm" value="3406199:401077:NAV3"><input type="hidden" name="itdLPxx_transpCompany" value="vrr"><table cellspacing="0" cellpadding="0" border="0">
 -<tr>
 -<td rowspan="3" valign="top" align="left" width="155">
 -<table id="tabNav">
 -<tr>
 -<td class="leftHeader"></td>
 -</tr>
 -<tr>
 -<td><a title="en" href="XSLT_TRIP_REQUEST2?language=en&itdLPxx_transpCompany=vrr"><img src="images/flag/flag_en.gif" border="0"></a> <a title="fr" href="XSLT_TRIP_REQUEST2?language=fr&itdLPxx_transpCompany=vrr"><img src="images/flag/flag_fr.gif" border="0"></a> <a title="es" href="XSLT_TRIP_REQUEST2?language=es&itdLPxx_transpCompany=vrr"><img src="images/flag/flag_es.gif" border="0"></a> <a title="tr" href="XSLT_TRIP_REQUEST2?language=tr&itdLPxx_transpCompany=vrr"><img src="images/flag/flag_tr.gif" border="0"></a></td>
 -</tr>
 -<tr>
 -<td class="navLabelTextBoldColor"><a href="XSLT_TRIP_REQUEST2?language=de&itdLPxx_transpCompany=vrr&">Fahrplanauskunft</a></td>
 -</tr>
 -<tr>
 -<td><a href="XSLT_STT_REQUEST?language=de&itdLPxx_transpCompany=vrr&">Aushangfahrplan</a></td>
 -</tr>
 -<tr>
 -<td><a href="XSLT_DM_REQUEST?language=de&itdLPxx_transpCompany=vrr&">Abfahrtsmonitor</a></td>
 -</tr>
 -<tr>
 -<td><a href="XSLT_PS_REQUEST2?language=de&itdLPxx_transpCompany=vrr&">Persönlicher Fahrplan</a></td>
 -</tr>
 -<tr>
 -<td><a href="http://www.vrr.de/de/fahrplanauskunft/fahr_und_linienplaene/verbundfahrplan_schnellverkehr/index.html" target="vrr">Verbundfahrplan Schnellverkehr</a></td>
 -</tr>
 -<tr>
 -<td><a href="http://www.vrr.de/de/fahrplanauskunft/fahr_und_linienplaene/linienplan_schnellverkehr/index.html" target="vrr">Linienplan Schnellverkehr</a></td>
 -</tr>
 -<tr>
 -<td><a href="http://www.vrr.de/de/fahrplanauskunft/fahr_und_linienplaene/stadtlinienplaene/index.html" target="vrr">Stadtlinienpläne</a></td>
 -</tr>
 -<tr>
 -<td><a href="./Bedienungshinweise_de.htm" target="vrr">Bedienungshinweise</a></td>
 -</tr>
 -<tr>
 -<td><a href="XSLT_SCREEN_SAVER_REQUEST?language=de&itdLPxx_transpCompany=vrr&">Bildschirmschoner</a></td>
 -</tr>
 -<tr>
 -<td><a href="XSLT_ADDINFO_REQUEST?language=de&itdLPxx_transpCompany=vrr&filterPublicationStatus=current&filterShowPlaceList=1&filterShowLineList=1&filterShowStopList=0&filterShowPlaceList=0&">Aktuelle Hinweise</a></td>
 -</tr>
 -<tr>
 -<td><a href="XSLT_TRIP_REQUEST2?language=de&itdLPxx_transpCompany=vrr&itdLPxx_urlGenerator=true&">Ihr Link zu uns</a></td>
 -</tr>
 -<tr>
 -<td><a href="http://www.vrr.de/de/global/impressum/index.html">Impressum</a></td>
 -</tr>
 -<tr>
 -<td><a href="http://www.vrr.de/">Homepage</a></td>
 -</tr>
 -</table>
 -</td>
 -<td rowspan="3"> </td>
 -<td valign="top" width="630" height="55">
 -<table cellspacing="0" cellpadding="0" width="100%" border="0">
 -<tr>
 -<td colspan="3" height="35" align="left" class="logoHeader">
 -<div class="textHeader">Abfahrtsmonitor</div>
 -</td>
 -</tr>
 -<tr>
 -<td colspan="3"><img src="images/dummy.gif" width="100%" height="5"></td>
 -</tr>
 -</table>
 -<table cellspacing="0" cellpadding="0" width="630" border="0">
 -<tr class="bgColor">
 -<td colspan="3">
 -<table cellspacing="0" cellpadding="0" width="100%" border="0">
 -<tr>
 -<td colspan="5"><img src="images/dummy.gif" width="1" height="5" alt="*"></td>
 -</tr>
 -<tr>
 -<td width="2%" align="top" class="kaestchen"><img src="images/dummy.gif" width="7" height="13" border="0" alt="*"></td>
 -<td width="10%"><span class="labelTextBold"> von:</span></td>
 -<td width="40%"><span class="labelText">Essen / Berliner Platz</span></td>
 -<td width="10%"><span class="labelTextBold"> </span></td>
 -<td width="38%"><span class="labelText"> </span></td>
 -</tr>
 -<tr>
 -<td width="2%" align="top"> </td>
 -<td width="10%"><span class="labelTextBold"> Abfahrt:</span></td>
 -<td width="40%"><span class="labelText">20:19</span><span class="labelText"> Uhr</span></td>
 -<td width="10%"><span class="labelTextBold">Datum:</span></td>
 -<td width="38%"><span class="labelText">11.09.2011</span></td>
 -</tr>
 -</table>
 -</td>
 -</tr>
 -<tr>
 -<td colspan="3"><img src="images/dummy.gif" width="1" height="5" alt="*"></td>
 -</tr>
 -<tr class="bgColor">
 -<td colspan="3"><img src="images/dummy.gif" width="1" height="5" alt="*"></td>
 -</tr>
 -<tr class="bgColor">
 -<td colspan="3">
 -<table cellspacing="0" cellpadding="0" width="100%" border="0">
 -<tr>
 -<td width="2%" align="top"><img src="images/dummy.gif" width="7" height="13" border="0" alt="*"></td>
 -<td width="5%" align="center"><a href="javascript:document.forms[0].itdLPxx_view.value='printview';document.forms[0].command.value='nop';document.forms[0].submit();"><img src="images/drucker.jpg" width="20" height="20" border="0" alt="zur Druckversion"></a></td>
 -<td width="55%"><span class="labelTextBold">zur Druckversion</span></td>
 -<td width="38%" align="right"> </td>
 -</tr>
 -<tr>
 -<td colspan="4"><img src="images/dummy.gif" width="1" height="5" alt="*"></td>
 -</tr>
 -</table>
 -</td>
 -</tr>
 -<tr class="bgColor">
 -<td colspan="3"><img src="images/dummy.gif" width="1" height="5" alt="*"></td>
 -</tr>
 -<tr>
 -<td colspan="3"><img src="images/dummy.gif" width="1" height="5" alt="*"></td>
 -</tr>
 -<tr class="bgColor">
 -<td colspan="3"><img src="images/dummy.gif" width="1" height="5" alt="*"></td>
 -</tr>
 -<tr class="bgColor">
 -<td colspan="3">
 -<table cellspacing="0" cellpadding="3" width="100%" border="0">
 -<tr>
 -<TD> </TD>
 -<TD align="center" class="labelTextBold"> Zeit </TD>
 -<TD align="center" class="labelTextBold">Abfahrt  </TD>
 -<td></td>
 -<TD class="labelTextBold">Linie </TD>
 -<TD> </TD>
 -<TD class="labelTextBold">Richtung </TD>
 -<TD> </TD>
 -<TD class="labelTextBold">Hinweise</TD>
 -</tr>
 -<tr class="bgColor">
 -<td> </td>
 -<td class="labelText" align="middle">20:19</td>
 -<td class="labelText" align="left">Bstg. 1</td>
 -<td class="labelText" align="middle"><img src="images/means/tram.gif" width="32" height="32" alt="Tram"></td>
 -<td class="labelText">103</td>
 -<td> </td>
 -<td class="labelText">Essen Wertstr.</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor2">
 -<td> </td>
 -<td class="labelText" align="middle">20:19</td>
 -<td class="labelText" align="left">Bstg. 2</td>
 -<td class="labelText" align="middle"><img src="images/means/tram.gif" width="32" height="32" alt="Tram"></td>
 -<td class="labelText">101</td>
 -<td> </td>
 -<td class="labelText">Essen Hauptbahnhof</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor">
 -<td> </td>
 -<td class="labelText" align="middle">20:19</td>
 -<td class="labelText" align="left">Bstg. 3</td>
 -<td class="labelText" align="middle"><img src="images/means/nf_bus.gif" width="32" height="32" alt="Niederflurbus"></td>
 -<td class="labelText">166</td>
 -<td> </td>
 -<td class="labelText">E-Burgaltendorf Burgruine</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor2">
 -<td> </td>
 -<td class="labelText" align="middle">20:21</td>
 -<td class="labelText" align="left">Bstg. 2</td>
 -<td class="labelText" align="middle"><img src="images/means/u_bahn.gif" width="32" height="32" alt="U-Bahn"></td>
 -<td class="labelText">U11</td>
 -<td> </td>
 -<td class="labelText">Essen Messe W.-Süd/Gruga</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor">
 -<td> </td>
 -<td class="labelText" align="middle">20:21</td>
 -<td class="labelText" align="left">Bstg. 2</td>
 -<td class="labelText" align="middle"><img src="images/means/tram.gif" width="32" height="32" alt="Tram"></td>
 -<td class="labelText">105</td>
 -<td> </td>
 -<td class="labelText">Essen Finefraustr.</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor2">
 -<td> </td>
 -<td class="labelText" align="middle">20:21</td>
 -<td class="labelText" align="left">Bstg. 1</td>
 -<td class="labelText" align="middle"><img src="images/means/u_bahn.gif" width="32" height="32" alt="U-Bahn"></td>
 -<td class="labelText">U17</td>
 -<td> </td>
 -<td class="labelText">Essen Karlsplatz</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor">
 -<td> </td>
 -<td class="labelText" align="middle">20:26</td>
 -<td class="labelText" align="left">Bstg. 2</td>
 -<td class="labelText" align="middle"><img src="images/means/tram.gif" width="32" height="32" alt="Tram"></td>
 -<td class="labelText">109</td>
 -<td> </td>
 -<td class="labelText">Essen Steele S</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor2">
 -<td> </td>
 -<td class="labelText" align="middle">20:27</td>
 -<td class="labelText" align="left">Bstg. 2</td>
 -<td class="labelText" align="middle"><img src="images/means/nf_bus.gif" width="32" height="32" alt="Niederflurbus"></td>
 -<td class="labelText">147</td>
 -<td> </td>
 -<td class="labelText">Essen Grimbergstr.</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor">
 -<td> </td>
 -<td class="labelText" align="middle">20:29</td>
 -<td class="labelText" align="left">Bstg. 1</td>
 -<td class="labelText" align="middle"><img src="images/means/u_bahn.gif" width="32" height="32" alt="U-Bahn"></td>
 -<td class="labelText">U11</td>
 -<td> </td>
 -<td class="labelText">Gelsenkirchen Buerer Str.</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor2">
 -<td> </td>
 -<td class="labelText" align="middle">20:29</td>
 -<td class="labelText" align="left">Bstg. 2</td>
 -<td class="labelText" align="middle"><img src="images/means/u_bahn.gif" width="32" height="32" alt="U-Bahn"></td>
 -<td class="labelText">U17</td>
 -<td> </td>
 -<td class="labelText">Essen Margarethenhöhe</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor">
 -<td> </td>
 -<td class="labelText" align="middle">20:30</td>
 -<td class="labelText" align="left">Bstg. 1</td>
 -<td class="labelText" align="middle"><img src="images/means/nf_bus.gif" width="32" height="32" alt="Niederflurbus"></td>
 -<td class="labelText">147</td>
 -<td> </td>
 -<td class="labelText">Essen Erbach</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor2">
 -<td> </td>
 -<td class="labelText" align="middle">20:31</td>
 -<td class="labelText" align="left">Bstg. 2</td>
 -<td class="labelText" align="middle"><img src="images/means/u_bahn.gif" width="32" height="32" alt="U-Bahn"></td>
 -<td class="labelText">U18</td>
 -<td> </td>
 -<td class="labelText">Mülheim Hbf</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor">
 -<td> </td>
 -<td class="labelText" align="middle">20:32</td>
 -<td class="labelText" align="left">Bstg. 1</td>
 -<td class="labelText" align="middle"><img src="images/means/tram.gif" width="32" height="32" alt="Tram"></td>
 -<td class="labelText">109</td>
 -<td> </td>
 -<td class="labelText">Essen Frohnhausen Breilsort</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor2">
 -<td> </td>
 -<td class="labelText" align="middle">20:34</td>
 -<td class="labelText" align="left">Bstg. 1</td>
 -<td class="labelText" align="middle"><img src="images/means/tram.gif" width="32" height="32" alt="Tram"></td>
 -<td class="labelText">105</td>
 -<td> </td>
 -<td class="labelText">Essen Unterstr.</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor">
 -<td> </td>
 -<td class="labelText" align="middle">20:36</td>
 -<td class="labelText" align="left">Bstg. 4</td>
 -<td class="labelText" align="middle"><img src="images/means/nf_bus.gif" width="32" height="32" alt="Niederflurbus"></td>
 -<td class="labelText">166</td>
 -<td> </td>
 -<td class="labelText">Essen Dellwig Bahnhof</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor2">
 -<td> </td>
 -<td class="labelText" align="middle">20:36</td>
 -<td class="labelText" align="left">Bstg. 2</td>
 -<td class="labelText" align="middle"><img src="images/means/u_bahn.gif" width="32" height="32" alt="U-Bahn"></td>
 -<td class="labelText">U11</td>
 -<td> </td>
 -<td class="labelText">Essen Messe W.-Süd/Gruga</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor">
 -<td> </td>
 -<td class="labelText" align="middle">20:36</td>
 -<td class="labelText" align="left">Bstg. 2</td>
 -<td class="labelText" align="middle"><img src="images/means/tram.gif" width="32" height="32" alt="Tram"></td>
 -<td class="labelText">103</td>
 -<td> </td>
 -<td class="labelText">Essen Hauptbahnhof</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor2">
 -<td> </td>
 -<td class="labelText" align="middle">20:37</td>
 -<td class="labelText" align="left">Bstg. 1</td>
 -<td class="labelText" align="middle"><img src="images/means/tram.gif" width="32" height="32" alt="Tram"></td>
 -<td class="labelText">101</td>
 -<td> </td>
 -<td class="labelText">Essen Germaniaplatz</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor">
 -<td> </td>
 -<td class="labelText" align="middle">20:40</td>
 -<td class="labelText" align="left">Bstg. 1</td>
 -<td class="labelText" align="middle"><img src="images/means/nf_bus.gif" width="32" height="32" alt="Niederflurbus"></td>
 -<td class="labelText">145</td>
 -<td> </td>
 -<td class="labelText">Essen Fängershof Schleife</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor2">
 -<td> </td>
 -<td class="labelText" align="middle">20:41</td>
 -<td class="labelText" align="left">Bstg. 2</td>
 -<td class="labelText" align="middle"><img src="images/means/tram.gif" width="32" height="32" alt="Tram"></td>
 -<td class="labelText">109</td>
 -<td> </td>
 -<td class="labelText">Essen Steele S</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor">
 -<td> </td>
 -<td class="labelText" align="middle">20:44</td>
 -<td class="labelText" align="left">Bstg. 2</td>
 -<td class="labelText" align="middle"><img src="images/means/u_bahn.gif" width="32" height="32" alt="U-Bahn"></td>
 -<td class="labelText">U17</td>
 -<td> </td>
 -<td class="labelText">Essen Margarethenhöhe</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor2">
 -<td> </td>
 -<td class="labelText" align="middle">20:44</td>
 -<td class="labelText" align="left">Bstg. 1</td>
 -<td class="labelText" align="middle"><img src="images/means/u_bahn.gif" width="32" height="32" alt="U-Bahn"></td>
 -<td class="labelText">U11</td>
 -<td> </td>
 -<td class="labelText">Gelsenkirchen Buerer Str.</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor">
 -<td> </td>
 -<td class="labelText" align="middle">20:46</td>
 -<td class="labelText" align="left">Bstg. 2</td>
 -<td class="labelText" align="middle"><img src="images/means/u_bahn.gif" width="32" height="32" alt="U-Bahn"></td>
 -<td class="labelText">U18</td>
 -<td> </td>
 -<td class="labelText">Mülheim Hbf</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor2">
 -<td> </td>
 -<td class="labelText" align="middle">20:46</td>
 -<td class="labelText" align="left">Bstg. 2</td>
 -<td class="labelText" align="middle"><img src="images/means/nf_bus.gif" width="32" height="32" alt="Niederflurbus"></td>
 -<td class="labelText">145</td>
 -<td> </td>
 -<td class="labelText">Essen Heisingen Baldeneysee</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor">
 -<td> </td>
 -<td class="labelText" align="middle">20:47</td>
 -<td class="labelText" align="left">Bstg. 1</td>
 -<td class="labelText" align="middle"><img src="images/means/tram.gif" width="32" height="32" alt="Tram"></td>
 -<td class="labelText">109</td>
 -<td> </td>
 -<td class="labelText">Essen Frohnhausen Breilsort</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor2">
 -<td> </td>
 -<td class="labelText" align="middle">20:49</td>
 -<td class="labelText" align="left">Bstg. 2</td>
 -<td class="labelText" align="middle"><img src="images/means/tram.gif" width="32" height="32" alt="Tram"></td>
 -<td class="labelText">101</td>
 -<td> </td>
 -<td class="labelText">Essen Hauptbahnhof</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor">
 -<td> </td>
 -<td class="labelText" align="middle">20:49</td>
 -<td class="labelText" align="left">Bstg. 1</td>
 -<td class="labelText" align="middle"><img src="images/means/tram.gif" width="32" height="32" alt="Tram"></td>
 -<td class="labelText">103</td>
 -<td> </td>
 -<td class="labelText">Essen Wertstr.</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor2">
 -<td> </td>
 -<td class="labelText" align="middle">20:49</td>
 -<td class="labelText" align="left">Bstg. 3</td>
 -<td class="labelText" align="middle"><img src="images/means/nf_bus.gif" width="32" height="32" alt="Niederflurbus"></td>
 -<td class="labelText">166</td>
 -<td> </td>
 -<td class="labelText">Hattingen Märkische Str</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor">
 -<td> </td>
 -<td class="labelText" align="middle">20:51</td>
 -<td class="labelText" align="left">Bstg. 2</td>
 -<td class="labelText" align="middle"><img src="images/means/tram.gif" width="32" height="32" alt="Tram"></td>
 -<td class="labelText">105</td>
 -<td> </td>
 -<td class="labelText">Essen Finefraustr.</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor2">
 -<td> </td>
 -<td class="labelText" align="middle">20:52</td>
 -<td class="labelText" align="left">Bstg. 2</td>
 -<td class="labelText" align="middle"><img src="images/means/u_bahn.gif" width="32" height="32" alt="U-Bahn"></td>
 -<td class="labelText">U11</td>
 -<td> </td>
 -<td class="labelText">Essen Messe W.-Süd/Gruga</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor">
 -<td> </td>
 -<td class="labelText" align="middle">20:56</td>
 -<td class="labelText" align="left">Bstg. 2</td>
 -<td class="labelText" align="middle"><img src="images/means/tram.gif" width="32" height="32" alt="Tram"></td>
 -<td class="labelText">109</td>
 -<td> </td>
 -<td class="labelText">Essen Hollestr.</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor2">
 -<td> </td>
 -<td class="labelText" align="middle">20:57</td>
 -<td class="labelText" align="left">Bstg. 2</td>
 -<td class="labelText" align="middle"><img src="images/means/nf_bus.gif" width="32" height="32" alt="Niederflurbus"></td>
 -<td class="labelText">147</td>
 -<td> </td>
 -<td class="labelText">Essen Grimbergstr.</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor">
 -<td> </td>
 -<td class="labelText" align="middle">20:59</td>
 -<td class="labelText" align="left">Bstg. 2</td>
 -<td class="labelText" align="middle"><img src="images/means/u_bahn.gif" width="32" height="32" alt="U-Bahn"></td>
 -<td class="labelText">U17</td>
 -<td> </td>
 -<td class="labelText">Essen Margarethenhöhe</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor2">
 -<td> </td>
 -<td class="labelText" align="middle">21:00</td>
 -<td class="labelText" align="left">Bstg. 1</td>
 -<td class="labelText" align="middle"><img src="images/means/nf_bus.gif" width="32" height="32" alt="Niederflurbus"></td>
 -<td class="labelText">147</td>
 -<td> </td>
 -<td class="labelText">Essen Erbach</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor">
 -<td> </td>
 -<td class="labelText" align="middle">21:01</td>
 -<td class="labelText" align="left">Bstg. 2</td>
 -<td class="labelText" align="middle"><img src="images/means/u_bahn.gif" width="32" height="32" alt="U-Bahn"></td>
 -<td class="labelText">U18</td>
 -<td> </td>
 -<td class="labelText">Mülheim Hbf</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor2">
 -<td> </td>
 -<td class="labelText" align="middle">21:03</td>
 -<td class="labelText" align="left">Bstg. 1</td>
 -<td class="labelText" align="middle"><img src="images/means/u_bahn.gif" width="32" height="32" alt="U-Bahn"></td>
 -<td class="labelText">U11</td>
 -<td> </td>
 -<td class="labelText">Gelsenkirchen Buerer Str.</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor">
 -<td> </td>
 -<td class="labelText" align="middle">21:04</td>
 -<td class="labelText" align="left">Bstg. 1</td>
 -<td class="labelText" align="middle"><img src="images/means/tram.gif" width="32" height="32" alt="Tram"></td>
 -<td class="labelText">105</td>
 -<td> </td>
 -<td class="labelText">Essen Unterstr.</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor2">
 -<td> </td>
 -<td class="labelText" align="middle">21:06</td>
 -<td class="labelText" align="left">Bstg. 2</td>
 -<td class="labelText" align="middle"><img src="images/means/tram.gif" width="32" height="32" alt="Tram"></td>
 -<td class="labelText">103</td>
 -<td> </td>
 -<td class="labelText">Essen Hauptbahnhof</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor">
 -<td> </td>
 -<td class="labelText" align="middle">21:06</td>
 -<td class="labelText" align="left">Bstg. 4</td>
 -<td class="labelText" align="middle"><img src="images/means/nf_bus.gif" width="32" height="32" alt="Niederflurbus"></td>
 -<td class="labelText">166</td>
 -<td> </td>
 -<td class="labelText">Essen Dellwig Bahnhof</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -<tr class="bgColor2">
 -<td> </td>
 -<td class="labelText" align="middle">21:07</td>
 -<td class="labelText" align="left">Bstg. 1</td>
 -<td class="labelText" align="middle"><img src="images/means/tram.gif" width="32" height="32" alt="Tram"></td>
 -<td class="labelText">101</td>
 -<td> </td>
 -<td class="labelText">Essen Germaniaplatz</td>
 -<td> </td>
 -<td class="labelText"></td>
 -</tr>
 -</table>
 -</td>
 -</tr>
 -<tr class="bgColor">
 -<td colspan="3"><img src="images/dummy.gif" width="1" height="5" alt="*"></td>
 -</tr>
 -<tr>
 -<td colspan="3"><img src="images/dummy.gif" width="1" height="5" alt="*"></td>
 -</tr>
 -<tr class="bgColor">
 -<td colspan="3"><img src="images/dummy.gif" width="1" height="5" alt="*"></td>
 -</tr>
 -<tr class="bgColor">
 -<td colspan="3">
 -<table cellspacing="0" cellpadding="0" width="100%" border="0">
 -<tr>
 -<td width="2%"></td>
 -<td valign="center"><img src="images/Rbl_nOK.gif" width="13" height="30" border="0" title="Abweichung" alt="Abweichung"></td>
 -<td valign="center"><span class="labelText" valign="center">Verspätungen sind berücksichtigt</span></td>
 -<td width="2%"></td>
 -<td valign="center"><img src="images/Rbl.gif" width="13" height="30" border="0" title="Pünktlich" alt="Pünktlich"></td>
 -<td valign="center"><span class="labelText" valign="center">Fahrt voraussichtlich pünktlich</span></td>
 -</tr>
 -</table>
 -</td>
 -</tr>
 -<tr class="bgColor">
 -<td colspan="3"><img src="images/dummy.gif" width="1" height="5" alt="*"></td>
 -</tr>
 -<tr>
 -<td colspan="3"><img src="images/dummy.gif" width="1" height="5" alt="*"></td>
 -</tr>
 -<tr class="bgColor">
 -<td colspan="3"><img src="images/dummy.gif" width="1" height="5" alt="*"></td>
 -</tr>
 -<tr class="bgColor">
 -<td colspan="3">
 -<table cellspacing="0" cellpadding="0" width="100%" border="0">
 -<tr>
 -<td width="2%" align="top"><img src="images/dummy.gif" width="7" height="13" border="0" alt="*"></td>
 -<td width="5%" align="center"><a href="javascript:document.forms[0].itdLPxx_view.value='printview';document.forms[0].command.value='nop';document.forms[0].submit();"><img src="images/drucker.jpg" width="20" height="20" border="0" alt="zur Druckversion"></a></td>
 -<td width="55%"><span class="labelTextBold">zur Druckversion</span></td>
 -<td width="38%" align="right"> </td>
 -</tr>
 -<tr>
 -<td colspan="4"><img src="images/dummy.gif" width="1" height="5" alt="*"></td>
 -</tr>
 -</table>
 -</td>
 -</tr>
 -<tr class="bgColor">
 -<td colspan="3"><img src="images/dummy.gif" width="1" height="5" alt="*"></td>
 -</tr>
 -<tr>
 -<td colspan="3"><img src="images/dummy.gif" width="1" height="5" alt="*"></td>
 -</tr>
 -<tr class="buttonBgColor">
 -<td colspan="3"><img src="images/dummy.gif" width="1" height="5" alt="*"></td>
 -</tr>
 -<tr class="buttonBgColor">
 -<td colspan="3" align="center"><input type="button" name="reset" value="neue Anfrage" onClick="document.location.href='XSLT_DM_REQUEST?language=de&itdLPxx_transpCompany=vrr'"></td>
 -</tr>
 -<tr class="buttonBgColor">
 -<td colspan="3"><img src="images/dummy.gif" width="1" height="5" alt="*"></td>
 -</tr>
 -<tr>
 -<td colspan="3">
 -<table cellspacing="0" cellpadding="0" width="100%" border="0">
 -<td height="40" valign="middle" align="left"><img src="images/dummy.gif" width="1" height="5" alt="*"></td>
 -<td width="220" valign="bottom"><img src="images/ein-Service-des-VRR.gif" width="220" height="36" alt="*" align="right"></td>
 -</table>
 -</td>
 -</tr>
 -</table>
 -</td>
 -</tr>
 -</table>
 -</form>
 -</body>
 -</html>
 diff --git a/t/in/essen_bp.json b/t/in/essen_bp.json new file mode 100644 index 0000000..5462a81 --- /dev/null +++ b/t/in/essen_bp.json @@ -0,0 +1,3979 @@ +{ +   "parameters" : [ +      { +         "value" : "EFAMOBIL3_", +         "name" : "serverID" +      }, +      { +         "name" : "requestID", +         "value" : "0" +      }, +      { +         "name" : "sessionID", +         "value" : "0" +      }, +      { +         "name" : "calcTime", +         "value" : "218.700" +      }, +      { +         "value" : "2024-09-21T18:34:21", +         "name" : "serverTime" +      } +   ], +   "dateTime" : { +      "day" : "21", +      "deparr" : "dep", +      "month" : "9", +      "year" : "2024", +      "ttpTo" : "20250228", +      "ttpFrom" : "20240601", +      "hour" : "18", +      "minute" : "34" +   }, +   "departureList" : [ +      { +         "stopName" : "Essen Berliner Platz", +         "stopID" : "20009153", +         "x" : "779634", +         "nameWO" : "Berliner Platz", +         "y" : "5297058", +         "realDateTime" : { +            "month" : "9", +            "year" : "2024", +            "day" : "21", +            "weekday" : "7", +            "hour" : "18", +            "minute" : "40" +         }, +         "operator" : { +            "publicCode" : "EV-B", +            "code" : "12", +            "name" : "EVAG Bus" +         }, +         "countdown" : "6", +         "realtimeTripStatus" : "MONITORED", +         "dateTime" : { +            "minute" : "33", +            "hour" : "18", +            "weekday" : "7", +            "year" : "2024", +            "month" : "9", +            "day" : "21" +         }, +         "area" : "4", +         "servingLine" : { +            "code" : "5", +            "destID" : "20009222", +            "name" : "Niederflurbus", +            "realtime" : "1", +            "mtSubcode" : "0", +            "symbol" : "145", +            "liErgRiProj" : { +               "supplement" : " ", +               "project" : "j24", +               "network" : "eva", +               "direction" : "R", +               "line" : "12145", +               "gid" : "de:vrr:eva-12-145:" +            }, +            "key" : "558", +            "delay" : "7", +            "motType" : "5", +            "direction" : "Essen Erbach", +            "stateless" : "eva:12145: :R:j24", +            "number" : "145", +            "directionFrom" : "Essen Heisingen Baldeneysee", +            "lineDisplay" : "line" +         }, +         "platformName" : "1", +         "platform" : "1", +         "attrs" : [ +            { +               "name" : "AVMSTripID", +               "value" : "RB_EVAG.84932" +            } +         ], +         "mapName" : "MRCV" +      }, +      { +         "platformName" : "Gleis 3", +         "platform" : "3", +         "attrs" : [ +            { +               "value" : "RB_EVAG.2992", +               "name" : "AVMSTripID" +            } +         ], +         "mapName" : "MRCV", +         "area" : "2", +         "servingLine" : { +            "name" : "Straßenbahn", +            "destID" : "20009254", +            "code" : "4", +            "mtSubcode" : "0", +            "realtime" : "1", +            "symbol" : "106", +            "liErgRiProj" : { +               "direction" : "H", +               "line" : "11106", +               "gid" : "de:vrr:eva-11-106:", +               "supplement" : " ", +               "project" : "j24", +               "network" : "eva" +            }, +            "key" : "167", +            "delay" : "0", +            "direction" : "Essen Germaniaplatz", +            "motType" : "4", +            "stateless" : "eva:11106: :H:j24", +            "lineDisplay" : "line", +            "number" : "106", +            "directionFrom" : "Essen Helenenstr." +         }, +         "operator" : { +            "name" : "EVAG Strab", +            "publicCode" : "EV-T", +            "code" : "11" +         }, +         "countdown" : "1", +         "dateTime" : { +            "weekday" : "7", +            "day" : "21", +            "month" : "9", +            "year" : "2024", +            "minute" : "35", +            "hour" : "18" +         }, +         "realtimeTripStatus" : "MONITORED", +         "realDateTime" : { +            "hour" : "18", +            "minute" : "35", +            "year" : "2024", +            "month" : "9", +            "day" : "21", +            "weekday" : "7" +         }, +         "y" : "5296977", +         "x" : "779748", +         "stopID" : "20009153", +         "nameWO" : "Berliner Platz", +         "stopName" : "Essen Berliner Platz" +      }, +      { +         "realtimeTripStatus" : "MONITORED", +         "dateTime" : { +            "weekday" : "7", +            "month" : "9", +            "year" : "2024", +            "day" : "21", +            "minute" : "35", +            "hour" : "18" +         }, +         "operator" : { +            "code" : "11", +            "publicCode" : "EV-T", +            "name" : "EVAG Strab" +         }, +         "countdown" : "1", +         "realDateTime" : { +            "hour" : "18", +            "minute" : "35", +            "day" : "21", +            "year" : "2024", +            "month" : "9", +            "weekday" : "7" +         }, +         "platform" : "4", +         "mapName" : "MRCV", +         "attrs" : [ +            { +               "value" : "RB_EVAG.3140", +               "name" : "AVMSTripID" +            } +         ], +         "platformName" : "Gleis 4", +         "servingLine" : { +            "delay" : "0", +            "motType" : "4", +            "direction" : "Essen Helenenstr.", +            "stateless" : "eva:11101: :H:j24", +            "directionFrom" : "Essen Philippusstift", +            "number" : "101", +            "lineDisplay" : "line", +            "code" : "4", +            "name" : "Straßenbahn", +            "destID" : "20009306", +            "realtime" : "1", +            "mtSubcode" : "0", +            "liErgRiProj" : { +               "supplement" : " ", +               "network" : "eva", +               "project" : "j24", +               "direction" : "H", +               "line" : "11101", +               "gid" : "de:vrr:eva-11-101:" +            }, +            "symbol" : "101", +            "key" : "155" +         }, +         "area" : "2", +         "stopName" : "Essen Berliner Platz", +         "y" : "5297057", +         "nameWO" : "Berliner Platz", +         "stopID" : "20009153", +         "x" : "779692" +      }, +      { +         "stopID" : "20009153", +         "x" : "779713", +         "nameWO" : "Berliner Platz", +         "y" : "5297149", +         "stopName" : "Essen Berliner Platz", +         "area" : "1", +         "servingLine" : { +            "destID" : "20009447", +            "code" : "1", +            "name" : "U-Bahn", +            "mtSubcode" : "0", +            "realtime" : "1", +            "liErgRiProj" : { +               "direction" : "H", +               "gid" : "de:vrr:eva-10-U17:", +               "line" : "10U17", +               "supplement" : " ", +               "project" : "j24", +               "network" : "eva" +            }, +            "symbol" : "U17", +            "key" : "109", +            "delay" : "0", +            "direction" : "Essen Margarethenhöhe", +            "motType" : "2", +            "stateless" : "eva:10U17: :H:j24", +            "lineDisplay" : "line", +            "directionFrom" : "Essen Karlsplatz", +            "number" : "U17" +         }, +         "platformName" : "2", +         "mapName" : "MRCV", +         "attrs" : [ +            { +               "value" : "RB_EVAG.274590", +               "name" : "AVMSTripID" +            } +         ], +         "platform" : "2", +         "realDateTime" : { +            "minute" : "35", +            "hour" : "18", +            "weekday" : "7", +            "year" : "2024", +            "month" : "9", +            "day" : "21" +         }, +         "countdown" : "1", +         "operator" : { +            "name" : "EVAG U-Bahn", +            "publicCode" : "EV-U", +            "code" : "10" +         }, +         "dateTime" : { +            "month" : "9", +            "year" : "2024", +            "day" : "21", +            "weekday" : "7", +            "hour" : "18", +            "minute" : "35" +         }, +         "realtimeTripStatus" : "MONITORED" +      }, +      { +         "stopName" : "Essen Berliner Platz", +         "y" : "5297142", +         "nameWO" : "Berliner Platz", +         "x" : "779741", +         "stopID" : "20009153", +         "realtimeTripStatus" : "MONITORED", +         "dateTime" : { +            "hour" : "18", +            "minute" : "36", +            "month" : "9", +            "year" : "2024", +            "day" : "21", +            "weekday" : "7" +         }, +         "operator" : { +            "publicCode" : "EV-U", +            "name" : "EVAG U-Bahn", +            "code" : "10" +         }, +         "countdown" : "2", +         "realDateTime" : { +            "month" : "9", +            "year" : "2024", +            "day" : "21", +            "weekday" : "7", +            "hour" : "18", +            "minute" : "36" +         }, +         "attrs" : [ +            { +               "value" : "RB_EVAG.274934", +               "name" : "AVMSTripID" +            } +         ], +         "mapName" : "MRCV", +         "platform" : "1", +         "platformName" : "1", +         "servingLine" : { +            "motType" : "2", +            "direction" : "Gelsenkirchen Buerer Str.", +            "delay" : "0", +            "directionFrom" : "Essen Messe W.-Süd/Gruga", +            "number" : "U11", +            "lineDisplay" : "line", +            "stateless" : "eva:10U11: :R:j24", +            "realtime" : "1", +            "mtSubcode" : "0", +            "code" : "1", +            "name" : "U-Bahn", +            "destID" : "20005579", +            "key" : "709", +            "liErgRiProj" : { +               "network" : "eva", +               "project" : "j24", +               "supplement" : " ", +               "line" : "10U11", +               "gid" : "de:vrr:eva-10-U11:", +               "direction" : "R" +            }, +            "symbol" : "U11" +         }, +         "area" : "1" +      }, +      { +         "operator" : { +            "code" : "12", +            "publicCode" : "EV-B", +            "name" : "EVAG Bus" +         }, +         "countdown" : "2", +         "dateTime" : { +            "hour" : "18", +            "minute" : "36", +            "day" : "21", +            "year" : "2024", +            "month" : "9", +            "weekday" : "7" +         }, +         "platformName" : "4", +         "mapName" : "MRCV", +         "platform" : "4", +         "area" : "3", +         "servingLine" : { +            "realtime" : "0", +            "mtSubcode" : "0", +            "name" : "Niederflurbus", +            "code" : "5", +            "destID" : "20009197", +            "key" : "190", +            "liErgRiProj" : { +               "supplement" : " ", +               "network" : "eva", +               "project" : "j24", +               "direction" : "R", +               "line" : "12166", +               "gid" : "de:vrr:eva-12-166:" +            }, +            "symbol" : "166", +            "motType" : "5", +            "direction" : "Essen Dellwig Bahnhof", +            "directionFrom" : "E-Burgaltendorf Burgruine", +            "number" : "166", +            "lineDisplay" : "line", +            "stateless" : "eva:12166: :R:j24" +         }, +         "stopName" : "Essen Berliner Platz", +         "y" : "5296893", +         "x" : "779748", +         "stopID" : "20009153", +         "nameWO" : "Berliner Platz" +      }, +      { +         "area" : "2", +         "servingLine" : { +            "liErgRiProj" : { +               "network" : "eva", +               "project" : "j24", +               "supplement" : " ", +               "gid" : "de:vrr:eva-11-103:", +               "line" : "11103", +               "direction" : "R" +            }, +            "symbol" : "103", +            "key" : "462", +            "code" : "4", +            "destID" : "20009641", +            "name" : "Straßenbahn", +            "realtime" : "1", +            "mtSubcode" : "0", +            "stateless" : "eva:11103: :R:j24", +            "directionFrom" : "Essen Steele S", +            "number" : "103", +            "lineDisplay" : "line", +            "delay" : "0", +            "motType" : "4", +            "direction" : "Essen Wertstr." +         }, +         "platformName" : "Gleis 3", +         "platform" : "3", +         "mapName" : "MRCV", +         "attrs" : [ +            { +               "value" : "RB_EVAG.2316", +               "name" : "AVMSTripID" +            } +         ], +         "realDateTime" : { +            "weekday" : "7", +            "day" : "21", +            "year" : "2024", +            "month" : "9", +            "minute" : "37", +            "hour" : "18" +         }, +         "countdown" : "3", +         "operator" : { +            "name" : "EVAG Strab", +            "publicCode" : "EV-T", +            "code" : "11" +         }, +         "dateTime" : { +            "minute" : "37", +            "hour" : "18", +            "weekday" : "7", +            "day" : "21", +            "month" : "9", +            "year" : "2024" +         }, +         "realtimeTripStatus" : "MONITORED", +         "stopID" : "20009153", +         "x" : "779748", +         "nameWO" : "Berliner Platz", +         "y" : "5296977", +         "stopName" : "Essen Berliner Platz" +      }, +      { +         "realDateTime" : { +            "minute" : "38", +            "hour" : "18", +            "weekday" : "7", +            "year" : "2024", +            "month" : "9", +            "day" : "21" +         }, +         "dateTime" : { +            "hour" : "18", +            "minute" : "38", +            "day" : "21", +            "month" : "9", +            "year" : "2024", +            "weekday" : "7" +         }, +         "realtimeTripStatus" : "MONITORED", +         "countdown" : "4", +         "operator" : { +            "publicCode" : "EV-T", +            "name" : "EVAG Strab", +            "code" : "11" +         }, +         "servingLine" : { +            "mtSubcode" : "0", +            "realtime" : "1", +            "code" : "4", +            "name" : "Straßenbahn", +            "destID" : "20009665", +            "key" : "365", +            "symbol" : "105", +            "liErgRiProj" : { +               "direction" : "H", +               "line" : "11105", +               "gid" : "de:vrr:eva-11-105:", +               "supplement" : " ", +               "project" : "j24", +               "network" : "eva" +            }, +            "direction" : "Essen Zeche Ludwig", +            "motType" : "4", +            "delay" : "0", +            "lineDisplay" : "line", +            "number" : "105", +            "directionFrom" : "Essen Unterstr.", +            "stateless" : "eva:11105: :H:j24" +         }, +         "area" : "2", +         "mapName" : "MRCV", +         "attrs" : [ +            { +               "value" : "RB_EVAG.2585", +               "name" : "AVMSTripID" +            } +         ], +         "platform" : "4", +         "platformName" : "Gleis 4", +         "stopName" : "Essen Berliner Platz", +         "nameWO" : "Berliner Platz", +         "stopID" : "20009153", +         "x" : "779692", +         "y" : "5297057" +      }, +      { +         "servingLine" : { +            "name" : "Straßenbahn", +            "code" : "4", +            "destID" : "20009582", +            "realtime" : "1", +            "mtSubcode" : "0", +            "liErgRiProj" : { +               "line" : "11109", +               "gid" : "de:vrr:eva-11-109:", +               "direction" : "H", +               "project" : "j24", +               "network" : "eva", +               "supplement" : " " +            }, +            "symbol" : "109", +            "key" : "195", +            "delay" : "0", +            "motType" : "4", +            "direction" : "Essen Steele S", +            "stateless" : "eva:11109: :H:j24", +            "directionFrom" : "Frohnhausen Breilsort", +            "number" : "109", +            "lineDisplay" : "line" +         }, +         "area" : "2", +         "attrs" : [ +            { +               "name" : "AVMSTripID", +               "value" : "RB_EVAG.3690" +            } +         ], +         "mapName" : "MRCV", +         "platform" : "4", +         "platformName" : "Gleis 4", +         "realDateTime" : { +            "weekday" : "7", +            "day" : "21", +            "year" : "2024", +            "month" : "9", +            "minute" : "40", +            "hour" : "18" +         }, +         "realtimeTripStatus" : "MONITORED", +         "dateTime" : { +            "day" : "21", +            "month" : "9", +            "year" : "2024", +            "weekday" : "7", +            "hour" : "18", +            "minute" : "40" +         }, +         "countdown" : "6", +         "operator" : { +            "publicCode" : "EV-T", +            "code" : "11", +            "name" : "EVAG Strab" +         }, +         "nameWO" : "Berliner Platz", +         "stopID" : "20009153", +         "x" : "779692", +         "y" : "5297057", +         "stopName" : "Essen Berliner Platz" +      }, +      { +         "stopInfos" : null, +         "stopName" : "Essen Berliner Platz", +         "y" : "5296897", +         "nameWO" : "Berliner Platz", +         "stopID" : "20009153", +         "x" : "779732", +         "dateTime" : { +            "year" : "2024", +            "month" : "9", +            "day" : "21", +            "weekday" : "7", +            "hour" : "18", +            "minute" : "41" +         }, +         "tripInfos" : null, +         "operator" : { +            "name" : "DB Bahn Rheinlandbus", +            "publicCode" : "BVR", +            "code" : "88" +         }, +         "countdown" : "7", +         "lineInfos" : { +            "lineInfo" : { +               "infoLinkText" : "Linie SB16 - Haltestellenausfall - Zwischen (H) Essen, Hollestr. und (H) Essen, Hollestr. - Grund: Baumaßnahme", +               "infoLinkURL" : "http://ems.vrr.de/info-link/5efeb629-f5df-5464-b4ff-753f43edd18f", +               "paramList" : [ +                  { +                     "name" : "publisher", +                     "type" : "addInfoParam", +                     "value" : "ems.comm.addinfo", +                     "edit" : "0" +                  }, +                  { +                     "edit" : "0", +                     "value" : "lineInfo", +                     "name" : "infoType", +                     "type" : "addInfoParam" +                  }, +                  { +                     "type" : "system", +                     "name" : "infoID", +                     "edit" : "0", +                     "value" : "ems-19119" +                  }, +                  { +                     "edit" : "0", +                     "value" : "5356663", +                     "type" : "system", +                     "name" : "seqID" +                  }, +                  { +                     "name" : "priority", +                     "type" : "addInfoParam", +                     "edit" : "0", +                     "value" : "normal" +                  }, +                  { +                     "name" : "incidentDateTime", +                     "type" : "system", +                     "edit" : "0", +                     "value" : "08/01/2024 03:00 - 08/01/2026 23:50" +                  } +               ], +               "infoText" : { +                  "content" : "<b>Linie SB16: </b>Zwischen <b>(H) Essen, Hollestr.</b> und <b>(H) Essen, Hollestr.</b> kommt es zu <b>einem Haltestellenausfall</b>.<br><br> Dauer: 08.01.24, 03:00 Uhr bis 08.01.26, 23:50 Uhr<br><br>Die Haltestelle wird nicht angefahren.  Abfahrtshaltestelle (Bussteig 6)", +                  "subject" : "Haltestellenausfall durch Baumaßnahme", +                  "speechText" : "", +                  "smsText" : "Linie SB16 - Haltestellenausfall - Zwischen (H) Essen, Hollestr. und (H) Essen, Hollestr. - Grund: Baumaßnahme", +                  "htmlText" : "", +                  "additionalText" : "Die beschriebenen Änderungen sind in der elektronischen Fahrplanauskunft (EFA) <b>nicht</b> berücksichtigt.", +                  "subtitle" : "Haltestellenausfall durch Baumaßnahme", +                  "wmlText" : "" +               } +            } +         }, +         "mapName" : "MRCV", +         "platform" : "3", +         "platformName" : "3", +         "servingLine" : { +            "lineDisplay" : "line", +            "number" : "SB16", +            "directionFrom" : "BOT St.-Anto.-Hosp./Gartenstr.", +            "stateless" : "bvr:88016:K:R:j24", +            "direction" : "Essen Hauptbahnhof", +            "motType" : "7", +            "key" : "92", +            "symbol" : "SB16", +            "liErgRiProj" : { +               "direction" : "R", +               "gid" : "de:vrr:bvr-88-16:K", +               "line" : "88016", +               "supplement" : "K", +               "network" : "bvr", +               "project" : "j24" +            }, +            "mtSubcode" : "0", +            "realtime" : "0", +            "destID" : "20009289", +            "name" : "SB", +            "code" : "5" +         }, +         "area" : "3" +      }, +      { +         "stopName" : "Essen Berliner Platz", +         "y" : "5297149", +         "nameWO" : "Berliner Platz", +         "stopID" : "20009153", +         "x" : "779713", +         "dateTime" : { +            "day" : "21", +            "year" : "2024", +            "month" : "9", +            "weekday" : "7", +            "hour" : "18", +            "minute" : "42" +         }, +         "realtimeTripStatus" : "MONITORED", +         "countdown" : "8", +         "operator" : { +            "code" : "10", +            "publicCode" : "EV-U", +            "name" : "EVAG U-Bahn" +         }, +         "realDateTime" : { +            "minute" : "42", +            "hour" : "18", +            "weekday" : "7", +            "year" : "2024", +            "month" : "9", +            "day" : "21" +         }, +         "mapName" : "MRCV", +         "attrs" : [ +            { +               "value" : "RB_EVAG.274464", +               "name" : "AVMSTripID" +            } +         ], +         "platform" : "2", +         "platformName" : "2", +         "servingLine" : { +            "motType" : "2", +            "direction" : "Essen Messe W.-Süd/Gruga", +            "delay" : "0", +            "directionFrom" : "Gelsenkirchen Buerer Str.", +            "number" : "U11", +            "lineDisplay" : "line", +            "stateless" : "eva:10U11: :H:j24", +            "realtime" : "1", +            "mtSubcode" : "0", +            "code" : "1", +            "destID" : "20009270", +            "name" : "U-Bahn", +            "key" : "271", +            "liErgRiProj" : { +               "supplement" : " ", +               "project" : "j24", +               "network" : "eva", +               "direction" : "H", +               "gid" : "de:vrr:eva-10-U11:", +               "line" : "10U11" +            }, +            "symbol" : "U11" +         }, +         "area" : "1" +      }, +      { +         "y" : "5296977", +         "stopID" : "20009153", +         "x" : "779748", +         "nameWO" : "Berliner Platz", +         "stopName" : "Essen Berliner Platz", +         "platformName" : "Gleis 3", +         "attrs" : [ +            { +               "name" : "AVMSTripID", +               "value" : "RB_EVAG.3840" +            } +         ], +         "mapName" : "MRCV", +         "platform" : "3", +         "area" : "2", +         "servingLine" : { +            "lineDisplay" : "line", +            "directionFrom" : "Essen Steele S", +            "number" : "109", +            "stateless" : "eva:11109: :R:j24", +            "direction" : "Frohnhausen Breilsort", +            "motType" : "4", +            "delay" : "0", +            "key" : "370", +            "liErgRiProj" : { +               "supplement" : " ", +               "network" : "eva", +               "project" : "j24", +               "direction" : "R", +               "line" : "11109", +               "gid" : "de:vrr:eva-11-109:" +            }, +            "symbol" : "109", +            "mtSubcode" : "0", +            "realtime" : "1", +            "code" : "4", +            "name" : "Straßenbahn", +            "destID" : "20009243" +         }, +         "operator" : { +            "code" : "11", +            "publicCode" : "EV-T", +            "name" : "EVAG Strab" +         }, +         "countdown" : "8", +         "dateTime" : { +            "weekday" : "7", +            "year" : "2024", +            "month" : "9", +            "day" : "21", +            "minute" : "42", +            "hour" : "18" +         }, +         "realtimeTripStatus" : "MONITORED", +         "realDateTime" : { +            "year" : "2024", +            "month" : "9", +            "day" : "21", +            "weekday" : "7", +            "hour" : "18", +            "minute" : "42" +         } +      }, +      { +         "servingLine" : { +            "motType" : "2", +            "direction" : "Essen Karlsplatz", +            "delay" : "0", +            "number" : "U17", +            "directionFrom" : "Essen Margarethenhöhe", +            "lineDisplay" : "line", +            "stateless" : "eva:10U17: :R:j24", +            "realtime" : "1", +            "mtSubcode" : "0", +            "code" : "1", +            "name" : "U-Bahn", +            "destID" : "20009370", +            "key" : "263", +            "symbol" : "U17", +            "liErgRiProj" : { +               "network" : "eva", +               "project" : "j24", +               "supplement" : " ", +               "gid" : "de:vrr:eva-10-U17:", +               "line" : "10U17", +               "direction" : "R" +            } +         }, +         "area" : "1", +         "platform" : "1", +         "mapName" : "MRCV", +         "attrs" : [ +            { +               "name" : "AVMSTripID", +               "value" : "RB_EVAG.274832" +            } +         ], +         "platformName" : "1", +         "realDateTime" : { +            "month" : "9", +            "year" : "2024", +            "day" : "21", +            "weekday" : "7", +            "hour" : "18", +            "minute" : "43" +         }, +         "dateTime" : { +            "hour" : "18", +            "minute" : "43", +            "day" : "21", +            "month" : "9", +            "year" : "2024", +            "weekday" : "7" +         }, +         "realtimeTripStatus" : "MONITORED", +         "operator" : { +            "code" : "10", +            "publicCode" : "EV-U", +            "name" : "EVAG U-Bahn" +         }, +         "countdown" : "9", +         "nameWO" : "Berliner Platz", +         "stopID" : "20009153", +         "x" : "779741", +         "y" : "5297142", +         "stopName" : "Essen Berliner Platz" +      }, +      { +         "stopName" : "Essen Berliner Platz", +         "x" : "779748", +         "stopID" : "20009153", +         "nameWO" : "Berliner Platz", +         "y" : "5296893", +         "realDateTime" : { +            "weekday" : "7", +            "day" : "21", +            "month" : "9", +            "year" : "2024", +            "minute" : "44", +            "hour" : "18" +         }, +         "countdown" : "10", +         "operator" : { +            "name" : "Vestische", +            "publicCode" : "VEST", +            "code" : "40" +         }, +         "realtimeTripStatus" : "MONITORED", +         "dateTime" : { +            "minute" : "44", +            "hour" : "18", +            "weekday" : "7", +            "day" : "21", +            "year" : "2024", +            "month" : "9" +         }, +         "area" : "3", +         "servingLine" : { +            "symbol" : "SB16", +            "liErgRiProj" : { +               "supplement" : " ", +               "project" : "j24", +               "network" : "ves", +               "direction" : "H", +               "line" : "40016", +               "gid" : "de:vrr:SB16:VES-40-16" +            }, +            "key" : "76", +            "name" : "Niederflurbus", +            "code" : "5", +            "destID" : "20003174", +            "mtSubcode" : "0", +            "realtime" : "1", +            "stateless" : "ves:40016: :H:j24", +            "lineDisplay" : "line", +            "number" : "SB16", +            "directionFrom" : "Essen Hauptbahnhof", +            "delay" : "0", +            "direction" : "BOT St.-Anto.-Hosp./Gartenstr.", +            "motType" : "5" +         }, +         "platformName" : "4", +         "platform" : "4", +         "attrs" : [ +            { +               "value" : "4001610010160413", +               "name" : "AVMSTripID" +            } +         ], +         "mapName" : "MRCV" +      }, +      { +         "stopName" : "Essen Berliner Platz", +         "x" : "779692", +         "stopID" : "20009153", +         "nameWO" : "Berliner Platz", +         "y" : "5297057", +         "realDateTime" : { +            "month" : "9", +            "year" : "2024", +            "day" : "21", +            "weekday" : "7", +            "hour" : "18", +            "minute" : "45" +         }, +         "countdown" : "11", +         "operator" : { +            "publicCode" : "EV-T", +            "code" : "11", +            "name" : "EVAG Strab" +         }, +         "dateTime" : { +            "minute" : "45", +            "hour" : "18", +            "weekday" : "7", +            "month" : "9", +            "year" : "2024", +            "day" : "21" +         }, +         "realtimeTripStatus" : "MONITORED", +         "area" : "2", +         "servingLine" : { +            "liErgRiProj" : { +               "project" : "j24", +               "network" : "eva", +               "supplement" : " ", +               "gid" : "de:vrr:eva-11-103:", +               "line" : "11103", +               "direction" : "H" +            }, +            "symbol" : "103", +            "key" : "139", +            "code" : "4", +            "name" : "Straßenbahn", +            "destID" : "20009289", +            "realtime" : "1", +            "mtSubcode" : "0", +            "stateless" : "eva:11103: :H:j24", +            "directionFrom" : "Essen Wertstr.", +            "number" : "103", +            "lineDisplay" : "line", +            "delay" : "0", +            "motType" : "4", +            "direction" : "Essen Hauptbahnhof" +         }, +         "platformName" : "Gleis 4", +         "mapName" : "MRCV", +         "attrs" : [ +            { +               "name" : "AVMSTripID", +               "value" : "RB_EVAG.1938" +            } +         ], +         "platform" : "4" +      }, +      { +         "realtimeTripStatus" : "MONITORED", +         "dateTime" : { +            "minute" : "45", +            "hour" : "18", +            "weekday" : "7", +            "year" : "2024", +            "month" : "9", +            "day" : "21" +         }, +         "operator" : { +            "publicCode" : "", +            "code" : "13", +            "name" : "Ruhrbahn Mülheim" +         }, +         "countdown" : "11", +         "realDateTime" : { +            "hour" : "18", +            "minute" : "45", +            "month" : "9", +            "year" : "2024", +            "day" : "21", +            "weekday" : "7" +         }, +         "platform" : "2", +         "attrs" : [ +            { +               "value" : "RB_EVAG.274790", +               "name" : "AVMSTripID" +            } +         ], +         "mapName" : "MRCV", +         "platformName" : "2", +         "servingLine" : { +            "key" : "77", +            "symbol" : "U18", +            "liErgRiProj" : { +               "supplement" : " ", +               "network" : "btm", +               "project" : "j24", +               "direction" : "H", +               "line" : "13U18", +               "gid" : "de:vrr:btm-13-U18:" +            }, +            "mtSubcode" : "0", +            "realtime" : "1", +            "name" : "U-Bahn", +            "destID" : "20015225", +            "code" : "1", +            "lineDisplay" : "line", +            "number" : "U18", +            "directionFrom" : "Essen Berliner Platz", +            "stateless" : "btm:13U18: :H:j24", +            "direction" : "Mülheim Hauptbahnhof", +            "motType" : "2", +            "delay" : "0" +         }, +         "area" : "1", +         "stopName" : "Essen Berliner Platz", +         "y" : "5297149", +         "nameWO" : "Berliner Platz", +         "stopID" : "20009153", +         "x" : "779713" +      }, +      { +         "platformName" : "Gleis 3", +         "mapName" : "MRCV", +         "attrs" : [ +            { +               "name" : "AVMSTripID", +               "value" : "RB_EVAG.2888" +            } +         ], +         "platform" : "3", +         "area" : "2", +         "servingLine" : { +            "delay" : "0", +            "direction" : "Essen Unterstr.", +            "motType" : "4", +            "stateless" : "eva:11105: :R:j24", +            "lineDisplay" : "line", +            "number" : "105", +            "directionFrom" : "Essen Zeche Ludwig", +            "code" : "4", +            "destID" : "20009614", +            "name" : "Straßenbahn", +            "mtSubcode" : "0", +            "realtime" : "1", +            "symbol" : "105", +            "liErgRiProj" : { +               "supplement" : " ", +               "network" : "eva", +               "project" : "j24", +               "direction" : "R", +               "gid" : "de:vrr:eva-11-105:", +               "line" : "11105" +            }, +            "key" : "753" +         }, +         "countdown" : "11", +         "operator" : { +            "publicCode" : "EV-T", +            "code" : "11", +            "name" : "EVAG Strab" +         }, +         "dateTime" : { +            "weekday" : "7", +            "day" : "21", +            "year" : "2024", +            "month" : "9", +            "minute" : "45", +            "hour" : "18" +         }, +         "realtimeTripStatus" : "MONITORED", +         "realDateTime" : { +            "hour" : "18", +            "minute" : "45", +            "day" : "21", +            "year" : "2024", +            "month" : "9", +            "weekday" : "7" +         }, +         "y" : "5296977", +         "stopID" : "20009153", +         "x" : "779748", +         "nameWO" : "Berliner Platz", +         "stopName" : "Essen Berliner Platz" +      }, +      { +         "y" : "5297057", +         "stopID" : "20009153", +         "x" : "779692", +         "nameWO" : "Berliner Platz", +         "stopName" : "Essen Berliner Platz", +         "platformName" : "Gleis 4", +         "mapName" : "MRCV", +         "attrs" : [ +            { +               "name" : "AVMSTripID", +               "value" : "RB_EVAG.3175" +            } +         ], +         "platform" : "4", +         "area" : "2", +         "servingLine" : { +            "direction" : "Essen Helenenstr.", +            "motType" : "4", +            "delay" : "1", +            "lineDisplay" : "line", +            "directionFrom" : "Essen Philippusstift", +            "number" : "101", +            "stateless" : "eva:11101: :H:j24", +            "mtSubcode" : "0", +            "realtime" : "1", +            "name" : "Straßenbahn", +            "code" : "4", +            "destID" : "20009306", +            "key" : "159", +            "liErgRiProj" : { +               "supplement" : " ", +               "project" : "j24", +               "network" : "eva", +               "direction" : "H", +               "line" : "11101", +               "gid" : "de:vrr:eva-11-101:" +            }, +            "symbol" : "101" +         }, +         "countdown" : "17", +         "operator" : { +            "publicCode" : "EV-T", +            "code" : "11", +            "name" : "EVAG Strab" +         }, +         "realtimeTripStatus" : "MONITORED", +         "dateTime" : { +            "minute" : "50", +            "hour" : "18", +            "weekday" : "7", +            "month" : "9", +            "year" : "2024", +            "day" : "21" +         }, +         "realDateTime" : { +            "minute" : "51", +            "hour" : "18", +            "weekday" : "7", +            "day" : "21", +            "month" : "9", +            "year" : "2024" +         } +      }, +      { +         "realDateTime" : { +            "weekday" : "7", +            "day" : "21", +            "month" : "9", +            "year" : "2024", +            "minute" : "50", +            "hour" : "18" +         }, +         "realtimeTripStatus" : "MONITORED", +         "dateTime" : { +            "weekday" : "7", +            "day" : "21", +            "year" : "2024", +            "month" : "9", +            "minute" : "50", +            "hour" : "18" +         }, +         "operator" : { +            "publicCode" : "EV-T", +            "name" : "EVAG Strab", +            "code" : "11" +         }, +         "countdown" : "16", +         "servingLine" : { +            "liErgRiProj" : { +               "supplement" : " ", +               "project" : "j24", +               "network" : "eva", +               "direction" : "H", +               "line" : "11106", +               "gid" : "de:vrr:eva-11-106:" +            }, +            "symbol" : "106", +            "key" : "171", +            "code" : "4", +            "name" : "Straßenbahn", +            "destID" : "20009254", +            "mtSubcode" : "0", +            "realtime" : "1", +            "stateless" : "eva:11106: :H:j24", +            "lineDisplay" : "line", +            "directionFrom" : "Essen Helenenstr.", +            "number" : "106", +            "delay" : "0", +            "direction" : "Essen Germaniaplatz", +            "motType" : "4" +         }, +         "area" : "2", +         "platform" : "3", +         "attrs" : [ +            { +               "name" : "AVMSTripID", +               "value" : "RB_EVAG.1072" +            } +         ], +         "mapName" : "MRCV", +         "platformName" : "Gleis 3", +         "stopName" : "Essen Berliner Platz", +         "nameWO" : "Berliner Platz", +         "stopID" : "20009153", +         "x" : "779748", +         "y" : "5296977" +      }, +      { +         "platform" : "2", +         "mapName" : "MRCV", +         "attrs" : [ +            { +               "value" : "RB_EVAG.274551", +               "name" : "AVMSTripID" +            } +         ], +         "platformName" : "2", +         "servingLine" : { +            "delay" : "0", +            "direction" : "Essen Margarethenhöhe", +            "motType" : "2", +            "stateless" : "eva:10U17: :H:j24", +            "lineDisplay" : "line", +            "number" : "U17", +            "directionFrom" : "Essen Karlsplatz", +            "name" : "U-Bahn", +            "code" : "1", +            "destID" : "20009447", +            "mtSubcode" : "0", +            "realtime" : "1", +            "symbol" : "U17", +            "liErgRiProj" : { +               "project" : "j24", +               "network" : "eva", +               "supplement" : " ", +               "line" : "10U17", +               "gid" : "de:vrr:eva-10-U17:", +               "direction" : "H" +            }, +            "key" : "111" +         }, +         "area" : "1", +         "dateTime" : { +            "weekday" : "7", +            "month" : "9", +            "year" : "2024", +            "day" : "21", +            "minute" : "50", +            "hour" : "18" +         }, +         "realtimeTripStatus" : "MONITORED", +         "countdown" : "16", +         "operator" : { +            "code" : "10", +            "publicCode" : "EV-U", +            "name" : "EVAG U-Bahn" +         }, +         "realDateTime" : { +            "weekday" : "7", +            "day" : "21", +            "month" : "9", +            "year" : "2024", +            "minute" : "50", +            "hour" : "18" +         }, +         "y" : "5297149", +         "nameWO" : "Berliner Platz", +         "x" : "779713", +         "stopID" : "20009153", +         "stopName" : "Essen Berliner Platz" +      }, +      { +         "y" : "5296897", +         "stopID" : "20009153", +         "x" : "779732", +         "nameWO" : "Berliner Platz", +         "stopName" : "Essen Berliner Platz", +         "platformName" : "3", +         "attrs" : [ +            { +               "value" : "RB_EVAG.87593", +               "name" : "AVMSTripID" +            } +         ], +         "mapName" : "MRCV", +         "platform" : "3", +         "area" : "3", +         "servingLine" : { +            "symbol" : "166", +            "liErgRiProj" : { +               "direction" : "H", +               "line" : "12166", +               "gid" : "de:vrr:eva-12-166:", +               "supplement" : " ", +               "project" : "j24", +               "network" : "eva" +            }, +            "key" : "316", +            "name" : "Niederflurbus", +            "destID" : "20008454", +            "code" : "5", +            "realtime" : "1", +            "mtSubcode" : "0", +            "stateless" : "eva:12166: :H:j24", +            "number" : "166", +            "directionFrom" : "Essen Dellwig Bahnhof", +            "lineDisplay" : "line", +            "delay" : "0", +            "motType" : "5", +            "direction" : "Hattingen Märkische Str." +         }, +         "countdown" : "16", +         "operator" : { +            "name" : "EVAG Bus", +            "publicCode" : "EV-B", +            "code" : "12" +         }, +         "dateTime" : { +            "year" : "2024", +            "month" : "9", +            "day" : "21", +            "weekday" : "7", +            "hour" : "18", +            "minute" : "50" +         }, +         "realtimeTripStatus" : "MONITORED", +         "realDateTime" : { +            "hour" : "18", +            "minute" : "50", +            "year" : "2024", +            "month" : "9", +            "day" : "21", +            "weekday" : "7" +         } +      }, +      { +         "area" : "4", +         "servingLine" : { +            "realtime" : "1", +            "mtSubcode" : "0", +            "name" : "Niederflurbus", +            "code" : "5", +            "destID" : "20009302", +            "key" : "280", +            "symbol" : "145", +            "liErgRiProj" : { +               "gid" : "de:vrr:eva-12-145:", +               "line" : "12145", +               "direction" : "H", +               "project" : "j24", +               "network" : "eva", +               "supplement" : " " +            }, +            "motType" : "5", +            "direction" : "Essen Heisingen Baldeneysee", +            "delay" : "0", +            "number" : "145", +            "directionFrom" : "Essen Erbach", +            "lineDisplay" : "line", +            "stateless" : "eva:12145: :H:j24" +         }, +         "platformName" : "2", +         "platform" : "2", +         "attrs" : [ +            { +               "name" : "AVMSTripID", +               "value" : "RB_EVAG.84849" +            } +         ], +         "mapName" : "MRCV", +         "realDateTime" : { +            "minute" : "51", +            "hour" : "18", +            "weekday" : "7", +            "month" : "9", +            "year" : "2024", +            "day" : "21" +         }, +         "countdown" : "17", +         "operator" : { +            "publicCode" : "EV-B", +            "name" : "EVAG Bus", +            "code" : "12" +         }, +         "realtimeTripStatus" : "MONITORED", +         "dateTime" : { +            "year" : "2024", +            "month" : "9", +            "day" : "21", +            "weekday" : "7", +            "hour" : "18", +            "minute" : "51" +         }, +         "x" : "779673", +         "stopID" : "20009153", +         "nameWO" : "Berliner Platz", +         "y" : "5297075", +         "stopName" : "Essen Berliner Platz" +      }, +      { +         "realDateTime" : { +            "hour" : "18", +            "minute" : "51", +            "day" : "21", +            "month" : "9", +            "year" : "2024", +            "weekday" : "7" +         }, +         "realtimeTripStatus" : "MONITORED", +         "dateTime" : { +            "weekday" : "7", +            "year" : "2024", +            "month" : "9", +            "day" : "21", +            "minute" : "51", +            "hour" : "18" +         }, +         "operator" : { +            "publicCode" : "EV-U", +            "name" : "EVAG U-Bahn", +            "code" : "10" +         }, +         "countdown" : "17", +         "servingLine" : { +            "lineDisplay" : "line", +            "directionFrom" : "Essen Messe W.-Süd/Gruga", +            "number" : "U11", +            "stateless" : "eva:10U11: :R:j24", +            "direction" : "Gelsenkirchen Buerer Str.", +            "motType" : "2", +            "delay" : "0", +            "key" : "712", +            "liErgRiProj" : { +               "supplement" : " ", +               "network" : "eva", +               "project" : "j24", +               "direction" : "R", +               "line" : "10U11", +               "gid" : "de:vrr:eva-10-U11:" +            }, +            "symbol" : "U11", +            "mtSubcode" : "0", +            "realtime" : "1", +            "name" : "U-Bahn", +            "code" : "1", +            "destID" : "20005579" +         }, +         "area" : "1", +         "platform" : "1", +         "mapName" : "MRCV", +         "attrs" : [ +            { +               "value" : "RB_EVAG.274438", +               "name" : "AVMSTripID" +            } +         ], +         "platformName" : "1", +         "stopName" : "Essen Berliner Platz", +         "nameWO" : "Berliner Platz", +         "x" : "779741", +         "stopID" : "20009153", +         "y" : "5297142" +      }, +      { +         "stopName" : "Essen Berliner Platz", +         "y" : "5296977", +         "x" : "779748", +         "stopID" : "20009153", +         "nameWO" : "Berliner Platz", +         "countdown" : "18", +         "operator" : { +            "code" : "11", +            "publicCode" : "EV-T", +            "name" : "EVAG Strab" +         }, +         "realtimeTripStatus" : "MONITORED", +         "dateTime" : { +            "hour" : "18", +            "minute" : "52", +            "day" : "21", +            "year" : "2024", +            "month" : "9", +            "weekday" : "7" +         }, +         "realDateTime" : { +            "day" : "21", +            "month" : "9", +            "year" : "2024", +            "weekday" : "7", +            "hour" : "18", +            "minute" : "52" +         }, +         "platformName" : "Gleis 3", +         "mapName" : "MRCV", +         "attrs" : [ +            { +               "name" : "AVMSTripID", +               "value" : "RB_EVAG.3554" +            } +         ], +         "platform" : "3", +         "area" : "2", +         "servingLine" : { +            "delay" : "0", +            "motType" : "4", +            "direction" : "Essen Wertstr.", +            "stateless" : "eva:11103: :R:j24", +            "number" : "103", +            "directionFrom" : "Essen Steele S", +            "lineDisplay" : "line", +            "name" : "Straßenbahn", +            "code" : "4", +            "destID" : "20009641", +            "realtime" : "1", +            "mtSubcode" : "0", +            "symbol" : "103", +            "liErgRiProj" : { +               "gid" : "de:vrr:eva-11-103:", +               "line" : "11103", +               "direction" : "R", +               "network" : "eva", +               "project" : "j24", +               "supplement" : " " +            }, +            "key" : "463" +         } +      }, +      { +         "attrs" : [ +            { +               "value" : "RB_EVAG.2648", +               "name" : "AVMSTripID" +            } +         ], +         "mapName" : "MRCV", +         "platform" : "4", +         "platformName" : "Gleis 4", +         "servingLine" : { +            "motType" : "4", +            "direction" : "Essen Zeche Ludwig", +            "delay" : "0", +            "directionFrom" : "Essen Unterstr.", +            "number" : "105", +            "lineDisplay" : "line", +            "stateless" : "eva:11105: :H:j24", +            "realtime" : "1", +            "mtSubcode" : "0", +            "name" : "Straßenbahn", +            "code" : "4", +            "destID" : "20009665", +            "key" : "369", +            "liErgRiProj" : { +               "gid" : "de:vrr:eva-11-105:", +               "line" : "11105", +               "direction" : "H", +               "network" : "eva", +               "project" : "j24", +               "supplement" : " " +            }, +            "symbol" : "105" +         }, +         "area" : "2", +         "dateTime" : { +            "month" : "9", +            "year" : "2024", +            "day" : "21", +            "weekday" : "7", +            "hour" : "18", +            "minute" : "53" +         }, +         "realtimeTripStatus" : "MONITORED", +         "countdown" : "19", +         "operator" : { +            "name" : "EVAG Strab", +            "publicCode" : "EV-T", +            "code" : "11" +         }, +         "realDateTime" : { +            "minute" : "53", +            "hour" : "18", +            "weekday" : "7", +            "day" : "21", +            "year" : "2024", +            "month" : "9" +         }, +         "y" : "5297057", +         "nameWO" : "Berliner Platz", +         "stopID" : "20009153", +         "x" : "779692", +         "stopName" : "Essen Berliner Platz" +      }, +      { +         "platformName" : "Gleis 4", +         "platform" : "4", +         "mapName" : "MRCV", +         "attrs" : [ +            { +               "value" : "RB_EVAG.3745", +               "name" : "AVMSTripID" +            } +         ], +         "area" : "2", +         "servingLine" : { +            "lineDisplay" : "line", +            "directionFrom" : "Frohnhausen Breilsort", +            "number" : "109", +            "stateless" : "eva:11109: :H:j24", +            "direction" : "Essen Steele S", +            "motType" : "4", +            "delay" : "0", +            "key" : "123", +            "liErgRiProj" : { +               "supplement" : " ", +               "network" : "eva", +               "project" : "j24", +               "direction" : "H", +               "line" : "11109", +               "gid" : "de:vrr:eva-11-109:" +            }, +            "symbol" : "109", +            "mtSubcode" : "0", +            "realtime" : "1", +            "name" : "Straßenbahn", +            "code" : "4", +            "destID" : "20009582" +         }, +         "countdown" : "21", +         "operator" : { +            "code" : "11", +            "publicCode" : "EV-T", +            "name" : "EVAG Strab" +         }, +         "realtimeTripStatus" : "MONITORED", +         "dateTime" : { +            "minute" : "55", +            "hour" : "18", +            "weekday" : "7", +            "day" : "21", +            "year" : "2024", +            "month" : "9" +         }, +         "realDateTime" : { +            "hour" : "18", +            "minute" : "55", +            "month" : "9", +            "year" : "2024", +            "day" : "21", +            "weekday" : "7" +         }, +         "y" : "5297057", +         "stopID" : "20009153", +         "x" : "779692", +         "nameWO" : "Berliner Platz", +         "stopName" : "Essen Berliner Platz" +      }, +      { +         "operator" : { +            "code" : "11", +            "publicCode" : "EV-T", +            "name" : "EVAG Strab" +         }, +         "countdown" : "23", +         "dateTime" : { +            "weekday" : "7", +            "year" : "2024", +            "month" : "9", +            "day" : "21", +            "minute" : "57", +            "hour" : "18" +         }, +         "realtimeTripStatus" : "MONITORED", +         "realDateTime" : { +            "hour" : "18", +            "minute" : "57", +            "day" : "21", +            "year" : "2024", +            "month" : "9", +            "weekday" : "7" +         }, +         "platformName" : "Gleis 3", +         "attrs" : [ +            { +               "value" : "RB_EVAG.1560", +               "name" : "AVMSTripID" +            } +         ], +         "mapName" : "MRCV", +         "platform" : "3", +         "area" : "2", +         "servingLine" : { +            "mtSubcode" : "0", +            "realtime" : "1", +            "destID" : "20009243", +            "code" : "4", +            "name" : "Straßenbahn", +            "key" : "374", +            "symbol" : "109", +            "liErgRiProj" : { +               "project" : "j24", +               "network" : "eva", +               "supplement" : " ", +               "gid" : "de:vrr:eva-11-109:", +               "line" : "11109", +               "direction" : "R" +            }, +            "direction" : "Frohnhausen Breilsort", +            "motType" : "4", +            "delay" : "0", +            "lineDisplay" : "line", +            "number" : "109", +            "directionFrom" : "Essen Steele S", +            "stateless" : "eva:11109: :R:j24" +         }, +         "stopName" : "Essen Berliner Platz", +         "y" : "5296977", +         "stopID" : "20009153", +         "x" : "779748", +         "nameWO" : "Berliner Platz" +      }, +      { +         "servingLine" : { +            "liErgRiProj" : { +               "network" : "eva", +               "project" : "j24", +               "supplement" : " ", +               "gid" : "de:vrr:eva-10-U11:", +               "line" : "10U11", +               "direction" : "H" +            }, +            "symbol" : "U11", +            "key" : "275", +            "destID" : "20009270", +            "name" : "U-Bahn", +            "code" : "1", +            "realtime" : "1", +            "mtSubcode" : "0", +            "stateless" : "eva:10U11: :H:j24", +            "directionFrom" : "Gelsenkirchen Buerer Str.", +            "number" : "U11", +            "lineDisplay" : "line", +            "delay" : "0", +            "motType" : "2", +            "direction" : "Essen Messe W.-Süd/Gruga" +         }, +         "area" : "1", +         "platform" : "2", +         "attrs" : [ +            { +               "name" : "AVMSTripID", +               "value" : "RB_EVAG.274909" +            } +         ], +         "mapName" : "MRCV", +         "platformName" : "2", +         "realDateTime" : { +            "weekday" : "7", +            "year" : "2024", +            "month" : "9", +            "day" : "21", +            "minute" : "57", +            "hour" : "18" +         }, +         "dateTime" : { +            "minute" : "57", +            "hour" : "18", +            "weekday" : "7", +            "day" : "21", +            "month" : "9", +            "year" : "2024" +         }, +         "realtimeTripStatus" : "MONITORED", +         "operator" : { +            "name" : "EVAG U-Bahn", +            "publicCode" : "EV-U", +            "code" : "10" +         }, +         "countdown" : "23", +         "nameWO" : "Berliner Platz", +         "x" : "779713", +         "stopID" : "20009153", +         "y" : "5297149", +         "stopName" : "Essen Berliner Platz" +      }, +      { +         "stopName" : "Essen Berliner Platz", +         "nameWO" : "Berliner Platz", +         "stopID" : "20009153", +         "x" : "779741", +         "y" : "5297142", +         "realDateTime" : { +            "hour" : "18", +            "minute" : "58", +            "day" : "21", +            "month" : "9", +            "year" : "2024", +            "weekday" : "7" +         }, +         "realtimeTripStatus" : "MONITORED", +         "dateTime" : { +            "hour" : "18", +            "minute" : "58", +            "month" : "9", +            "year" : "2024", +            "day" : "21", +            "weekday" : "7" +         }, +         "operator" : { +            "publicCode" : "EV-U", +            "name" : "EVAG U-Bahn", +            "code" : "10" +         }, +         "countdown" : "24", +         "servingLine" : { +            "stateless" : "eva:10U17: :R:j24", +            "number" : "U17", +            "directionFrom" : "Essen Margarethenhöhe", +            "lineDisplay" : "line", +            "delay" : "0", +            "motType" : "2", +            "direction" : "Essen Karlsplatz", +            "symbol" : "U17", +            "liErgRiProj" : { +               "direction" : "R", +               "gid" : "de:vrr:eva-10-U17:", +               "line" : "10U17", +               "supplement" : " ", +               "network" : "eva", +               "project" : "j24" +            }, +            "key" : "266", +            "code" : "1", +            "name" : "U-Bahn", +            "destID" : "20009370", +            "realtime" : "1", +            "mtSubcode" : "0" +         }, +         "area" : "1", +         "attrs" : [ +            { +               "name" : "AVMSTripID", +               "value" : "RB_EVAG.274889" +            } +         ], +         "mapName" : "MRCV", +         "platform" : "1", +         "platformName" : "1" +      }, +      { +         "stopName" : "Essen Berliner Platz", +         "x" : "779692", +         "stopID" : "20009153", +         "nameWO" : "Berliner Platz", +         "y" : "5297057", +         "realDateTime" : { +            "weekday" : "7", +            "day" : "21", +            "month" : "9", +            "year" : "2024", +            "minute" : "0", +            "hour" : "19" +         }, +         "countdown" : "26", +         "operator" : { +            "name" : "EVAG Strab", +            "publicCode" : "EV-T", +            "code" : "11" +         }, +         "dateTime" : { +            "hour" : "19", +            "minute" : "0", +            "year" : "2024", +            "month" : "9", +            "day" : "21", +            "weekday" : "7" +         }, +         "realtimeTripStatus" : "MONITORED", +         "area" : "2", +         "servingLine" : { +            "stateless" : "eva:11103: :H:j24", +            "directionFrom" : "Essen Wertstr.", +            "number" : "103", +            "lineDisplay" : "line", +            "delay" : "0", +            "motType" : "4", +            "direction" : "Essen Hauptbahnhof", +            "liErgRiProj" : { +               "network" : "eva", +               "project" : "j24", +               "supplement" : " ", +               "gid" : "de:vrr:eva-11-103:", +               "line" : "11103", +               "direction" : "H" +            }, +            "symbol" : "103", +            "key" : "141", +            "name" : "Straßenbahn", +            "code" : "4", +            "destID" : "20009289", +            "realtime" : "1", +            "mtSubcode" : "0" +         }, +         "platformName" : "Gleis 4", +         "attrs" : [ +            { +               "name" : "AVMSTripID", +               "value" : "RB_EVAG.2069" +            } +         ], +         "mapName" : "MRCV", +         "platform" : "4" +      }, +      { +         "countdown" : "26", +         "operator" : { +            "code" : "13", +            "publicCode" : "", +            "name" : "Ruhrbahn Mülheim" +         }, +         "realtimeTripStatus" : "MONITORED", +         "dateTime" : { +            "weekday" : "7", +            "day" : "21", +            "month" : "9", +            "year" : "2024", +            "minute" : "0", +            "hour" : "19" +         }, +         "realDateTime" : { +            "minute" : "0", +            "hour" : "19", +            "weekday" : "7", +            "year" : "2024", +            "month" : "9", +            "day" : "21" +         }, +         "platformName" : "2", +         "attrs" : [ +            { +               "value" : "RB_EVAG.274647", +               "name" : "AVMSTripID" +            } +         ], +         "mapName" : "MRCV", +         "platform" : "2", +         "area" : "1", +         "servingLine" : { +            "delay" : "0", +            "motType" : "2", +            "direction" : "Mülheim Hauptbahnhof", +            "stateless" : "btm:13U18: :H:j24", +            "number" : "U18", +            "directionFrom" : "Essen Berliner Platz", +            "lineDisplay" : "line", +            "name" : "U-Bahn", +            "destID" : "20015225", +            "code" : "1", +            "realtime" : "1", +            "mtSubcode" : "0", +            "symbol" : "U18", +            "liErgRiProj" : { +               "project" : "j24", +               "network" : "btm", +               "supplement" : " ", +               "line" : "13U18", +               "gid" : "de:vrr:btm-13-U18:", +               "direction" : "H" +            }, +            "key" : "78" +         }, +         "stopName" : "Essen Berliner Platz", +         "y" : "5297149", +         "x" : "779713", +         "stopID" : "20009153", +         "nameWO" : "Berliner Platz" +      }, +      { +         "nameWO" : "Berliner Platz", +         "x" : "779748", +         "stopID" : "20009153", +         "y" : "5296977", +         "stopName" : "Essen Berliner Platz", +         "servingLine" : { +            "realtime" : "1", +            "mtSubcode" : "0", +            "code" : "4", +            "name" : "Straßenbahn", +            "destID" : "20009614", +            "key" : "755", +            "symbol" : "105", +            "liErgRiProj" : { +               "direction" : "R", +               "gid" : "de:vrr:eva-11-105:", +               "line" : "11105", +               "supplement" : " ", +               "network" : "eva", +               "project" : "j24" +            }, +            "motType" : "4", +            "direction" : "Essen Unterstr.", +            "delay" : "0", +            "number" : "105", +            "directionFrom" : "Essen Zeche Ludwig", +            "lineDisplay" : "line", +            "stateless" : "eva:11105: :R:j24" +         }, +         "area" : "2", +         "mapName" : "MRCV", +         "attrs" : [ +            { +               "value" : "RB_EVAG.2412", +               "name" : "AVMSTripID" +            } +         ], +         "platform" : "3", +         "platformName" : "Gleis 3", +         "realDateTime" : { +            "hour" : "19", +            "minute" : "0", +            "day" : "21", +            "month" : "9", +            "year" : "2024", +            "weekday" : "7" +         }, +         "dateTime" : { +            "weekday" : "7", +            "year" : "2024", +            "month" : "9", +            "day" : "21", +            "minute" : "0", +            "hour" : "19" +         }, +         "realtimeTripStatus" : "MONITORED", +         "countdown" : "26", +         "operator" : { +            "publicCode" : "EV-T", +            "code" : "11", +            "name" : "EVAG Strab" +         } +      }, +      { +         "countdown" : "30", +         "operator" : { +            "code" : "12", +            "publicCode" : "EV-B", +            "name" : "EVAG Bus" +         }, +         "dateTime" : { +            "weekday" : "7", +            "day" : "21", +            "year" : "2024", +            "month" : "9", +            "minute" : "4", +            "hour" : "19" +         }, +         "realtimeTripStatus" : "MONITORED", +         "realDateTime" : { +            "weekday" : "7", +            "day" : "21", +            "year" : "2024", +            "month" : "9", +            "minute" : "4", +            "hour" : "19" +         }, +         "platformName" : "1", +         "platform" : "1", +         "mapName" : "MRCV", +         "attrs" : [ +            { +               "name" : "AVMSTripID", +               "value" : "RB_EVAG.84908" +            } +         ], +         "area" : "4", +         "servingLine" : { +            "name" : "Niederflurbus", +            "destID" : "20009222", +            "code" : "5", +            "realtime" : "1", +            "mtSubcode" : "0", +            "liErgRiProj" : { +               "supplement" : " ", +               "project" : "j24", +               "network" : "eva", +               "direction" : "R", +               "line" : "12145", +               "gid" : "de:vrr:eva-12-145:" +            }, +            "symbol" : "145", +            "key" : "561", +            "delay" : "0", +            "motType" : "5", +            "direction" : "Essen Erbach", +            "stateless" : "eva:12145: :R:j24", +            "directionFrom" : "Essen Heisingen Baldeneysee", +            "number" : "145", +            "lineDisplay" : "line" +         }, +         "stopName" : "Essen Berliner Platz", +         "y" : "5297058", +         "stopID" : "20009153", +         "x" : "779634", +         "nameWO" : "Berliner Platz" +      }, +      { +         "nameWO" : "Berliner Platz", +         "stopID" : "20009153", +         "x" : "779748", +         "y" : "5296893", +         "stopName" : "Essen Berliner Platz", +         "servingLine" : { +            "liErgRiProj" : { +               "supplement" : " ", +               "project" : "j24", +               "network" : "eva", +               "direction" : "R", +               "line" : "12166", +               "gid" : "de:vrr:eva-12-166:" +            }, +            "symbol" : "166", +            "key" : "246", +            "name" : "Niederflurbus", +            "code" : "5", +            "destID" : "20009197", +            "realtime" : "1", +            "mtSubcode" : "0", +            "stateless" : "eva:12166: :R:j24", +            "directionFrom" : "Hattingen Märkische Str.", +            "number" : "166", +            "lineDisplay" : "line", +            "delay" : "0", +            "motType" : "5", +            "direction" : "Essen Dellwig Bahnhof" +         }, +         "area" : "3", +         "platform" : "4", +         "attrs" : [ +            { +               "name" : "AVMSTripID", +               "value" : "RB_EVAG.87911" +            } +         ], +         "mapName" : "MRCV", +         "platformName" : "4", +         "realDateTime" : { +            "weekday" : "7", +            "day" : "21", +            "year" : "2024", +            "month" : "9", +            "minute" : "4", +            "hour" : "19" +         }, +         "dateTime" : { +            "day" : "21", +            "year" : "2024", +            "month" : "9", +            "weekday" : "7", +            "hour" : "19", +            "minute" : "4" +         }, +         "realtimeTripStatus" : "MONITORED", +         "countdown" : "30", +         "operator" : { +            "publicCode" : "EV-B", +            "code" : "12", +            "name" : "EVAG Bus" +         } +      }, +      { +         "realDateTime" : { +            "minute" : "5", +            "hour" : "19", +            "weekday" : "7", +            "month" : "9", +            "year" : "2024", +            "day" : "21" +         }, +         "countdown" : "31", +         "operator" : { +            "publicCode" : "EV-T", +            "code" : "11", +            "name" : "EVAG Strab" +         }, +         "realtimeTripStatus" : "MONITORED", +         "dateTime" : { +            "minute" : "5", +            "hour" : "19", +            "weekday" : "7", +            "day" : "21", +            "year" : "2024", +            "month" : "9" +         }, +         "area" : "2", +         "servingLine" : { +            "mtSubcode" : "0", +            "realtime" : "1", +            "code" : "4", +            "name" : "Straßenbahn", +            "destID" : "20009254", +            "key" : "174", +            "symbol" : "106", +            "liErgRiProj" : { +               "line" : "11106", +               "gid" : "de:vrr:eva-11-106:", +               "direction" : "H", +               "project" : "j24", +               "network" : "eva", +               "supplement" : " " +            }, +            "direction" : "Essen Germaniaplatz", +            "motType" : "4", +            "delay" : "0", +            "lineDisplay" : "line", +            "number" : "106", +            "directionFrom" : "Essen Helenenstr.", +            "stateless" : "eva:11106: :H:j24" +         }, +         "platformName" : "Gleis 3", +         "platform" : "3", +         "attrs" : [ +            { +               "value" : "RB_EVAG.1395", +               "name" : "AVMSTripID" +            } +         ], +         "mapName" : "MRCV", +         "stopName" : "Essen Berliner Platz", +         "stopID" : "20009153", +         "x" : "779748", +         "nameWO" : "Berliner Platz", +         "y" : "5296977" +      }, +      { +         "x" : "779748", +         "stopID" : "20009153", +         "nameWO" : "Berliner Platz", +         "y" : "5296977", +         "stopName" : "Essen Berliner Platz", +         "area" : "2", +         "servingLine" : { +            "stateless" : "eva:11103: :R:j24", +            "lineDisplay" : "line", +            "number" : "103", +            "directionFrom" : "Essen Hauptbahnhof", +            "delay" : "0", +            "direction" : "Essen Wertstr.", +            "motType" : "4", +            "symbol" : "103", +            "liErgRiProj" : { +               "supplement" : " ", +               "project" : "j24", +               "network" : "eva", +               "direction" : "R", +               "gid" : "de:vrr:eva-11-103:", +               "line" : "11103" +            }, +            "key" : "524", +            "name" : "Straßenbahn", +            "destID" : "20009641", +            "code" : "4", +            "mtSubcode" : "0", +            "realtime" : "1" +         }, +         "platformName" : "Gleis 3", +         "platform" : "3", +         "mapName" : "MRCV", +         "attrs" : [ +            { +               "value" : "RB_EVAG.1956", +               "name" : "AVMSTripID" +            } +         ], +         "realDateTime" : { +            "day" : "21", +            "month" : "9", +            "year" : "2024", +            "weekday" : "7", +            "hour" : "19", +            "minute" : "5" +         }, +         "operator" : { +            "publicCode" : "EV-T", +            "name" : "EVAG Strab", +            "code" : "11" +         }, +         "countdown" : "31", +         "dateTime" : { +            "weekday" : "7", +            "month" : "9", +            "year" : "2024", +            "day" : "21", +            "minute" : "5", +            "hour" : "19" +         }, +         "realtimeTripStatus" : "MONITORED" +      }, +      { +         "stopName" : "Essen Berliner Platz", +         "stopID" : "20009153", +         "x" : "779713", +         "nameWO" : "Berliner Platz", +         "y" : "5297149", +         "realDateTime" : { +            "minute" : "5", +            "hour" : "19", +            "weekday" : "7", +            "year" : "2024", +            "month" : "9", +            "day" : "21" +         }, +         "operator" : { +            "publicCode" : "EV-U", +            "code" : "10", +            "name" : "EVAG U-Bahn" +         }, +         "countdown" : "31", +         "realtimeTripStatus" : "MONITORED", +         "dateTime" : { +            "minute" : "5", +            "hour" : "19", +            "weekday" : "7", +            "month" : "9", +            "year" : "2024", +            "day" : "21" +         }, +         "area" : "1", +         "servingLine" : { +            "code" : "1", +            "name" : "U-Bahn", +            "destID" : "20009447", +            "mtSubcode" : "0", +            "realtime" : "1", +            "liErgRiProj" : { +               "line" : "10U17", +               "gid" : "de:vrr:eva-10-U17:", +               "direction" : "H", +               "project" : "j24", +               "network" : "eva", +               "supplement" : " " +            }, +            "symbol" : "U17", +            "key" : "114", +            "delay" : "0", +            "direction" : "Essen Margarethenhöhe", +            "motType" : "2", +            "stateless" : "eva:10U17: :H:j24", +            "lineDisplay" : "line", +            "directionFrom" : "Essen Karlsplatz", +            "number" : "U17" +         }, +         "platformName" : "2", +         "mapName" : "MRCV", +         "attrs" : [ +            { +               "value" : "RB_EVAG.274834", +               "name" : "AVMSTripID" +            } +         ], +         "platform" : "2" +      }, +      { +         "stopName" : "Essen Berliner Platz", +         "x" : "779692", +         "stopID" : "20009153", +         "nameWO" : "Berliner Platz", +         "y" : "5297057", +         "realDateTime" : { +            "hour" : "19", +            "minute" : "5", +            "day" : "21", +            "year" : "2024", +            "month" : "9", +            "weekday" : "7" +         }, +         "countdown" : "31", +         "operator" : { +            "code" : "11", +            "publicCode" : "EV-T", +            "name" : "EVAG Strab" +         }, +         "realtimeTripStatus" : "MONITORED", +         "dateTime" : { +            "minute" : "5", +            "hour" : "19", +            "weekday" : "7", +            "year" : "2024", +            "month" : "9", +            "day" : "21" +         }, +         "area" : "2", +         "servingLine" : { +            "key" : "162", +            "symbol" : "101", +            "liErgRiProj" : { +               "supplement" : " ", +               "network" : "eva", +               "project" : "j24", +               "direction" : "H", +               "gid" : "de:vrr:eva-11-101:", +               "line" : "11101" +            }, +            "realtime" : "1", +            "mtSubcode" : "0", +            "name" : "Straßenbahn", +            "code" : "4", +            "destID" : "20009306", +            "number" : "101", +            "directionFrom" : "Essen Philippusstift", +            "lineDisplay" : "line", +            "stateless" : "eva:11101: :H:j24", +            "motType" : "4", +            "direction" : "Essen Helenenstr.", +            "delay" : "0" +         }, +         "platformName" : "Gleis 4", +         "mapName" : "MRCV", +         "attrs" : [ +            { +               "value" : "RB_EVAG.3224", +               "name" : "AVMSTripID" +            } +         ], +         "platform" : "4" +      }, +      { +         "platformName" : "1", +         "platform" : "1", +         "mapName" : "MRCV", +         "attrs" : [ +            { +               "name" : "AVMSTripID", +               "value" : "RB_EVAG.274465" +            } +         ], +         "area" : "1", +         "servingLine" : { +            "key" : "714", +            "symbol" : "U11", +            "liErgRiProj" : { +               "supplement" : " ", +               "project" : "j24", +               "network" : "eva", +               "direction" : "R", +               "gid" : "de:vrr:eva-10-U11:", +               "line" : "10U11" +            }, +            "mtSubcode" : "0", +            "realtime" : "1", +            "code" : "1", +            "name" : "U-Bahn", +            "destID" : "20005579", +            "lineDisplay" : "line", +            "number" : "U11", +            "directionFrom" : "Essen Messe W.-Süd/Gruga", +            "stateless" : "eva:10U11: :R:j24", +            "direction" : "Gelsenkirchen Buerer Str.", +            "motType" : "2", +            "delay" : "0" +         }, +         "operator" : { +            "code" : "10", +            "publicCode" : "EV-U", +            "name" : "EVAG U-Bahn" +         }, +         "countdown" : "32", +         "realtimeTripStatus" : "MONITORED", +         "dateTime" : { +            "hour" : "19", +            "minute" : "6", +            "day" : "21", +            "month" : "9", +            "year" : "2024", +            "weekday" : "7" +         }, +         "realDateTime" : { +            "hour" : "19", +            "minute" : "6", +            "day" : "21", +            "month" : "9", +            "year" : "2024", +            "weekday" : "7" +         }, +         "y" : "5297142", +         "x" : "779741", +         "stopID" : "20009153", +         "nameWO" : "Berliner Platz", +         "stopName" : "Essen Berliner Platz" +      }, +      { +         "y" : "5297057", +         "stopID" : "20009153", +         "x" : "779692", +         "nameWO" : "Berliner Platz", +         "stopName" : "Essen Berliner Platz", +         "platformName" : "Gleis 4", +         "attrs" : [ +            { +               "value" : "RB_EVAG.2735", +               "name" : "AVMSTripID" +            } +         ], +         "mapName" : "MRCV", +         "platform" : "4", +         "area" : "2", +         "servingLine" : { +            "motType" : "4", +            "direction" : "Essen Zeche Ludwig", +            "delay" : "0", +            "directionFrom" : "Essen Unterstr.", +            "number" : "105", +            "lineDisplay" : "line", +            "stateless" : "eva:11105: :H:j24", +            "realtime" : "1", +            "mtSubcode" : "0", +            "destID" : "20009665", +            "code" : "4", +            "name" : "Straßenbahn", +            "key" : "372", +            "liErgRiProj" : { +               "direction" : "H", +               "line" : "11105", +               "gid" : "de:vrr:eva-11-105:", +               "supplement" : " ", +               "network" : "eva", +               "project" : "j24" +            }, +            "symbol" : "105" +         }, +         "countdown" : "34", +         "operator" : { +            "publicCode" : "EV-T", +            "code" : "11", +            "name" : "EVAG Strab" +         }, +         "realtimeTripStatus" : "MONITORED", +         "dateTime" : { +            "weekday" : "7", +            "day" : "21", +            "month" : "9", +            "year" : "2024", +            "minute" : "8", +            "hour" : "19" +         }, +         "realDateTime" : { +            "minute" : "8", +            "hour" : "19", +            "weekday" : "7", +            "day" : "21", +            "month" : "9", +            "year" : "2024" +         } +      } +   ], +   "arr" : { +      "points" : null, +      "input" : { +         "input" : "" +      } +   }, +   "dateRange" : [ +      { +         "month" : "09", +         "year" : "2024", +         "day" : "21", +         "weekday" : "7" +      }, +      { +         "year" : "2024", +         "month" : "09", +         "day" : "22", +         "weekday" : "1" +      }, +      { +         "day" : "23", +         "year" : "2024", +         "month" : "09", +         "weekday" : "2" +      }, +      { +         "day" : "24", +         "month" : "09", +         "year" : "2024", +         "weekday" : "3" +      }, +      { +         "weekday" : "4", +         "day" : "25", +         "year" : "2024", +         "month" : "09" +      }, +      { +         "weekday" : "5", +         "day" : "26", +         "year" : "2024", +         "month" : "09" +      }, +      { +         "month" : "09", +         "year" : "2024", +         "day" : "27", +         "weekday" : "6" +      }, +      { +         "year" : "2024", +         "month" : "09", +         "day" : "28", +         "weekday" : "7" +      }, +      { +         "month" : "09", +         "year" : "2024", +         "day" : "29", +         "weekday" : "1" +      }, +      { +         "month" : "09", +         "year" : "2024", +         "day" : "30", +         "weekday" : "2" +      }, +      { +         "weekday" : "3", +         "day" : "01", +         "year" : "2024", +         "month" : "10" +      }, +      { +         "day" : "02", +         "month" : "10", +         "year" : "2024", +         "weekday" : "4" +      }, +      { +         "weekday" : "5", +         "year" : "2024", +         "month" : "10", +         "day" : "03" +      }, +      { +         "weekday" : "6", +         "day" : "04", +         "year" : "2024", +         "month" : "10" +      }, +      { +         "month" : "10", +         "year" : "2024", +         "day" : "05", +         "weekday" : "7" +      } +   ], +   "dm" : { +      "points" : { +         "point" : { +            "stateless" : "20009153", +            "infos" : [ +               { +                  "infoText" : { +                     "smsText" : "Die Fahrtreppe (Eingang D (abwärts) von Straßenebene zur Verteilerebene) an der Haltestelle Essen Berliner Platz ist ausser Betrieb.", +                     "additionalText" : "Die beschriebenen Änderungen sind in der elektronischen Fahrplanauskunft (EFA) <b>nicht</b> berücksichtigt.", +                     "htmlText" : "", +                     "subtitle" : "Haltestelle Essen Berliner Platz: Die Fahrtreppe ist nicht verfügbar. (Eingang D (abwaerts) von Strassenebene zur Verteilerebene)", +                     "wmlText" : "Die Fahrtreppe (Eingang D (abwärts) von Straßenebene zur Verteilerebene) an der Haltestelle Essen Berliner Platz ist ausser Betrieb.", +                     "content" : "Vom 29.12. 07:46 Uhr bis voraussichtlich 21.09. 23:59 Uhr.", +                     "subject" : "", +                     "speechText" : "" +                  }, +                  "paramList" : [ +                     { +                        "type" : "addInfoParam", +                        "name" : "infoType", +                        "edit" : "0", +                        "value" : "stopInfo" +                     }, +                     { +                        "type" : "system", +                        "name" : "infoID", +                        "edit" : "0", +                        "value" : "20240514915345" +                     }, +                     { +                        "type" : "system", +                        "name" : "seqID", +                        "edit" : "0", +                        "value" : "150" +                     }, +                     { +                        "name" : "incidentDateTime", +                        "type" : "system", +                        "value" : "29/12/2023 07:46 - 22/09/2024 00:00", +                        "edit" : "0" +                     } +                  ], +                  "infoLinkText" : "Haltestelle Essen Berliner Platz: Die Fahrtreppe ist nicht verfügbar. (Eingang D (abwaerts) von Strassenebene zur Verteilerebene)", +                  "infoLinkURL" : "http://217.70.161.100:80/cm/XSLT_CM_SHOWADDINFO_REQUEST?infoID=20240514915345&seqID=150" +               }, +               { +                  "paramList" : [ +                     { +                        "name" : "infoType", +                        "type" : "addInfoParam", +                        "edit" : "0", +                        "value" : "stopInfo" +                     }, +                     { +                        "type" : "system", +                        "name" : "infoID", +                        "edit" : "0", +                        "value" : "20240514915357" +                     }, +                     { +                        "value" : "132", +                        "edit" : "0", +                        "name" : "seqID", +                        "type" : "system" +                     }, +                     { +                        "edit" : "0", +                        "value" : "13/02/2024 08:13 - 22/09/2024 00:00", +                        "type" : "system", +                        "name" : "incidentDateTime" +                     } +                  ], +                  "infoText" : { +                     "content" : "Vom 13.02. 08:13 Uhr bis voraussichtlich 21.09. 23:59 Uhr.", +                     "subject" : "", +                     "speechText" : "", +                     "smsText" : "Die Fahrtreppe (Verteilerebene (abwärts) zum Bahnsteig -2 Ebene) an der Haltestelle Essen Berliner Platz ist ausser Betrieb.", +                     "htmlText" : "", +                     "additionalText" : "Die beschriebenen Änderungen sind in der elektronischen Fahrplanauskunft (EFA) <b>nicht</b> berücksichtigt.", +                     "subtitle" : "Haltestelle Essen Berliner Platz: Die Fahrtreppe ist nicht verfügbar. (Verteilerebene (abwaerts) zum Bahnsteig -2 Ebene)", +                     "wmlText" : "Die Fahrtreppe (Verteilerebene (abwärts) zum Bahnsteig -2 Ebene) an der Haltestelle Essen Berliner Platz ist ausser Betrieb." +                  }, +                  "infoLinkURL" : "http://217.70.161.100:80/cm/XSLT_CM_SHOWADDINFO_REQUEST?infoID=20240514915357&seqID=132", +                  "infoLinkText" : "Haltestelle Essen Berliner Platz: Die Fahrtreppe ist nicht verfügbar. (Verteilerebene (abwaerts) zum Bahnsteig -2 Ebene)" +               } +            ], +            "tariffArea" : "", +            "ref" : { +               "id" : "20009153", +               "place" : "Essen", +               "gid" : "de:05113:9153", +               "coords" : "779595.00000,5297077.00000", +               "placeID" : "18", +               "omc" : "5113000" +            }, +            "tariffLayer1" : "", +            "type" : "stop", +            "name" : "Essen, Berliner Platz", +            "tariffLayer2" : "", +            "tariffAreaName" : "", +            "usage" : "dm" +         } +      }, +      "input" : { +         "input" : "Berliner Platz" +      } +   }, +   "servingLines" : { +      "lines" : [ +         { +            "mode" : { +               "diva" : { +                  "isSTT" : "1", +                  "isROP" : "1", +                  "vF" : "20240601", +                  "dir" : "H", +                  "opPublicCode" : "EV-U", +                  "project" : "j24", +                  "branch" : "10", +                  "stateless" : "eva:10U11: :H:j24", +                  "operator" : "EVAG U-Bahn", +                  "network" : "eva", +                  "lineDisplay" : "line", +                  "globalId" : "de:vrr:eva-10-U11:", +                  "supplement" : " ", +                  "attrs" : [], +                  "opCode" : "10", +                  "line" : "10U11", +                  "vTo" : "20250228", +                  "tripCode" : "0" +               }, +               "product" : "U-Bahn", +               "type" : "2", +               "destID" : "20009270", +               "name" : "U-Bahn U11", +               "code" : "1", +               "number" : "U11", +               "productId" : "0", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "destination" : "Essen Messe W.-Süd/Gruga", +               "desc" : "GE-Buerer Str. - E-Karnap - Altenessen - Essen Hbf - Rüttenscheid - Messe/Gruga" +            }, +            "index" : "2:0" +         }, +         { +            "mode" : { +               "productId" : "0", +               "number" : "U11", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "destination" : "Gelsenkirchen Buerer Str.", +               "desc" : "Messe/Gruga - Rüttenscheid - Essen Hbf - Altenessen - E-Karnap - GE-Buerer Str.", +               "diva" : { +                  "vTo" : "20250228", +                  "tripCode" : "0", +                  "opCode" : "10", +                  "attrs" : [], +                  "line" : "10U11", +                  "globalId" : "de:vrr:eva-10-U11:", +                  "lineDisplay" : "line", +                  "supplement" : " ", +                  "branch" : "10", +                  "project" : "j24", +                  "operator" : "EVAG U-Bahn", +                  "network" : "eva", +                  "stateless" : "eva:10U11: :R:j24", +                  "opPublicCode" : "EV-U", +                  "dir" : "R", +                  "vF" : "20240601", +                  "isROP" : "1", +                  "isSTT" : "1" +               }, +               "product" : "U-Bahn", +               "type" : "2", +               "destID" : "20005579", +               "name" : "U-Bahn U11", +               "code" : "1" +            }, +            "index" : "2:1" +         }, +         { +            "mode" : { +               "product" : "U-Bahn", +               "diva" : { +                  "vF" : "20240601", +                  "dir" : "H", +                  "opPublicCode" : "EV-U", +                  "isSTT" : "1", +                  "isROP" : "1", +                  "opCode" : "10", +                  "attrs" : [], +                  "line" : "10U17", +                  "vTo" : "20250228", +                  "tripCode" : "0", +                  "branch" : "10", +                  "project" : "j24", +                  "network" : "eva", +                  "operator" : "EVAG U-Bahn", +                  "stateless" : "eva:10U17: :H:j24", +                  "globalId" : "de:vrr:eva-10-U17:", +                  "lineDisplay" : "line", +                  "supplement" : " " +               }, +               "name" : "U-Bahn U17", +               "destID" : "20009447", +               "code" : "1", +               "type" : "2", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "number" : "U17", +               "productId" : "0", +               "desc" : "Altenessen - Essen Hbf - Holsterhausen - Margarethenhöhe", +               "destination" : "Essen Margarethenhöhe" +            }, +            "index" : "2:2" +         }, +         { +            "mode" : { +               "product" : "U-Bahn", +               "diva" : { +                  "dir" : "R", +                  "opPublicCode" : "EV-U", +                  "vF" : "20240601", +                  "isROP" : "1", +                  "isSTT" : "1", +                  "vTo" : "20250228", +                  "tripCode" : "0", +                  "opCode" : "10", +                  "attrs" : [], +                  "line" : "10U17", +                  "globalId" : "de:vrr:eva-10-U17:", +                  "lineDisplay" : "line", +                  "supplement" : " ", +                  "branch" : "10", +                  "project" : "j24", +                  "operator" : "EVAG U-Bahn", +                  "network" : "eva", +                  "stateless" : "eva:10U17: :R:j24" +               }, +               "code" : "1", +               "destID" : "20009370", +               "name" : "U-Bahn U17", +               "type" : "2", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "number" : "U17", +               "productId" : "0", +               "desc" : "Margarethenhöhe - Holsterhausen - Essen Hbf - Altenessen", +               "destination" : "Essen Karlsplatz" +            }, +            "index" : "2:3" +         }, +         { +            "index" : "2:4", +            "mode" : { +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "productId" : "0", +               "number" : "U18", +               "desc" : "E-Berliner Platz  - Essen Hbf - MH-Rhein-Ruhr-Zentrum - Mülheim Hbf", +               "destination" : "Mülheim Hauptbahnhof", +               "product" : "U-Bahn", +               "diva" : { +                  "isSTT" : "1", +                  "isROP" : "1", +                  "vF" : "20240601", +                  "dir" : "H", +                  "opPublicCode" : "EV-U", +                  "project" : "j24", +                  "branch" : "10", +                  "stateless" : "eva:10U18: :H:j24", +                  "network" : "eva", +                  "operator" : "EVAG U-Bahn", +                  "lineDisplay" : "line", +                  "globalId" : "de:vrr:eva-10-U18:", +                  "supplement" : " ", +                  "attrs" : [], +                  "opCode" : "10", +                  "line" : "10U18", +                  "tripCode" : "0", +                  "vTo" : "20250228" +               }, +               "name" : "U-Bahn U18", +               "destID" : "20015225", +               "code" : "1", +               "type" : "2" +            } +         }, +         { +            "index" : "2:5", +            "mode" : { +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "productId" : "0", +               "number" : "U18", +               "desc" : "Berliner Platz  - Essen Hbf - MH-Rhein-Ruhr-Zentrum - Mülheim Hbf", +               "destination" : "Mülheim Hauptbahnhof", +               "product" : "U-Bahn", +               "diva" : { +                  "branch" : "13", +                  "project" : "j24", +                  "operator" : "Ruhrbahn Mülheim", +                  "network" : "btm", +                  "stateless" : "btm:13U18: :H:j24", +                  "globalId" : "de:vrr:btm-13-U18:", +                  "lineDisplay" : "line", +                  "supplement" : " ", +                  "opCode" : "13", +                  "attrs" : [], +                  "line" : "13U18", +                  "vTo" : "20250228", +                  "tripCode" : "0", +                  "vF" : "20240601", +                  "dir" : "H" +               }, +               "destID" : "20015225", +               "name" : "U-Bahn U18", +               "code" : "1", +               "type" : "2" +            } +         }, +         { +            "index" : "4:0", +            "mode" : { +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "number" : "101", +               "productId" : "1", +               "desc" : "Borbeck - Helenenstr. - Essen Hbf Rüttenscheid - Helenenstr.", +               "destination" : "Essen Helenenstr.", +               "product" : "Straßenbahn", +               "diva" : { +                  "vF" : "20240601", +                  "dir" : "H", +                  "opPublicCode" : "EV-T", +                  "isSTT" : "1", +                  "isROP" : "1", +                  "opCode" : "11", +                  "attrs" : [], +                  "line" : "11101", +                  "vTo" : "20250228", +                  "tripCode" : "0", +                  "branch" : "11", +                  "project" : "j24", +                  "operator" : "EVAG Strab", +                  "network" : "eva", +                  "stateless" : "eva:11101: :H:j24", +                  "globalId" : "de:vrr:eva-11-101:", +                  "lineDisplay" : "line", +                  "supplement" : " " +               }, +               "name" : "Straßenbahn 101", +               "destID" : "20009306", +               "code" : "4", +               "type" : "4" +            } +         }, +         { +            "index" : "4:1", +            "mode" : { +               "product" : "Straßenbahn", +               "diva" : { +                  "network" : "eva", +                  "operator" : "EVAG Strab", +                  "stateless" : "eva:11103: :H:j24", +                  "branch" : "11", +                  "project" : "j24", +                  "supplement" : " ", +                  "globalId" : "de:vrr:eva-11-103:", +                  "lineDisplay" : "line", +                  "line" : "11103", +                  "opCode" : "11", +                  "attrs" : [], +                  "tripCode" : "0", +                  "vTo" : "20250228", +                  "vF" : "20240601", +                  "dir" : "H", +                  "opPublicCode" : "EV-T" +               }, +               "code" : "4", +               "destID" : "20009582", +               "name" : "Straßenbahn 103", +               "type" : "4", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "productId" : "1", +               "number" : "103", +               "desc" : "Dellwig - Borbeck - Altendorf - Rathaus Essen - Essen Hbf - Steele", +               "destination" : "Essen Steele S" +            } +         }, +         { +            "mode" : { +               "diva" : { +                  "vTo" : "20250228", +                  "tripCode" : "0", +                  "attrs" : [], +                  "opCode" : "11", +                  "line" : "11103", +                  "lineDisplay" : "line", +                  "globalId" : "de:vrr:eva-11-103:", +                  "supplement" : " ", +                  "project" : "j24", +                  "branch" : "11", +                  "stateless" : "eva:11103: :R:j24", +                  "operator" : "EVAG Strab", +                  "network" : "eva", +                  "opPublicCode" : "EV-T", +                  "dir" : "R", +                  "vF" : "20240601" +               }, +               "product" : "Straßenbahn", +               "type" : "4", +               "destID" : "20009641", +               "code" : "4", +               "name" : "Straßenbahn 103", +               "number" : "103", +               "productId" : "1", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "destination" : "Essen Wertstr.", +               "desc" : "Steele - Essen Hbf - Rathaus Essen - Altendorf - Borbeck - Dellwig" +            }, +            "index" : "4:2" +         }, +         { +            "mode" : { +               "product" : "Straßenbahn", +               "diva" : { +                  "supplement" : " ", +                  "globalId" : "de:vrr:eva-11-105:", +                  "lineDisplay" : "line", +                  "operator" : "EVAG Strab", +                  "network" : "eva", +                  "stateless" : "eva:11105: :H:j24", +                  "branch" : "11", +                  "project" : "j24", +                  "vTo" : "20250228", +                  "tripCode" : "0", +                  "line" : "11105", +                  "opCode" : "11", +                  "attrs" : [], +                  "isROP" : "1", +                  "isSTT" : "1", +                  "dir" : "H", +                  "opPublicCode" : "EV-T", +                  "vF" : "20240601" +               }, +               "name" : "Straßenbahn 105", +               "destID" : "20009665", +               "code" : "4", +               "type" : "4", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "productId" : "1", +               "number" : "105", +               "desc" : "Frintrop - Altendorf - Essen Hbf - Bergerhausen - Rellinghausen", +               "destination" : "Essen Zeche Ludwig" +            }, +            "index" : "4:3" +         }, +         { +            "mode" : { +               "product" : "Straßenbahn", +               "diva" : { +                  "vTo" : "20250228", +                  "tripCode" : "0", +                  "opCode" : "11", +                  "attrs" : [], +                  "line" : "11105", +                  "globalId" : "de:vrr:eva-11-105:", +                  "lineDisplay" : "line", +                  "supplement" : " ", +                  "branch" : "11", +                  "project" : "j24", +                  "operator" : "EVAG Strab", +                  "network" : "eva", +                  "stateless" : "eva:11105: :R:j24", +                  "dir" : "R", +                  "opPublicCode" : "EV-T", +                  "vF" : "20240601", +                  "isROP" : "1", +                  "isSTT" : "1" +               }, +               "destID" : "20009614", +               "name" : "Straßenbahn 105", +               "code" : "4", +               "type" : "4", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "number" : "105", +               "productId" : "1", +               "desc" : "Rellinghausen - Bergerhausen - Essen Hbf - Altendorf - Frintrop", +               "destination" : "Essen Unterstr." +            }, +            "index" : "4:4" +         }, +         { +            "mode" : { +               "desc" : "Helenenstr. - Rüttenscheid - Essen Hbf - Helenenstr. - Borbeck", +               "destination" : "Essen Germaniaplatz", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "number" : "106", +               "productId" : "1", +               "destID" : "20009254", +               "name" : "Straßenbahn 106", +               "code" : "4", +               "type" : "4", +               "product" : "Straßenbahn", +               "diva" : { +                  "isSTT" : "1", +                  "isROP" : "1", +                  "vF" : "20240601", +                  "dir" : "H", +                  "opPublicCode" : "EV-T", +                  "project" : "j24", +                  "branch" : "11", +                  "stateless" : "eva:11106: :H:j24", +                  "operator" : "EVAG Strab", +                  "network" : "eva", +                  "lineDisplay" : "line", +                  "globalId" : "de:vrr:eva-11-106:", +                  "supplement" : " ", +                  "attrs" : [], +                  "opCode" : "11", +                  "line" : "11106", +                  "tripCode" : "0", +                  "vTo" : "20250228" +               } +            }, +            "index" : "4:5" +         }, +         { +            "mode" : { +               "product" : "Straßenbahn", +               "diva" : { +                  "network" : "eva", +                  "operator" : "EVAG Strab", +                  "stateless" : "eva:11109: :H:j24", +                  "branch" : "11", +                  "project" : "j24", +                  "supplement" : " ", +                  "globalId" : "de:vrr:eva-11-109:", +                  "lineDisplay" : "line", +                  "line" : "11109", +                  "opCode" : "11", +                  "attrs" : [], +                  "vTo" : "20250228", +                  "tripCode" : "0", +                  "isSTT" : "1", +                  "isROP" : "1", +                  "vF" : "20240601", +                  "opPublicCode" : "EV-T", +                  "dir" : "H" +               }, +               "destID" : "20009582", +               "code" : "4", +               "name" : "Straßenbahn 109", +               "type" : "4", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "number" : "109", +               "productId" : "1", +               "desc" : "Frohnhausen - Holsterhausen - Rathaus Essen - Steele", +               "destination" : "Essen Steele S" +            }, +            "index" : "4:6" +         }, +         { +            "mode" : { +               "desc" : "Steele - Rathaus Essen - Holsterhausen - Frohnhausen", +               "destination" : "Frohnhausen Breilsort", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "number" : "109", +               "productId" : "1", +               "name" : "Straßenbahn 109", +               "destID" : "20009243", +               "code" : "4", +               "type" : "4", +               "product" : "Straßenbahn", +               "diva" : { +                  "opCode" : "11", +                  "attrs" : [], +                  "line" : "11109", +                  "tripCode" : "0", +                  "vTo" : "20250228", +                  "branch" : "11", +                  "project" : "j24", +                  "operator" : "EVAG Strab", +                  "network" : "eva", +                  "stateless" : "eva:11109: :R:j24", +                  "globalId" : "de:vrr:eva-11-109:", +                  "lineDisplay" : "line", +                  "supplement" : " ", +                  "vF" : "20240601", +                  "opPublicCode" : "EV-T", +                  "dir" : "R", +                  "isSTT" : "1", +                  "isROP" : "1" +               } +            }, +            "index" : "4:7" +         }, +         { +            "index" : "5:0", +            "mode" : { +               "diva" : { +                  "isROP" : "1", +                  "isSTT" : "1", +                  "dir" : "H", +                  "opPublicCode" : "EV-B", +                  "vF" : "20240601", +                  "globalId" : "de:vrr:eva-12-145:", +                  "lineDisplay" : "line", +                  "supplement" : " ", +                  "branch" : "12", +                  "project" : "j24", +                  "network" : "eva", +                  "operator" : "EVAG Bus", +                  "stateless" : "eva:12145: :H:j24", +                  "vTo" : "20250228", +                  "tripCode" : "0", +                  "opCode" : "12", +                  "attrs" : [], +                  "line" : "12145" +               }, +               "product" : "Niederflurbus", +               "type" : "5", +               "name" : "Niederflurbus 145", +               "destID" : "20009302", +               "code" : "5", +               "productId" : "13", +               "number" : "145", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "destination" : "Essen Heisingen Baldeneysee", +               "desc" : "Haarzopf - Essen Hbf - Stadtwald - Heisingen" +            } +         }, +         { +            "mode" : { +               "code" : "5", +               "destID" : "20009222", +               "name" : "Niederflurbus 145", +               "type" : "5", +               "product" : "Niederflurbus", +               "diva" : { +                  "isROP" : "1", +                  "isSTT" : "1", +                  "opPublicCode" : "EV-B", +                  "dir" : "R", +                  "vF" : "20240601", +                  "lineDisplay" : "line", +                  "globalId" : "de:vrr:eva-12-145:", +                  "supplement" : " ", +                  "project" : "j24", +                  "branch" : "12", +                  "stateless" : "eva:12145: :R:j24", +                  "operator" : "EVAG Bus", +                  "network" : "eva", +                  "vTo" : "20250228", +                  "tripCode" : "0", +                  "attrs" : [], +                  "opCode" : "12", +                  "line" : "12145" +               }, +               "desc" : "Heisingen - Stadtwald - Essen Hbf - Haarzopf", +               "destination" : "Essen Erbach", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "number" : "145", +               "productId" : "13" +            }, +            "index" : "5:1" +         }, +         { +            "mode" : { +               "productId" : "13", +               "number" : "166", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "destination" : "E-Burgaltendorf Burgruine", +               "desc" : "Dellwig - Essen Hbf - Steele - E-Burgaltendorf - HAT-Niederwenigern", +               "diva" : { +                  "globalId" : "de:vrr:eva-12-166:", +                  "lineDisplay" : "line", +                  "supplement" : " ", +                  "branch" : "12", +                  "project" : "j24", +                  "network" : "eva", +                  "operator" : "EVAG Bus", +                  "stateless" : "eva:12166: :H:j24", +                  "tripCode" : "0", +                  "vTo" : "20250228", +                  "opCode" : "12", +                  "attrs" : [], +                  "line" : "12166", +                  "isROP" : "1", +                  "isSTT" : "1", +                  "dir" : "H", +                  "opPublicCode" : "EV-B", +                  "vF" : "20240601" +               }, +               "product" : "Niederflurbus", +               "type" : "5", +               "destID" : "20009182", +               "name" : "Niederflurbus 166", +               "code" : "5" +            }, +            "index" : "5:2" +         }, +         { +            "mode" : { +               "number" : "166", +               "productId" : "13", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "destination" : "Essen Dellwig Bahnhof", +               "desc" : "HAT-Niederwenigern  - E-Burgaltendorf - Steele - Essen Hbf - Dellwig", +               "diva" : { +                  "dir" : "R", +                  "opPublicCode" : "EV-B", +                  "vF" : "20240601", +                  "isROP" : "1", +                  "isSTT" : "1", +                  "vTo" : "20250228", +                  "tripCode" : "0", +                  "attrs" : [], +                  "opCode" : "12", +                  "line" : "12166", +                  "lineDisplay" : "line", +                  "globalId" : "de:vrr:eva-12-166:", +                  "supplement" : " ", +                  "project" : "j24", +                  "branch" : "12", +                  "stateless" : "eva:12166: :R:j24", +                  "operator" : "EVAG Bus", +                  "network" : "eva" +               }, +               "product" : "Niederflurbus", +               "type" : "5", +               "destID" : "20009197", +               "code" : "5", +               "name" : "Niederflurbus 166" +            }, +            "index" : "5:3" +         }, +         { +            "mode" : { +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "productId" : "13", +               "number" : "NE10", +               "desc" : "Essen Hbf - Frohnhausen - Haarzopf", +               "destination" : "Essen Erbach", +               "product" : "Niederflurbus", +               "diva" : { +                  "line" : "12M10", +                  "opCode" : "12", +                  "attrs" : [], +                  "vTo" : "20250228", +                  "tripCode" : "0", +                  "network" : "eva", +                  "operator" : "EVAG Bus", +                  "stateless" : "eva:12M10: :H:j24", +                  "branch" : "12", +                  "project" : "j24", +                  "supplement" : " ", +                  "globalId" : "de:vrr:eva-12-M10:", +                  "lineDisplay" : "line", +                  "vF" : "20240601", +                  "dir" : "H", +                  "opPublicCode" : "EV-B", +                  "isSTT" : "1", +                  "isROP" : "1" +               }, +               "name" : "Niederflurbus NE10", +               "destID" : "20009222", +               "code" : "5", +               "type" : "5" +            }, +            "index" : "5:4" +         }, +         { +            "index" : "5:5", +            "mode" : { +               "type" : "5", +               "code" : "5", +               "destID" : "20009289", +               "name" : "Niederflurbus NE10", +               "diva" : { +                  "lineDisplay" : "line", +                  "globalId" : "de:vrr:eva-12-M10:", +                  "supplement" : " ", +                  "project" : "j24", +                  "branch" : "12", +                  "stateless" : "eva:12M10: :R:j24", +                  "operator" : "EVAG Bus", +                  "network" : "eva", +                  "vTo" : "20250228", +                  "tripCode" : "0", +                  "attrs" : [], +                  "opCode" : "12", +                  "line" : "12M10", +                  "isROP" : "1", +                  "isSTT" : "1", +                  "opPublicCode" : "EV-B", +                  "dir" : "R", +                  "vF" : "20240601" +               }, +               "product" : "Niederflurbus", +               "destination" : "Essen Hauptbahnhof", +               "desc" : "Haarzopf - Frohnhausen - Essen Hbf", +               "number" : "NE10", +               "productId" : "13", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)" +            } +         }, +         { +            "index" : "5:6", +            "mode" : { +               "code" : "5", +               "destID" : "20014022", +               "name" : "Niederflurbus NE11", +               "type" : "5", +               "product" : "Niederflurbus", +               "diva" : { +                  "vTo" : "20250228", +                  "tripCode" : "0", +                  "line" : "12M11", +                  "attrs" : [], +                  "opCode" : "12", +                  "supplement" : " ", +                  "lineDisplay" : "line", +                  "globalId" : "de:vrr:eva-12-M11:", +                  "stateless" : "eva:12M11: :H:j24", +                  "operator" : "EVAG Bus", +                  "network" : "eva", +                  "project" : "j24", +                  "branch" : "12", +                  "dir" : "H", +                  "opPublicCode" : "EV-B", +                  "vF" : "20240601", +                  "isROP" : "1", +                  "isSTT" : "1" +               }, +               "desc" : "Essen Hbf - Altendorf - Essen Frintrop - Oberhausen", +               "destination" : "Oberhausen Hbf", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "number" : "NE11", +               "productId" : "13" +            } +         }, +         { +            "index" : "5:7", +            "mode" : { +               "type" : "5", +               "destID" : "20009289", +               "code" : "5", +               "name" : "Niederflurbus NE11", +               "diva" : { +                  "vF" : "20240601", +                  "dir" : "R", +                  "opPublicCode" : "EV-B", +                  "isSTT" : "1", +                  "isROP" : "1", +                  "line" : "12M11", +                  "attrs" : [], +                  "opCode" : "12", +                  "tripCode" : "0", +                  "vTo" : "20250228", +                  "stateless" : "eva:12M11: :R:j24", +                  "network" : "eva", +                  "operator" : "EVAG Bus", +                  "project" : "j24", +                  "branch" : "12", +                  "supplement" : " ", +                  "lineDisplay" : "line", +                  "globalId" : "de:vrr:eva-12-M11:" +               }, +               "product" : "Niederflurbus", +               "destination" : "Essen Hauptbahnhof", +               "desc" : "Oberhausen - Essen Frintrop - Altendorf - Essen Hbf", +               "productId" : "13", +               "number" : "NE11", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)" +            } +         }, +         { +            "index" : "5:8", +            "mode" : { +               "productId" : "13", +               "number" : "NE12", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "destination" : "Essen Borbeck Bf", +               "desc" : "Essen Hbf - Altendorf - Bergeborbeck - Dellwig - Borbeck", +               "diva" : { +                  "isROP" : "1", +                  "isSTT" : "1", +                  "dir" : "H", +                  "opPublicCode" : "EV-B", +                  "vF" : "20240601", +                  "lineDisplay" : "line", +                  "globalId" : "de:vrr:eva-12-M12:", +                  "supplement" : " ", +                  "project" : "j24", +                  "branch" : "12", +                  "stateless" : "eva:12M12: :H:j24", +                  "network" : "eva", +                  "operator" : "EVAG Bus", +                  "tripCode" : "0", +                  "vTo" : "20250228", +                  "attrs" : [], +                  "opCode" : "12", +                  "line" : "12M12" +               }, +               "product" : "Niederflurbus", +               "type" : "5", +               "name" : "Niederflurbus NE12", +               "destID" : "20009158", +               "code" : "5" +            } +         }, +         { +            "index" : "5:9", +            "mode" : { +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "number" : "NE12", +               "productId" : "13", +               "desc" : "Borbeck - Dellwig - Bergeborbeck - Altendorf - Essen Hbf", +               "destination" : "Essen Hauptbahnhof", +               "product" : "Niederflurbus", +               "diva" : { +                  "operator" : "EVAG Bus", +                  "network" : "eva", +                  "stateless" : "eva:12M12: :R:j24", +                  "branch" : "12", +                  "project" : "j24", +                  "supplement" : " ", +                  "globalId" : "de:vrr:eva-12-M12:", +                  "lineDisplay" : "line", +                  "line" : "12M12", +                  "opCode" : "12", +                  "attrs" : [], +                  "tripCode" : "0", +                  "vTo" : "20250228", +                  "isSTT" : "1", +                  "isROP" : "1", +                  "vF" : "20240601", +                  "opPublicCode" : "EV-B", +                  "dir" : "R" +               }, +               "destID" : "20009289", +               "code" : "5", +               "name" : "Niederflurbus NE12", +               "type" : "5" +            } +         }, +         { +            "index" : "5:10", +            "mode" : { +               "destination" : "BOT ZOB Berliner Platz", +               "desc" : "Essen Hbf - Bergeborbeck - Essen Dellwig - Bottrop", +               "productId" : "13", +               "number" : "NE16", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "type" : "5", +               "destID" : "20003267", +               "name" : "Niederflurbus NE16", +               "code" : "5", +               "diva" : { +                  "lineDisplay" : "line", +                  "globalId" : "de:vrr:eva-12-M16:", +                  "supplement" : " ", +                  "project" : "j24", +                  "branch" : "12", +                  "stateless" : "eva:12M16: :H:j24", +                  "network" : "eva", +                  "operator" : "EVAG Bus", +                  "tripCode" : "0", +                  "vTo" : "20250228", +                  "attrs" : [], +                  "opCode" : "12", +                  "line" : "12M16", +                  "isROP" : "1", +                  "isSTT" : "1", +                  "dir" : "H", +                  "opPublicCode" : "EV-B", +                  "vF" : "20240601" +               }, +               "product" : "Niederflurbus" +            } +         }, +         { +            "index" : "5:11", +            "mode" : { +               "number" : "NE16", +               "productId" : "13", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "destination" : "Essen Hauptbahnhof", +               "desc" : "Bottrop - Essen Dellwig - Bergeborbeck - Essen Hbf", +               "diva" : { +                  "dir" : "R", +                  "opPublicCode" : "EV-B", +                  "vF" : "20240601", +                  "isROP" : "1", +                  "isSTT" : "1", +                  "vTo" : "20250228", +                  "tripCode" : "0", +                  "opCode" : "12", +                  "attrs" : [], +                  "line" : "12M16", +                  "globalId" : "de:vrr:eva-12-M16:", +                  "lineDisplay" : "line", +                  "supplement" : " ", +                  "branch" : "12", +                  "project" : "j24", +                  "network" : "eva", +                  "operator" : "EVAG Bus", +                  "stateless" : "eva:12M16: :R:j24" +               }, +               "product" : "Niederflurbus", +               "type" : "5", +               "code" : "5", +               "destID" : "20009289", +               "name" : "Niederflurbus NE16" +            } +         }, +         { +            "mode" : { +               "destination" : "BOT St.-Anto.-Hosp./Gartenstr.", +               "desc" : "Essen Hbf - Universität - BOT-Hbf - ZOB Berliner Platz - Grafenwald - Kirchhellen St.-Antonius-Hospital/Gartenstr.", +               "number" : "SB16", +               "productId" : "13", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "type" : "5", +               "destID" : "20003174", +               "code" : "5", +               "name" : "Niederflurbus SB16", +               "diva" : { +                  "opPublicCode" : "VEST", +                  "dir" : "H", +                  "vF" : "20240601", +                  "lineDisplay" : "line", +                  "globalId" : "de:vrr:SB16:VES-40-16", +                  "supplement" : " ", +                  "project" : "j24", +                  "branch" : "40", +                  "stateless" : "ves:40016: :H:j24", +                  "network" : "ves", +                  "operator" : "Vestische", +                  "tripCode" : "0", +                  "vTo" : "20250228", +                  "attrs" : [], +                  "opCode" : "40", +                  "line" : "40016" +               }, +               "product" : "Niederflurbus" +            }, +            "index" : "5:12" +         }, +         { +            "index" : "5:13", +            "mode" : { +               "product" : "Niederflurbus", +               "diva" : { +                  "vF" : "20240601", +                  "opPublicCode" : "VEST", +                  "dir" : "R", +                  "line" : "40016", +                  "opCode" : "40", +                  "attrs" : [], +                  "vTo" : "20250228", +                  "tripCode" : "0", +                  "network" : "ves", +                  "operator" : "Vestische", +                  "stateless" : "ves:40016: :R:j24", +                  "branch" : "40", +                  "project" : "j24", +                  "supplement" : " ", +                  "globalId" : "de:vrr:SB16:VES-40-16", +                  "lineDisplay" : "line" +               }, +               "destID" : "20009289", +               "name" : "Niederflurbus SB16", +               "code" : "5", +               "type" : "5", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "number" : "SB16", +               "productId" : "13", +               "desc" : "BOT-Kirchhellen St..-Antonius-Hospital/ Gartenstr. - Grafenwald - ZOB Berliner Platz - BOT-Hbf - Essen Universität - Hbf", +               "destination" : "Essen Hauptbahnhof" +            } +         }, +         { +            "index" : "7:0", +            "mode" : { +               "type" : "7", +               "name" : "SB SB16", +               "destID" : "20003174", +               "code" : "5", +               "diva" : { +                  "tripCode" : "0", +                  "vTo" : "20250228", +                  "attrs" : [], +                  "opCode" : "88", +                  "line" : "88016", +                  "lineDisplay" : "line", +                  "globalId" : "de:vrr:bvr-88-16:K", +                  "supplement" : "K", +                  "project" : "j24", +                  "branch" : "88", +                  "stateless" : "bvr:88016:K:H:j24", +                  "network" : "bvr", +                  "operator" : "DB Bahn Rheinlandbus", +                  "dir" : "H", +                  "opPublicCode" : "BVR", +                  "vF" : "20240601" +               }, +               "product" : "SB", +               "destination" : "BOT St.-Anto.-Hosp./Gartenstr.", +               "desc" : "Essen Hbf - Dorsten ZOB Dorsten", +               "number" : "SB16", +               "productId" : "3", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)" +            } +         }, +         { +            "index" : "7:1", +            "mode" : { +               "product" : "SB", +               "diva" : { +                  "vF" : "20240601", +                  "dir" : "R", +                  "opPublicCode" : "BVR", +                  "branch" : "88", +                  "project" : "j24", +                  "network" : "bvr", +                  "operator" : "DB Bahn Rheinlandbus", +                  "stateless" : "bvr:88016:K:R:j24", +                  "globalId" : "de:vrr:bvr-88-16:K", +                  "lineDisplay" : "line", +                  "supplement" : "K", +                  "opCode" : "88", +                  "attrs" : [], +                  "line" : "88016", +                  "tripCode" : "0", +                  "vTo" : "20250228" +               }, +               "name" : "SB SB16", +               "destID" : "20009289", +               "code" : "5", +               "type" : "7", +               "timetablePeriod" : "Jahresfahrplan 2024 (08.01.2024 - 06.01.2025)", +               "number" : "SB16", +               "productId" : "3", +               "desc" : "Dorsten ZOB Dorsten - Essen Hbf", +               "destination" : "Essen Hauptbahnhof" +            } +         } +      ] +   }, +   "option" : { +      "ptOption" : { +         "maxTime" : "360", +         "routeType" : "LEASTTIME", +         "activeSec" : "-1", +         "maxChanges" : "9", +         "overgroundTransfer" : "0", +         "lowPlatformVhcl" : "0", +         "noEscalators" : "0", +         "activeImp" : "-1", +         "plane" : "0", +         "wheelchair" : "0", +         "noElevators" : "0", +         "bike" : "0", +         "noInsecurePlaces" : "0", +         "useProxFootSearchDestination" : "0", +         "noLonelyTransfer" : "0", +         "noSolidStairs" : "0", +         "privateTransport" : "0", +         "illumTransfer" : "0", +         "SOSAvail" : "0", +         "useProxFootSearch" : "0", +         "needElevatedPlt" : "0", +         "maxWait" : "120", +         "useProxFootSearchOrigin" : "0", +         "changeSpeed" : "normal", +         "lineRestriction" : "403", +         "active" : "-1", +         "activeCom" : "-1", +         "excludedMeans" : [ +            { +               "value" : "0", +               "selected" : "0" +            }, +            { +               "value" : "1", +               "selected" : "0" +            }, +            { +               "value" : "2", +               "selected" : "0" +            }, +            { +               "selected" : "0", +               "value" : "3" +            }, +            { +               "value" : "4", +               "selected" : "0" +            }, +            { +               "value" : "5", +               "selected" : "0" +            }, +            { +               "selected" : "0", +               "value" : "6" +            }, +            { +               "value" : "7", +               "selected" : "0" +            }, +            { +               "value" : "8", +               "selected" : "0" +            }, +            { +               "selected" : "0", +               "value" : "9" +            }, +            { +               "selected" : "0", +               "value" : "10" +            }, +            { +               "selected" : "0", +               "value" : "11" +            }, +            { +               "selected" : "0", +               "value" : "12" +            }, +            { +               "selected" : "0", +               "value" : "13" +            }, +            { +               "selected" : "0", +               "value" : "14" +            }, +            { +               "selected" : "0", +               "value" : "15" +            }, +            { +               "selected" : "0", +               "value" : "16" +            }, +            { +               "value" : "17", +               "selected" : "0" +            }, +            { +               "selected" : "0", +               "value" : "18" +            }, +            { +               "value" : "19", +               "selected" : "0" +            } +         ], +         "assistance" : "0", +         "noCrowded" : "0" +      } +   } +} diff --git a/t/in/essen_hb.xml b/t/in/essen_hb.xml deleted file mode 100644 index cb25c3d..0000000 --- a/t/in/essen_hb.xml +++ /dev/null @@ -1,1034 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<itdRequest version="9.16.27.53" language="de" lengthUnit="METER" sessionID="efa1.vrr.de_27300218" client="libwww-perl/6.03" clientIP="93.213.85.226" serverID="efa1.vrr.de_" virtDir="vrr" now="2011-11-16T09:38:50" nowWD="4"> -  <itdLayoutParams> -    <itdLayoutParam name="mdvMap2_dm" value="" /> -    <itdLayoutParam name="mapState_dm" value="" /> -    <itdLayoutParam name="mdvMap_dm" value="3406199:401077:NAV3" /> -    <itdLayoutParam name="view" value="" /> -    <itdLayoutParam name="id_dm" value=":dm" /> -    <itdLayoutParam name="transpCompany" value="vrr" /> -  </itdLayoutParams> -  <itdDepartureMonitorRequest requestID="1"> -    <itdOdv type="stop" usage="dm"> -      <itdOdvPlace state="identified" method="itp"> -        <odvPlaceElem omc="5113000" placeID="18" value="5113000:18" span="0" type="remote" mainPlace="1">Essen</odvPlaceElem> -        <odvPlaceInput>E</odvPlaceInput> -      </itdOdvPlace> -      <itdOdvName state="identified" method="itp"> -        <odvNameElem x="3361949" y="456292" mapName="NAV3" stopID="20009289" value="20009289:1" isTransferStop="0" matchQuality="0">Hauptbahnhof</odvNameElem> -        <odvNameInput>Hbf</odvNameInput> -      </itdOdvName> -    </itdOdv> -    <itdDateTime ttpFrom="20110901" ttpTo="20120531"> -      <itdDate weekday="4" year="2011" month="11" day="16" /> -      <itdTime hour="9" minute="39" /> -    </itdDateTime> -    <itdDateRange> -      <itdDate day="16" month="11" year="2011" weekday="4" /> -      <itdDate day="17" month="11" year="2011" weekday="5" /> -      <itdDate day="18" month="11" year="2011" weekday="6" /> -      <itdDate day="19" month="11" year="2011" weekday="7" /> -      <itdDate day="20" month="11" year="2011" weekday="1" /> -      <itdDate day="21" month="11" year="2011" weekday="2" /> -      <itdDate day="22" month="11" year="2011" weekday="3" /> -      <itdDate day="23" month="11" year="2011" weekday="4" /> -      <itdDate day="24" month="11" year="2011" weekday="5" /> -      <itdDate day="25" month="11" year="2011" weekday="6" /> -      <itdDate day="26" month="11" year="2011" weekday="7" /> -      <itdDate day="27" month="11" year="2011" weekday="1" /> -      <itdDate day="28" month="11" year="2011" weekday="2" /> -      <itdDate day="29" month="11" year="2011" weekday="3" /> -      <itdDate day="30" month="11" year="2011" weekday="4" /> -    </itdDateRange> -    <itdTripOptions> -      <itdPtOptions> -        <excludedMeans> -          <meansElem value="0" selected="0">Zug</meansElem> -          <meansElem value="1" selected="0">S-Bahn</meansElem> -          <meansElem value="2" selected="0">U-Bahn</meansElem> -          <meansElem value="3" selected="0">Stadtbahn</meansElem> -          <meansElem value="4" selected="0">Straßen-/Trambahn</meansElem> -          <meansElem value="5" selected="0">Stadtbus</meansElem> -          <meansElem value="6" selected="0">Regionalbus</meansElem> -          <meansElem value="7" selected="0">Schnellbus</meansElem> -          <meansElem value="8" selected="0">Seil-/Zahnradbahn</meansElem> -          <meansElem value="9" selected="0">Schiff</meansElem> -          <meansElem value="10" selected="0">AST/Rufbus</meansElem> -          <meansElem value="11" selected="0">Sonstige</meansElem> -        </excludedMeans> -      </itdPtOptions> -      <itdItOptions> -        <itRouter logASCII="false" logSVG="false" /> -        <itPedestrian computeMonomodalTrip="false" computationType="PT_AND_IT" itIncidentData="false" useElevation="false" speedFactor="100" costFactor="0" distanceFactor="50" traveltimeFactor="50" noTunnel="false" noBridge="false" noFerry="false" maxTime="20" maxLength="2147483647" ignoreRestrictions="false" /> -        <itBicycle preferAsphaltTracks="false" preferGreenTracks="false" usePseudoRouting="false" useSignedRoute="false" cycleSpeed="20" prefHikePath="false" elevFac="50" bikeProf="UNKNOWN" computeMonomodalTrip="false" computationType="PT_AND_IT" itIncidentData="false" useElevation="false" speedFactor="100" costFactor="0" distanceFactor="50" traveltimeFactor="50" noTunnel="false" noBridge="false" noFerry="false" maxTime="15" maxLength="2147483647" ignoreRestrictions="false" /> -        <mitCar computeMonomodalTrip="false" computationType="PT_AND_IT" itIncidentData="false" useElevation="false" speedFactor="100" costFactor="0" distanceFactor="10" traveltimeFactor="90" noTunnel="false" noBridge="false" noFerry="false" maxTime="90" maxLength="2147483647" ignoreRestrictions="false" mitProfileData="false" mitIncidentData="false" mitOnlineData="false" noHighway="false" noTollRoad="false" /> -        <departureTransport> -          <individualTransport meansCode="100" value="8" speed="normal" selected="1" /> -          <individualTransport meansCode="101" value="15" speed="normal" selected="0" /> -          <individualTransport meansCode="102" value="15" speed="normal" selected="0" /> -          <individualTransport meansCode="103" value="10" speed="normal" selected="0" /> -          <individualTransport meansCode="104" value="10" speed="normal" selected="0" /> -          <individualTransport meansCode="105" value="30" speed="normal" selected="0" /> -          <individualTransport meansCode="106" value="15" speed="normal" selected="0" /> -          <individualTransport meansCode="107" value="15" speed="normal" selected="0" /> -        </departureTransport> -      </itdItOptions> -    </itdTripOptions> -    <itdServingLines trainInfo="show" selected="1"> -      <itdServingLine selected="1" code="2" number="S1" symbol="S1" motType="1" realtime="0" direction="Dortmund Dorstfeld S" valid="Jahresfahrplan 2010/2011" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20000131" stateless="ddb:92E01: :H:j11" trainName="" index="1:0"> -        <itdNoTrain name="S-Bahn" /> -        <motDivaParams line="92E01" project="j11" direction="H" supplement=" " network="ddb" /> -        <itdRouteDescText>Solingen Hbf - Düsseldorf Hbf - Dortmund Hbf</itdRouteDescText> -        <itdOperator> -          <code>00</code> -          <name>Daten DB AG</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="2" number="S1" symbol="S1" motType="1" realtime="0" direction="Solingen Hbf" valid="Jahresfahrplan 2010/2011" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20013800" stateless="ddb:92E01: :R:j11" trainName="" index="1:1"> -        <itdNoTrain name="S-Bahn" /> -        <motDivaParams line="92E01" project="j11" direction="R" supplement=" " network="ddb" /> -        <itdRouteDescText>Dortmund Hbf - Düsseldorf Hbf - Solingen Hbf</itdRouteDescText> -        <itdOperator> -          <code>00</code> -          <name>Daten DB AG</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="2" number="S2" symbol="S2" motType="1" realtime="0" direction="Dortmund Hbf" valid="Jahresfahrplan 2010/2011" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20000131" stateless="ddb:92E02: :H:j11" trainName="" index="1:2"> -        <itdNoTrain name="S-Bahn" /> -        <motDivaParams line="92E02" project="j11" direction="H" supplement=" " network="ddb" /> -        <itdRouteDescText>Duisburg Hbf / Essen Hbf - Gelsenkirchen Hbf / Recklinghausen Hbf - Dortmund Hbf</itdRouteDescText> -        <itdOperator> -          <code>00</code> -          <name>Daten DB AG</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="2" number="S3" symbol="S3" motType="1" realtime="0" direction="Hattingen Mitte" valid="Jahresfahrplan 2010/2011" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20008437" stateless="ddb:92E03: :H:j11" trainName="" index="1:3"> -        <itdNoTrain name="S-Bahn" /> -        <motDivaParams line="92E03" project="j11" direction="H" supplement=" " network="ddb" /> -        <itdRouteDescText>Oberhausen Hbf - Hattingen (Ruhr) Mitte</itdRouteDescText> -        <itdOperator> -          <code>00</code> -          <name>Daten DB AG</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="2" number="S3" symbol="S3" motType="1" realtime="0" direction="Oberhausen Hbf." valid="Jahresfahrplan 2010/2011" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20014022" stateless="ddb:92E03: :R:j11" trainName="" index="1:4"> -        <itdNoTrain name="S-Bahn" /> -        <motDivaParams line="92E03" project="j11" direction="R" supplement=" " network="ddb" /> -        <itdRouteDescText>Hattingen (Ruhr) Mitte - Oberhausen Hbf</itdRouteDescText> -        <itdOperator> -          <code>00</code> -          <name>Daten DB AG</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="2" number="S6" symbol="S6" motType="1" realtime="0" direction="Nippes, Nippes S-Bahn" valid="Jahresfahrplan 2010/2011" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="22000750" stateless="ddb:92E06: :H:j11" trainName="" index="1:5"> -        <itdNoTrain name="S-Bahn" /> -        <motDivaParams line="92E06" project="j11" direction="H" supplement=" " network="ddb" /> -        <itdRouteDescText>Essen Hbf - Düsseldorf Hbf - Köln-Nippes</itdRouteDescText> -        <itdOperator> -          <code>00</code> -          <name>Daten DB AG</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="2" number="S9" symbol="S9" motType="1" realtime="0" direction="Bottrop Hbf" valid="Jahresfahrplan 2010/2011" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20003335" stateless="ddb:92E09: :H:j11" trainName="" index="1:6"> -        <itdNoTrain name="S-Bahn" /> -        <motDivaParams line="92E09" project="j11" direction="H" supplement=" " network="ddb" /> -        <itdRouteDescText>Wuppertal Hbf - Essen Hbf - Haltern am See</itdRouteDescText> -        <itdOperator> -          <code>00</code> -          <name>Daten DB AG</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="2" number="S9" symbol="S9" motType="1" realtime="0" direction="Wuppertal Hbf" valid="Jahresfahrplan 2010/2011" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20011019" stateless="ddb:92E09: :R:j11" trainName="" index="1:7"> -        <itdNoTrain name="S-Bahn" /> -        <motDivaParams line="92E09" project="j11" direction="R" supplement=" " network="ddb" /> -        <itdRouteDescText>Haltern am See - Essen Hbf - Wuppertal Hbf</itdRouteDescText> -        <itdOperator> -          <code>00</code> -          <name>Daten DB AG</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="1" number="11" symbol="11" motType="2" realtime="0" direction="Essen Messe W.-Süd/Gruga" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009270" stateless="vrr:10U11: :H:911" trainName="" index="2:0"> -        <itdNoTrain name="U-Bahn" /> -        <motDivaParams line="10U11" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>GE-Buerer Str. - E-Karnap - Altenessen - Essen Hbf - Rüttenscheid - Messe Gruga</itdRouteDescText> -        <itdOperator> -          <code>10</code> -          <name>EVAG U-Bahn</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="1" number="11" symbol="11" motType="2" realtime="0" direction="Essen Berliner Platz" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009153" stateless="vrr:10U11: :R:911" trainName="" index="2:1"> -        <itdNoTrain name="U-Bahn" /> -        <motDivaParams line="10U11" project="911" direction="R" supplement=" " network="vrr" /> -        <itdRouteDescText>Messe Gruga - Rüttenscheid - Essen Hbf - Altenessen - E-Karnap - GE-Buerer Str.</itdRouteDescText> -        <itdOperator> -          <code>10</code> -          <name>EVAG U-Bahn</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="1" number="18" symbol="18" motType="2" realtime="0" direction="Mülheim Heißen Kirche" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20015079" stateless="vrr:10U18:2:H:911" trainName="" index="2:2"> -        <itdNoTrain name="U-Bahn" /> -        <motDivaParams line="10U18" project="911" direction="H" supplement="2" network="vrr" /> -        <itdRouteDescText>Berliner Platz  - Essen Hbf - MH-Rhein-Ruhr-Zentrum - Heißen Kirche</itdRouteDescText> -        <itdOperator> -          <code>10</code> -          <name>EVAG U-Bahn</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="1" number="18" symbol="18" motType="2" realtime="0" direction="Essen Berliner Platz" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009153" stateless="vrr:10U18:2:R:911" trainName="" index="2:3"> -        <itdNoTrain name="U-Bahn" /> -        <motDivaParams line="10U18" project="911" direction="R" supplement="2" network="vrr" /> -        <itdRouteDescText>Heißen Kirche -  MH-Rhein-Ruhr-Zentrum - Essen Hbf - Berliner Platz</itdRouteDescText> -        <itdOperator> -          <code>10</code> -          <name>EVAG U-Bahn</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="1" number="U17" symbol="U17" motType="2" realtime="0" direction="Essen Margarethenhöhe" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009447" stateless="vrr:10U17: :H:911" trainName="" index="2:4"> -        <itdNoTrain name="U-Bahn" /> -        <motDivaParams line="10U17" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Altenessen - Essen Hbf - Holsterhausen - Margarethenhöhe</itdRouteDescText> -        <itdOperator> -          <code>10</code> -          <name>EVAG U-Bahn</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="1" number="U17" symbol="U17" motType="2" realtime="0" direction="Essen Karlsplatz" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009370" stateless="vrr:10U17: :R:911" trainName="" index="2:5"> -        <itdNoTrain name="U-Bahn" /> -        <motDivaParams line="10U17" project="911" direction="R" supplement=" " network="vrr" /> -        <itdRouteDescText>Margarethenhöhe - Holsterhausen - Essen Hbf - Altenessen</itdRouteDescText> -        <itdOperator> -          <code>10</code> -          <name>EVAG U-Bahn</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="4" number="101" symbol="101" motType="4" realtime="0" direction="Essen Bredeney" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009172" stateless="vrr:11101: :H:911" trainName="" index="4:0"> -        <itdNoTrain name="Straßenbahn" /> -        <motDivaParams line="11101" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Borbeck - Bergeborbeck - Essen Hbf - Bredeney</itdRouteDescText> -        <itdOperator> -          <code>11</code> -          <name>EVAG Strab</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="4" number="101" symbol="101" motType="4" realtime="0" direction="Essen Germaniaplatz" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009254" stateless="vrr:11101: :R:911" trainName="" index="4:1"> -        <itdNoTrain name="Straßenbahn" /> -        <motDivaParams line="11101" project="911" direction="R" supplement=" " network="vrr" /> -        <itdOperator> -          <code>11</code> -          <name>EVAG Strab</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="4" number="103" symbol="103" motType="4" realtime="0" direction="Essen Wertstr." valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009641" stateless="vrr:11103: :R:911" trainName="" index="4:2"> -        <itdNoTrain name="Straßenbahn" /> -        <motDivaParams line="11103" project="911" direction="R" supplement=" " network="vrr" /> -        <itdRouteDescText>Steele - Essen Hbf - Rathaus Essen - Altendorf - Borbeck - Dellwig</itdRouteDescText> -        <itdOperator> -          <code>11</code> -          <name>EVAG Strab</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="4" number="105" symbol="105" motType="4" realtime="0" direction="Essen Finefraustr." valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009232" stateless="vrr:11105: :H:911" trainName="" index="4:3"> -        <itdNoTrain name="Straßenbahn" /> -        <motDivaParams line="11105" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Frintrop - Altendorf - Essen Hbf - Bergerhausen - Rellinghausen</itdRouteDescText> -        <itdOperator> -          <code>11</code> -          <name>EVAG Strab</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="4" number="105" symbol="105" motType="4" realtime="0" direction="Essen Unterstr." valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009614" stateless="vrr:11105: :R:911" trainName="" index="4:4"> -        <itdNoTrain name="Straßenbahn" /> -        <motDivaParams line="11105" project="911" direction="R" supplement=" " network="vrr" /> -        <itdRouteDescText>Rellinghausen - Bergerhausen - Essen Hbf - Altendorf - Frintrop</itdRouteDescText> -        <itdOperator> -          <code>11</code> -          <name>EVAG Strab</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="4" number="106" symbol="106" motType="4" realtime="0" direction="Essen Helenenstr." valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009306" stateless="vrr:11106: :H:911" trainName="" index="4:5"> -        <itdNoTrain name="Straßenbahn" /> -        <motDivaParams line="11106" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Altenessen - Essen Hbf - Rüttenscheid - Helenenstr. - Bergeborbeck</itdRouteDescText> -        <itdOperator> -          <code>11</code> -          <name>EVAG Strab</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="4" number="106" symbol="106" motType="4" realtime="0" direction="Essen Altenessen Bf Schleife" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009832" stateless="vrr:11106: :R:911" trainName="" index="4:6"> -        <itdNoTrain name="Straßenbahn" /> -        <motDivaParams line="11106" project="911" direction="R" supplement=" " network="vrr" /> -        <itdRouteDescText>Bergeborbeck - Helenenstr. - Rüttenscheid - Essen Hbf - Altenessen</itdRouteDescText> -        <itdOperator> -          <code>11</code> -          <name>EVAG Strab</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="4" number="107" symbol="107" motType="4" realtime="0" direction="Essen Bredeney" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009172" stateless="vrr:11107: :H:911" trainName="" index="4:7"> -        <itdNoTrain name="Straßenbahn" /> -        <motDivaParams line="11107" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>GE-Hauptbahnhof - Essen Katernberg - Zollverein - Essen Hbf - Bredeney</itdRouteDescText> -        <itdOperator> -          <code>11</code> -          <name>EVAG Strab</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="4" number="107" symbol="107" motType="4" realtime="0" direction="Essen Hanielstr. Schleife" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009844" stateless="vrr:11107: :R:911" trainName="" index="4:8"> -        <itdNoTrain name="Straßenbahn" /> -        <motDivaParams line="11107" project="911" direction="R" supplement=" " network="vrr" /> -        <itdRouteDescText>Bredeney - Essen Hbf - Zollverein - Essen Katernberg - GE-Hauptbahnhof</itdRouteDescText> -        <itdOperator> -          <code>11</code> -          <name>EVAG Strab</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="5" number="145" symbol="145" motType="5" realtime="0" direction="Essen Heisingen Baldeneysee" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009302" stateless="vrr:12145: :H:911" trainName="" index="5:0"> -        <itdNoTrain name="Niederflurbus" /> -        <motDivaParams line="12145" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Mülheim Flughafen - Essen Haarzopf - Essen Hbf - Stadtwald - Heisingen</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="5" number="145" symbol="145" motType="5" realtime="0" direction="Essen Fängershof Schleife" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009847" stateless="vrr:12145: :R:911" trainName="" index="5:1"> -        <itdNoTrain name="Niederflurbus" /> -        <motDivaParams line="12145" project="911" direction="R" supplement=" " network="vrr" /> -        <itdRouteDescText>Heisingen - Stadtwald - Essen Hbf - Essen Haarzopf - Mülheim Flughafen</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="5" number="146" symbol="146" motType="5" realtime="0" direction="Essen Heisingen Baldeneysee" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009302" stateless="vrr:12146: :H:911" trainName="" index="5:2"> -        <itdNoTrain name="Niederflurbus" /> -        <motDivaParams line="12146" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Leithe - Kray - Essen Hbf - Heisingen</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="5" number="146" symbol="146" motType="5" realtime="0" direction="Essen Wackenberg" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009628" stateless="vrr:12146: :R:911" trainName="" index="5:3"> -        <itdNoTrain name="Niederflurbus" /> -        <motDivaParams line="12146" project="911" direction="R" supplement=" " network="vrr" /> -        <itdRouteDescText>Heisingen - Essen Hbf - Kray - Leithe</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="5" number="154" symbol="154" motType="5" realtime="0" direction="Essen Betriebshof Ruhrallee" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009884" stateless="vrr:12154: :H:911" trainName="" index="5:4"> -        <itdNoTrain name="Niederflurbus" /> -        <motDivaParams line="12154" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Beisen - E-Hbf - Bergerhausen</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="5" number="154" symbol="154" motType="5" realtime="0" direction="Essen Kraspothstr." valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009815" stateless="vrr:12154: :R:911" trainName="" index="5:5"> -        <itdNoTrain name="Niederflurbus" /> -        <motDivaParams line="12154" project="911" direction="R" supplement=" " network="vrr" /> -        <itdRouteDescText>Bergerhausen - E-Hbf - Beisen</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="5" number="155" symbol="155" motType="5" realtime="0" direction="Essen Kupferdreh Bahnhof" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009414" stateless="vrr:12155: :H:911" trainName="" index="5:6"> -        <itdNoTrain name="Niederflurbus" /> -        <motDivaParams line="12155" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>GE-Rotths. - E-Hbf - Kupferdreh</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="5" number="155" symbol="155" motType="5" realtime="0" direction="Essen Landschede" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009421" stateless="vrr:12155: :R:911" trainName="" index="5:7"> -        <itdNoTrain name="Niederflurbus" /> -        <motDivaParams line="12155" project="911" direction="R" supplement=" " network="vrr" /> -        <itdRouteDescText>Kupferdreh - E-Hbf - GE-Rotths.</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="5" number="166" symbol="166" motType="5" realtime="0" direction="Hattingen Märkische Str" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20008454" stateless="vrr:12166: :H:911" trainName="" index="5:8"> -        <itdNoTrain name="Niederflurbus" /> -        <motDivaParams line="12166" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Dellwig - Essen Hbf - Steele - E-Burgaltendorf - HAT-Niederwenigern</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="5" number="166" symbol="166" motType="5" realtime="0" direction="Essen Dellwig Bahnhof" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009197" stateless="vrr:12166: :R:911" trainName="" index="5:9"> -        <itdNoTrain name="Niederflurbus" /> -        <motDivaParams line="12166" project="911" direction="R" supplement=" " network="vrr" /> -        <itdRouteDescText>HAT-Niederwenigern  - E-Burgaltendorf - Steele - Essen Hbf - Dellwig</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="5" number="193" symbol="193" motType="5" realtime="0" direction="Essen Versorgungsamt" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009617" stateless="vrr:12193: :H:911" trainName="" index="5:10"> -        <itdNoTrain name="Niederflurbus" /> -        <motDivaParams line="12193" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Essen Hbf - Versorgungsamt</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="5" number="196" symbol="196" motType="5" realtime="0" direction="Essen West S" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009643" stateless="vrr:12196: :H:911" trainName="" index="5:11"> -        <itdNoTrain name="Niederflurbus" /> -        <motDivaParams line="12196" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Vogelheim - Bergeborbeck - Essen Hbf - Essen West</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="5" number="196" symbol="196" motType="5" realtime="0" direction="Essen Hafenverwaltung" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009277" stateless="vrr:12196: :R:911" trainName="" index="5:12"> -        <itdNoTrain name="Niederflurbus" /> -        <motDivaParams line="12196" project="911" direction="R" supplement=" " network="vrr" /> -        <itdRouteDescText>Essen West - Essen Hbf - Bergeborbeck - Vogelheim</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="3" number="NE1" symbol="NE1" motType="5" realtime="0" direction="Gelsenkirchen Essener Str." valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20006670" stateless="vrr:12m01: :H:911" trainName="" index="5:13"> -        <itdNoTrain name="NE" /> -        <motDivaParams line="12m01" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Essen Hbf - Altenessen - Essen Karnap - Gelsenkirchen</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="3" number="NE2" symbol="NE2" motType="5" realtime="0" direction="Essen Hanielstr. Schleife" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009844" stateless="vrr:12m02: :H:911" trainName="" index="5:14"> -        <itdNoTrain name="NE" /> -        <motDivaParams line="12m02" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Essen Hbf - Katernberg</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="3" number="NE3" symbol="NE3" motType="5" realtime="0" direction="Essen Rodenseelbrücke" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009513" stateless="vrr:12m03: :H:911" trainName="" index="5:15"> -        <itdNoTrain name="NE" /> -        <motDivaParams line="12m03" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Essen Hbf  - Schonnebeck - Kray - Leithe</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="3" number="NE4" symbol="NE4" motType="5" realtime="0" direction="E-Burgaltendorf Burgruine" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009182" stateless="vrr:12m04: :H:911" trainName="" index="5:16"> -        <itdNoTrain name="NE" /> -        <motDivaParams line="12m04" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Essen Hbf - Frillendorf - Steele - Überruhr - Burgaltendorf</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="3" number="NE5" symbol="NE5" motType="5" realtime="0" direction="Essen Hörsterfeld" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009329" stateless="vrr:12m05: :H:911" trainName="" index="5:17"> -        <itdNoTrain name="NE" /> -        <motDivaParams line="12m05" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Essen Hbf - Huttrop - Steele - Hörsterfeld</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="3" number="NE6" symbol="NE6" motType="5" realtime="0" direction="Essen Kupferdreh Bahnhof" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009414" stateless="vrr:12M06: :H:911" trainName="" index="5:18"> -        <itdNoTrain name="NE" /> -        <motDivaParams line="12M06" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Essen Hbf - Rellinghausen - Überruhr - Kupferdreh</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="3" number="NE7" symbol="*120" motType="5" realtime="0" direction="Essen Heisingen Baldeneysee" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009302" stateless="vrr:12m07: :H:911" trainName="" index="5:19"> -        <itdNoTrain name="NE" /> -        <motDivaParams line="12m07" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Essen Hbf - Stadtwald - Heisingen</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="3" number="NE8" symbol="NE8" motType="5" realtime="0" direction="Velbert Willy-Brandt-Platz" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20010368" stateless="vrr:12M08: :H:911" trainName="" index="5:20"> -        <itdNoTrain name="NE" /> -        <motDivaParams line="12M08" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Essen Hbf - Bredeney - Essen Werden - Velbert</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="3" number="NE9" symbol="NE9" motType="5" realtime="0" direction="Essen Hatzper Str." valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009291" stateless="vrr:12M09: :H:911" trainName="" index="5:21"> -        <itdNoTrain name="NE" /> -        <motDivaParams line="12M09" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Essen Hbf - Holsterhausen - Margarethenhöhe - Haarzopf</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="3" number="NE10" symbol="NE10" motType="5" realtime="0" direction="Essen Erbach" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009222" stateless="vrr:12M10: :H:911" trainName="" index="5:22"> -        <itdNoTrain name="NE" /> -        <motDivaParams line="12M10" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Essen Hbf - Frohnhausen - Haarzopf</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="3" number="NE11" symbol="NE11" motType="5" realtime="0" direction="Oberhausen Hbf." valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20014022" stateless="vrr:12m11: :H:911" trainName="" index="5:23"> -        <itdNoTrain name="NE" /> -        <motDivaParams line="12m11" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Essen Hbf - Altendorf - Essen Frintrop - Oberhausen</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="3" number="NE12" symbol="NE12" motType="5" realtime="0" direction="Essen Borbeck Bf" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009158" stateless="vrr:12m12: :H:911" trainName="" index="5:24"> -        <itdNoTrain name="NE" /> -        <motDivaParams line="12m12" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Essen Hbf - Altendorf - Bergeborbeck - Dellwig - Borbeck</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="3" number="NE13" symbol="NE13" motType="5" realtime="0" direction="Essen Kettwig S" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009383" stateless="vrr:12M13: :H:911" trainName="" index="5:25"> -        <itdNoTrain name="NE" /> -        <motDivaParams line="12M13" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Essen Hbf - Rüttenscheid - Kettwig</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="3" number="NE16" symbol="NE16" motType="5" realtime="0" direction="Bottrop  ZOB Berliner Platz" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20003267" stateless="vrr:12M16: :H:911" trainName="" index="5:26"> -        <itdNoTrain name="NE" /> -        <motDivaParams line="12M16" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Essen Hbf - Bergeborbeck - Essen Dellwig - Bottrop</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="5" number="SB19" symbol="SB19" motType="5" realtime="0" direction="Heiligenhaus Rathaus" valid="BVR-Fahrplan (12.6.-10.12.2011)" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20010030" stateless="vrr:88S19: :H:bv4" trainName="" index="5:27"> -        <itdNoTrain name="Niederflurbus" /> -        <motDivaParams line="88S19" project="bv4" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Essen Hbf - Velbert - Heiligenhaus Rathaus</itdRouteDescText> -        <itdOperator> -          <code>88</code> -          <name>Busverkehr Rheinland</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="3" number="SB14" symbol="SB14" motType="7" realtime="0" direction="Essen Heisingen Baldeneysee" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20009302" stateless="vrr:12S14: :R:911" trainName="" index="7:0"> -        <itdNoTrain name="SB" /> -        <motDivaParams line="12S14" project="911" direction="R" supplement=" " network="vrr" /> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="3" number="SB15" symbol="SB15" motType="7" realtime="0" direction="E-Burgaltendorf Burgruine" valid="EVAG Fahrplan 7.9.2011 - 8.1.2012" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="" stateless="vrr:12S15: :H:911" trainName="" index="7:1"> -        <itdNoTrain name="SB" /> -        <motDivaParams line="12S15" project="911" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Essen Hbf - Überruhr - Burgaltendorf</itdRouteDescText> -        <itdOperator> -          <code>12</code> -          <name>EVAG Bus</name> -        </itdOperator> -      </itdServingLine> -      <itdServingLine selected="1" code="3" number="SB16" symbol="SB16" motType="7" realtime="0" direction="Dorsten ZOB Dorsten" valid="Sommerfahrplan 2011" compound="0" TTB="0" STT="0" ROP="0" type="unknown" spTr="" destID="20003214" stateless="vrr:40016: :H:s11" trainName="" index="7:2"> -        <itdNoTrain name="SB" /> -        <motDivaParams line="40016" project="s11" direction="H" supplement=" " network="vrr" /> -        <itdRouteDescText>Essen Hbf - BOT-Hbf - ZOB Berliner Platz - Kirchhellen - Movie Park /ZOB Dorsten</itdRouteDescText> -        <itdOperator> -          <code>40</code> -          <name>Vestische</name> -        </itdOperator> -      </itdServingLine> -    </itdServingLines> -    <itdDepartureList> -      <itdDeparture stopID="20009289" x="3361949" y="456292" mapName="NAV3" area="90" platform="#1" platformName="Gleis 1" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="1"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="36" ap="" /> -        </itdDateTime> -        <itdRTDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="40" ap="" /> -        </itdRTDateTime> -        <itdServingLine key="946" code="6" number="ICE 946 Intercity-Express" symbol="ICE 946 Intercity-Express" motType="0" realtime="1" direction="Düsseldorf Hbf" trainType="ICE" trainNum="946" destID="20018235" stateless="ddb:98010: :H:j11"> -          <itdNoTrain name="Intercity-Express" delay="4">Bordrestaurant</itdNoTrain> -          <motDivaParams line="98010" project="j11" direction="H" supplement=" " network="ddb" /> -        </itdServingLine> -        <genAttrList> -          <genAttrElem> -            <name>lineType</name> -            <value>HIGHSPEEDTRAIN</value> -          </genAttrElem> -          <genAttrElem> -            <name>lineType</name> -            <value>LONG_DISTANCE_TRAINS</value> -          </genAttrElem> -          <genAttrElem> -            <name>lineType</name> -            <value>SUPPLEMENT</value> -          </genAttrElem> -        </genAttrList> -        <itdServingTrip tripCode="946" AVMSTripID="946-8010255-16052600-8000085-16100500" /> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361962" y="456258" mapName="NAV3" area="4" platform="4" platformName="Bstg. 4" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="1"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="39" ap="" /> -        </itdDateTime> -        <itdServingLine key="939" code="5" number="SB19" symbol="SB19" motType="5" realtime="0" direction="Velbert Willy-Brandt-Platz" destID="20010368" stateless="vrr:88S19: :H:bv4"> -          <itdNoTrain name="Niederflurbus">weiter als Linie SB 66 nach Wuppertal Hbf</itdNoTrain> -          <motDivaParams line="88S19" project="bv4" direction="H" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361923" y="456436" mapName="NAV3" area="1" platform="1" platformName="Bstg. 1" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="1"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="39" ap="" /> -        </itdDateTime> -        <itdServingLine key="932" code="5" number="196" symbol="196" motType="5" realtime="0" direction="Essen Hafenverwaltung" destID="20009277" stateless="vrr:12196: :R:911"> -          <itdNoTrain name="Niederflurbus" /> -          <motDivaParams line="12196" project="911" direction="R" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361949" y="456327" mapName="NAV3" area="14" platform="2" platformName="Bstg. 2" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="1"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="39" ap="" /> -        </itdDateTime> -        <itdServingLine key="933" code="1" number="18" symbol="18" motType="2" realtime="0" direction="Mülheim Heißen Kirche" destID="20015079" stateless="vrr:10U18:2:H:911"> -          <itdNoTrain name="U-Bahn">Ab (H) Heißen Kirche, Umstieg in den SEV Ri. Mülheim Hbf.</itdNoTrain> -          <motDivaParams line="10U18" project="911" direction="H" supplement="2" network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361966" y="456306" mapName="NAV3" area="13" platform="3" platformName="Bstg. 3" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="1"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="40" ap="" /> -        </itdDateTime> -        <itdServingLine key="928" code="1" number="U17" symbol="U17" motType="2" realtime="0" direction="Essen Karlsplatz" destID="20009370" stateless="vrr:10U17: :R:911"> -          <itdNoTrain name="U-Bahn" /> -          <motDivaParams line="10U17" project="911" direction="R" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361966" y="456306" mapName="NAV3" area="3" platform="3" platformName="Bstg. 3" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="1"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="40" ap="" /> -        </itdDateTime> -        <itdServingLine key="911" code="5" number="145" symbol="145" motType="5" realtime="0" direction="Essen Fängershof Schleife" destID="20009847" stateless="vrr:12145: :R:911"> -          <itdNoTrain name="Niederflurbus" /> -          <motDivaParams line="12145" project="911" direction="R" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361949" y="456292" mapName="NAV3" area="98" platform="#7" platformName="Gleis 7" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="2"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="41" ap="" /> -        </itdDateTime> -        <itdRTDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="41" ap="" /> -        </itdRTDateTime> -        <itdServingLine key="30942" code="2" number="S9" symbol="S9" motType="1" realtime="1" direction="Haltern am See Bf" trainNum="30942" destID="20003527" stateless="ddb:92E09: :H:j11"> -          <itdNoTrain name="S-Bahn" delay="0">Fahrradmitnahme begrenzt möglich</itdNoTrain> -          <motDivaParams line="92E09" project="j11" direction="H" supplement=" " network="ddb" /> -        </itdServingLine> -        <genAttrList /> -        <itdServingTrip tripCode="30942" AVMSTripID="30942-8000266-16085300-8000145-16102700" /> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361962" y="456258" mapName="NAV3" area="14" platform="4" platformName="Bstg. 4" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="2"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="41" ap="" /> -        </itdDateTime> -        <itdServingLine key="915" code="4" number="107" symbol="107" motType="4" realtime="0" direction="Essen Bredeney" destID="20009172" stateless="vrr:11107: :H:911"> -          <itdNoTrain name="Straßenbahn" /> -          <motDivaParams line="11107" project="911" direction="H" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361923" y="456436" mapName="NAV3" area="13" platform="1" platformName="Bstg. 1" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="2"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="41" ap="" /> -        </itdDateTime> -        <itdServingLine key="941" code="4" number="101" symbol="101" motType="4" realtime="0" direction="Essen Germaniaplatz" destID="20009254" stateless="vrr:11101: :R:911"> -          <itdNoTrain name="Straßenbahn" /> -          <motDivaParams line="11101" project="911" direction="R" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361949" y="456292" mapName="NAV3" area="98" platform="#11" platformName="Gleis 11" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="7"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="41" ap="" /> -        </itdDateTime> -        <itdRTDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="46" ap="" /> -        </itdRTDateTime> -        <itdServingLine key="30937" code="2" number="S9" symbol="S9" motType="1" realtime="1" direction="Wuppertal Hbf" trainNum="30937" destID="20011019" stateless="ddb:92E09: :R:j11"> -          <itdNoTrain name="S-Bahn" delay="5">Fahrradmitnahme begrenzt möglich</itdNoTrain> -          <motDivaParams line="92E09" project="j11" direction="R" supplement=" " network="ddb" /> -        </itdServingLine> -        <genAttrList /> -        <itdServingTrip tripCode="30937" AVMSTripID="30937-8000047-16092400-8000266-16102700" /> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361949" y="456327" mapName="NAV3" area="14" platform="2" platformName="Bstg. 2" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="3"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="42" ap="" /> -        </itdDateTime> -        <itdServingLine key="931" code="1" number="U17" symbol="U17" motType="2" realtime="0" direction="Essen Margarethenhöhe" destID="20009447" stateless="vrr:10U17: :H:911"> -          <itdNoTrain name="U-Bahn" /> -          <motDivaParams line="10U17" project="911" direction="H" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361966" y="456306" mapName="NAV3" area="13" platform="3" platformName="Bstg. 3" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="4"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="43" ap="" /> -        </itdDateTime> -        <itdServingLine key="924" code="1" number="18" symbol="18" motType="2" realtime="0" direction="Essen Berliner Platz" destID="20009153" stateless="vrr:10U18:2:R:911"> -          <itdNoTrain name="U-Bahn" /> -          <motDivaParams line="10U18" project="911" direction="R" supplement="2" network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361953" y="456233" mapName="NAV3" area="8" platform="8" platformName="Bstg. 8" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="5"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="44" ap="" /> -        </itdDateTime> -        <itdServingLine key="914" code="5" number="146" symbol="146" motType="5" realtime="0" direction="Essen Heisingen Baldeneysee" destID="20009302" stateless="vrr:12146: :H:911"> -          <itdNoTrain name="Niederflurbus" /> -          <motDivaParams line="12146" project="911" direction="H" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361949" y="456292" mapName="NAV3" area="90" platform="#4" platformName="Gleis 4" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="6"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="44" ap="" /> -        </itdDateTime> -        <itdRTDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="45" ap="" /> -        </itdRTDateTime> -        <itdServingLine key="10211" code="6" number="RE2" symbol="RE2" motType="0" realtime="1" direction="Münster (Westf) Hbf" trainNum="10211" destID="24041000" stateless="ddb:90425:B:H:j11"> -          <itdNoTrain name="R-Bahn" delay="1">Fahrradmitnahme begrenzt möglich</itdNoTrain> -          <motDivaParams line="90425" project="j11" direction="H" supplement="B" network="ddb" /> -        </itdServingLine> -        <genAttrList /> -        <itdServingTrip tripCode="10211" AVMSTripID="10211-8000086-16092400-8000263-16105000" /> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361944" y="456315" mapName="NAV3" area="7" platform="7" platformName="Bstg. 7" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="5"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="44" ap="" /> -        </itdDateTime> -        <itdServingLine key="917" code="5" number="155" symbol="155" motType="5" realtime="0" direction="Essen Marienbergstr." destID="20009448" stateless="vrr:12155: :H:911"> -          <itdNoTrain name="Niederflurbus" /> -          <motDivaParams line="12155" project="911" direction="H" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361923" y="456436" mapName="NAV3" area="13" platform="1" platformName="Bstg. 1" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="5"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="44" ap="" /> -        </itdDateTime> -        <itdServingLine key="919" code="4" number="106" symbol="106" motType="4" realtime="0" direction="Essen Altenessen Bf Schleife" destID="20009832" stateless="vrr:11106: :R:911"> -          <itdNoTrain name="Straßenbahn" /> -          <motDivaParams line="11106" project="911" direction="R" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361962" y="456258" mapName="NAV3" area="14" platform="4" platformName="Bstg. 4" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="6"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="45" ap="" /> -        </itdDateTime> -        <itdServingLine key="934" code="4" number="106" symbol="106" motType="4" realtime="0" direction="Essen Helenenstr." destID="20009306" stateless="vrr:11106: :H:911"> -          <itdNoTrain name="Straßenbahn" /> -          <motDivaParams line="11106" project="911" direction="H" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361966" y="456306" mapName="NAV3" area="13" platform="3" platformName="Bstg. 3" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="6"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="45" ap="" /> -        </itdDateTime> -        <itdServingLine key="939" code="1" number="11" symbol="11" motType="2" realtime="0" direction="Gelsenkirchen Buerer Str." destID="20005579" stateless="vrr:10U11: :R:911"> -          <itdNoTrain name="U-Bahn" /> -          <motDivaParams line="10U11" project="911" direction="R" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361949" y="456327" mapName="NAV3" area="14" platform="2" platformName="Bstg. 2" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="7"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="46" ap="" /> -        </itdDateTime> -        <itdServingLine key="931" code="1" number="11" symbol="11" motType="2" realtime="0" direction="Essen Messe W.-Süd/Gruga" destID="20009270" stateless="vrr:10U11: :H:911"> -          <itdNoTrain name="U-Bahn" /> -          <motDivaParams line="10U11" project="911" direction="H" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361949" y="456292" mapName="NAV3" area="90" platform="#2" platformName="Gleis 2" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="19"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="46" ap="" /> -        </itdDateTime> -        <itdRTDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="58" ap="" /> -        </itdRTDateTime> -        <itdServingLine key="10008" code="6" number="RE11" symbol="RE11" motType="0" realtime="1" direction="Mönchengladbach Hbf" trainNum="10008" destID="-1" stateless="ddb:90415:C:H:j11"> -          <itdNoTrain name="R-Bahn" delay="12">Fahrradmitnahme begrenzt möglich</itdNoTrain> -          <motDivaParams line="90415" project="j11" direction="H" supplement="C" network="ddb" /> -        </itdServingLine> -        <genAttrList /> -        <itdServingTrip tripCode="10008" AVMSTripID="10008-8000149-16085600-8000086-16095800" /> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361949" y="456292" mapName="NAV3" area="98" platform="#7" platformName="Gleis 7" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="11"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="46" ap="" /> -        </itdDateTime> -        <itdRTDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="50" ap="" /> -        </itdRTDateTime> -        <itdServingLine key="30342" code="2" number="S3" symbol="S3" motType="1" realtime="1" direction="Oberhausen Hbf." trainNum="30342" destID="20014022" stateless="ddb:92E03: :R:j11"> -          <itdNoTrain name="S-Bahn" delay="4">Fahrradmitnahme begrenzt möglich</itdNoTrain> -          <motDivaParams line="92E03" project="j11" direction="R" supplement=" " network="ddb" /> -        </itdServingLine> -        <genAttrList /> -        <itdServingTrip tripCode="30342" AVMSTripID="30342-8002640-16092500-8000286-16100300" /> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361949" y="456292" mapName="NAV3" area="98" platform="#11" platformName="Gleis 11" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="8"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="46" ap="" /> -        </itdDateTime> -        <itdRTDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="47" ap="" /> -        </itdRTDateTime> -        <itdServingLine key="30143" code="2" number="S1" symbol="S1" motType="1" realtime="1" direction="Dortmund Hbf" trainNum="30143" destID="20000131" stateless="ddb:92E01: :H:j11"> -          <itdNoTrain name="S-Bahn" delay="1">Fahrradmitnahme begrenzt möglich</itdNoTrain> -          <motDivaParams line="92E01" project="j11" direction="H" supplement=" " network="ddb" /> -        </itdServingLine> -        <genAttrList /> -        <itdServingTrip tripCode="30143" AVMSTripID="30143-8000087-16083300-8000080-16102600" /> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361949" y="456327" mapName="NAV3" area="2" platform="2" platformName="Bstg. 2" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="7"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="46" ap="" /> -        </itdDateTime> -        <itdServingLine key="916" code="5" number="166" symbol="166" motType="5" realtime="0" direction="Hattingen Märkische Str" destID="20008454" stateless="vrr:12166: :H:911"> -          <itdNoTrain name="Niederflurbus" /> -          <motDivaParams line="12166" project="911" direction="H" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361923" y="456436" mapName="NAV3" area="13" platform="1" platformName="Bstg. 1" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="7"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="46" ap="" /> -        </itdDateTime> -        <itdServingLine key="929" code="4" number="105" symbol="105" motType="4" realtime="0" direction="Essen Unterstr." destID="20009614" stateless="vrr:11105: :R:911"> -          <itdNoTrain name="Straßenbahn" /> -          <motDivaParams line="11105" project="911" direction="R" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361944" y="456315" mapName="NAV3" area="7" platform="7" platformName="Bstg. 7" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="7"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="46" ap="" /> -        </itdDateTime> -        <itdServingLine key="946" code="3" number="SB15" symbol="SB15" motType="7" realtime="0" direction="Burgaltendorf Burgruine" destID="-1" stateless="vrr:12S15: :H:911"> -          <itdNoTrain name="SB" /> -          <motDivaParams line="12S15" project="911" direction="H" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361949" y="456327" mapName="NAV3" area="2" platform="2" platformName="Bstg. 2" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="7"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="46" ap="" /> -        </itdDateTime> -        <itdServingLine key="912" code="5" number="155" symbol="155" motType="5" realtime="0" direction="Gelsenkirchen Achternbergstr." destID="20005885" stateless="vrr:12155: :R:911"> -          <itdNoTrain name="Niederflurbus" /> -          <motDivaParams line="12155" project="911" direction="R" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361943" y="456248" mapName="NAV3" area="9" platform="9" platformName="Bstg. 9" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="8"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="47" ap="" /> -        </itdDateTime> -        <itdServingLine key="916" code="5" number="196" symbol="196" motType="5" realtime="0" direction="Essen West S" destID="20009643" stateless="vrr:12196: :H:911"> -          <itdNoTrain name="Niederflurbus" /> -          <motDivaParams line="12196" project="911" direction="H" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361923" y="456436" mapName="NAV3" area="13" platform="1" platformName="Bstg. 1" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="9"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="48" ap="" /> -        </itdDateTime> -        <itdServingLine key="937" code="4" number="107" symbol="107" motType="4" realtime="0" direction="Gelsenkirchen Hbf" destID="20005613" stateless="vrr:11107: :R:911"> -          <itdNoTrain name="Straßenbahn" /> -          <motDivaParams line="11107" project="911" direction="R" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361962" y="456258" mapName="NAV3" area="14" platform="4" platformName="Bstg. 4" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="9"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="48" ap="" /> -        </itdDateTime> -        <itdServingLine key="920" code="4" number="105" symbol="105" motType="4" realtime="0" direction="Essen Finefraustr." destID="20009232" stateless="vrr:11105: :H:911"> -          <itdNoTrain name="Straßenbahn" /> -          <motDivaParams line="11105" project="911" direction="H" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361949" y="456292" mapName="NAV3" area="98" platform="#12" platformName="Gleis 12" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="9"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="48" ap="" /> -        </itdDateTime> -        <itdRTDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="48" ap="" /> -        </itdRTDateTime> -        <itdServingLine key="30652" code="2" number="S6" symbol="S6" motType="1" realtime="1" direction="Nippes, Nippes S-Bahn" trainNum="30652" destID="22000750" stateless="ddb:92E06: :H:j11"> -          <itdNoTrain name="S-Bahn" delay="0">Fahrradmitnahme begrenzt möglich</itdNoTrain> -          <motDivaParams line="92E06" project="j11" direction="H" supplement=" " network="ddb" /> -        </itdServingLine> -        <genAttrList /> -        <itdServingTrip tripCode="30652" AVMSTripID="30652-8000098-16094800-8003372-16112800" /> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361949" y="456327" mapName="NAV3" area="14" platform="2" platformName="Bstg. 2" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="10"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="49" ap="" /> -        </itdDateTime> -        <itdServingLine key="938" code="1" number="18" symbol="18" motType="2" realtime="0" direction="Mülheim Heißen Kirche" destID="20015079" stateless="vrr:10U18:2:H:911"> -          <itdNoTrain name="U-Bahn">Ab (H) Heißen Kirche, Umstieg in den SEV Ri. Mülheim Hbf.</itdNoTrain> -          <motDivaParams line="10U18" project="911" direction="H" supplement="2" network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361966" y="456306" mapName="NAV3" area="13" platform="3" platformName="Bstg. 3" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="11"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="50" ap="" /> -        </itdDateTime> -        <itdServingLine key="938" code="1" number="U17" symbol="U17" motType="2" realtime="0" direction="Essen Karlsplatz" destID="20009370" stateless="vrr:10U17: :R:911"> -          <itdNoTrain name="U-Bahn" /> -          <motDivaParams line="10U17" project="911" direction="R" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361966" y="456306" mapName="NAV3" area="3" platform="3" platformName="Bstg. 3" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="11"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="50" ap="" /> -        </itdDateTime> -        <itdServingLine key="947" code="5" number="146" symbol="146" motType="5" realtime="0" direction="Essen Wackenberg" destID="20009628" stateless="vrr:12146: :R:911"> -          <itdNoTrain name="Niederflurbus" /> -          <motDivaParams line="12146" project="911" direction="R" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361962" y="456258" mapName="NAV3" area="14" platform="4" platformName="Bstg. 4" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="12"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="51" ap="" /> -        </itdDateTime> -        <itdServingLine key="921" code="4" number="107" symbol="107" motType="4" realtime="0" direction="Essen Bredeney" destID="20009172" stateless="vrr:11107: :H:911"> -          <itdNoTrain name="Straßenbahn" /> -          <motDivaParams line="11107" project="911" direction="H" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361923" y="456436" mapName="NAV3" area="13" platform="1" platformName="Bstg. 1" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="12"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="51" ap="" /> -        </itdDateTime> -        <itdServingLine key="951" code="4" number="101" symbol="101" motType="4" realtime="0" direction="Essen Germaniaplatz" destID="20009254" stateless="vrr:11101: :R:911"> -          <itdNoTrain name="Straßenbahn" /> -          <motDivaParams line="11101" project="911" direction="R" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361949" y="456327" mapName="NAV3" area="14" platform="2" platformName="Bstg. 2" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="13"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="52" ap="" /> -        </itdDateTime> -        <itdServingLine key="946" code="1" number="U17" symbol="U17" motType="2" realtime="0" direction="Essen Margarethenhöhe" destID="20009447" stateless="vrr:10U17: :H:911"> -          <itdNoTrain name="U-Bahn" /> -          <motDivaParams line="10U17" project="911" direction="H" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361923" y="456436" mapName="NAV3" area="1" platform="1" platformName="Bstg. 1" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="14"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="53" ap="" /> -        </itdDateTime> -        <itdServingLine key="1020" code="3" number="SB16" symbol="SB16" motType="7" realtime="0" direction="BOT St.-Anto.-Hosp./Gartenstr" destID="20003174" stateless="vrr:40016: :H:s11"> -          <itdNoTrain name="SB" /> -          <motDivaParams line="40016" project="s11" direction="H" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361966" y="456306" mapName="NAV3" area="13" platform="3" platformName="Bstg. 3" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="14"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="53" ap="" /> -        </itdDateTime> -        <itdServingLine key="934" code="1" number="18" symbol="18" motType="2" realtime="0" direction="Essen Berliner Platz" destID="20009153" stateless="vrr:10U18:2:R:911"> -          <itdNoTrain name="U-Bahn" /> -          <motDivaParams line="10U18" project="911" direction="R" supplement="2" network="vrr" /> -        </itdServingLine> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361949" y="456292" mapName="NAV3" area="90" platform="#6" platformName="Gleis 6" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="26"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="53" ap="" /> -        </itdDateTime> -        <itdRTDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="10" minute="5" ap="" /> -        </itdRTDateTime> -        <itdServingLine key="10115" code="6" number="RE1" symbol="RE1" motType="0" realtime="1" direction="Hamm (Westf)" trainNum="10115" destID="24007756" stateless="ddb:90415:X:R:j11"> -          <itdNoTrain name="R-Bahn" delay="12">Fahrradmitnahme begrenzt möglich</itdNoTrain> -          <motDivaParams line="90415" project="j11" direction="R" supplement="X" network="ddb" /> -        </itdServingLine> -        <genAttrList /> -        <itdServingTrip tripCode="10115" AVMSTripID="10115-8000001-16075100-8000149-16103600" /> -      </itdDeparture> -      <itdDeparture stopID="20009289" x="3361943" y="456248" mapName="NAV3" area="9" platform="9" platformName="Bstg. 9" stopName="Essen Hauptbahnhof" nameWO="Hauptbahnhof" countdown="15"> -        <itdDateTime> -          <itdDate year="2011" month="11" day="16" weekday="4" /> -          <itdTime hour="9" minute="54" ap="" /> -        </itdDateTime> -        <itdServingLine key="908" code="5" number="166" symbol="166" motType="5" realtime="0" direction="Essen Dellwig Bahnhof" destID="20009197" stateless="vrr:12166: :R:911"> -          <itdNoTrain name="Niederflurbus" /> -          <motDivaParams line="12166" project="911" direction="R" supplement=" " network="vrr" /> -        </itdServingLine> -      </itdDeparture> -    </itdDepartureList> -  </itdDepartureMonitorRequest> -</itdRequest> - diff --git a/t/in/essen_hb_invalid.xml b/t/in/essen_hb_invalid.xml deleted file mode 100644 index de7d10a..0000000 --- a/t/in/essen_hb_invalid.xml +++ /dev/null @@ -1,80 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<itdRequest version="9.16.27.53" language="de" lengthUnit="METER" sessionID="efa2.vrr.de_46148296" client="libwww-perl/6.03" clientIP="87.147.17.185" serverID="efa2.vrr.de_" virtDir="vrr" now="2011-11-20T15:31:57" nowWD="1"> -  <itdLayoutParams> -    <itdLayoutParam name="mdvMap2_dm" value="" /> -    <itdLayoutParam name="mapState_dm" value="" /> -    <itdLayoutParam name="mdvMap_dm" value="3406199:401077:NAV3" /> -    <itdLayoutParam name="view" value="" /> -    <itdLayoutParam name="id_dm" value=":dm" /> -    <itdLayoutParam name="transpCompany" value="vrr" /> -  </itdLayoutParams> -  <itdDepartureMonitorRequest requestID="1"> -    <itdOdv type="stop" usage="dm"> -      <itdOdvPlace state="identified" method="itp"> -        <odvPlaceElem omc="5113000" placeID="18" value="5113000:18" span="0" type="remote" mainPlace="1">Essen</odvPlaceElem> -        <odvPlaceInput>E</odvPlaceInput> -      </itdOdvPlace> -      <itdOdvName state="notidentified" method="itp"> -        <itdMessage type="error" module="BROKER" code="-2000">stop invalid</itdMessage> -        <odvNameElem>Hbfoaei</odvNameElem> -        <odvNameInput>Hbfoaei</odvNameInput> -      </itdOdvName> -    </itdOdv> -    <itdDateTime ttpFrom="20110901" ttpTo="20120531"> -      <itdDate weekday="1" year="2011" month="11" day="20" /> -      <itdTime hour="15" minute="32" /> -    </itdDateTime> -    <itdDateRange> -      <itdDate day="20" month="11" year="2011" weekday="1" /> -      <itdDate day="21" month="11" year="2011" weekday="2" /> -      <itdDate day="22" month="11" year="2011" weekday="3" /> -      <itdDate day="23" month="11" year="2011" weekday="4" /> -      <itdDate day="24" month="11" year="2011" weekday="5" /> -      <itdDate day="25" month="11" year="2011" weekday="6" /> -      <itdDate day="26" month="11" year="2011" weekday="7" /> -      <itdDate day="27" month="11" year="2011" weekday="1" /> -      <itdDate day="28" month="11" year="2011" weekday="2" /> -      <itdDate day="29" month="11" year="2011" weekday="3" /> -      <itdDate day="30" month="11" year="2011" weekday="4" /> -      <itdDate day="01" month="12" year="2011" weekday="5" /> -      <itdDate day="02" month="12" year="2011" weekday="6" /> -      <itdDate day="03" month="12" year="2011" weekday="7" /> -      <itdDate day="04" month="12" year="2011" weekday="1" /> -    </itdDateRange> -    <itdTripOptions> -      <itdPtOptions> -        <excludedMeans> -          <meansElem value="0" selected="0">Zug</meansElem> -          <meansElem value="1" selected="0">S-Bahn</meansElem> -          <meansElem value="2" selected="0">U-Bahn</meansElem> -          <meansElem value="3" selected="0">Stadtbahn</meansElem> -          <meansElem value="4" selected="0">Straßen-/Trambahn</meansElem> -          <meansElem value="5" selected="0">Stadtbus</meansElem> -          <meansElem value="6" selected="0">Regionalbus</meansElem> -          <meansElem value="7" selected="0">Schnellbus</meansElem> -          <meansElem value="8" selected="0">Seil-/Zahnradbahn</meansElem> -          <meansElem value="9" selected="0">Schiff</meansElem> -          <meansElem value="10" selected="0">AST/Rufbus</meansElem> -          <meansElem value="11" selected="0">Sonstige</meansElem> -        </excludedMeans> -      </itdPtOptions> -      <itdItOptions> -        <itRouter logASCII="false" logSVG="false" /> -        <itPedestrian computeMonomodalTrip="false" computationType="PT_AND_IT" itIncidentData="false" useElevation="false" speedFactor="100" costFactor="0" distanceFactor="50" traveltimeFactor="50" noTunnel="false" noBridge="false" noFerry="false" maxTime="20" maxLength="2147483647" ignoreRestrictions="false" /> -        <itBicycle preferAsphaltTracks="false" preferGreenTracks="false" usePseudoRouting="false" useSignedRoute="false" cycleSpeed="20" prefHikePath="false" elevFac="50" bikeProf="UNKNOWN" computeMonomodalTrip="false" computationType="PT_AND_IT" itIncidentData="false" useElevation="false" speedFactor="100" costFactor="0" distanceFactor="50" traveltimeFactor="50" noTunnel="false" noBridge="false" noFerry="false" maxTime="15" maxLength="2147483647" ignoreRestrictions="false" /> -        <mitCar computeMonomodalTrip="false" computationType="PT_AND_IT" itIncidentData="false" useElevation="false" speedFactor="100" costFactor="0" distanceFactor="10" traveltimeFactor="90" noTunnel="false" noBridge="false" noFerry="false" maxTime="90" maxLength="2147483647" ignoreRestrictions="false" mitProfileData="false" mitIncidentData="false" mitOnlineData="false" noHighway="false" noTollRoad="false" /> -        <departureTransport> -          <individualTransport meansCode="100" value="8" speed="normal" selected="1" /> -          <individualTransport meansCode="101" value="15" speed="normal" selected="0" /> -          <individualTransport meansCode="102" value="15" speed="normal" selected="0" /> -          <individualTransport meansCode="103" value="10" speed="normal" selected="0" /> -          <individualTransport meansCode="104" value="10" speed="normal" selected="0" /> -          <individualTransport meansCode="105" value="30" speed="normal" selected="0" /> -          <individualTransport meansCode="106" value="15" speed="normal" selected="0" /> -          <individualTransport meansCode="107" value="15" speed="normal" selected="0" /> -        </departureTransport> -      </itdItOptions> -    </itdTripOptions> -  </itdDepartureMonitorRequest> -</itdRequest> -  | 
