GTFS Schedule Validation Report

This report was generated by the Canonical GTFS Schedule validator, version 7.1.0 at 2026-01-16T17:10:15Z,
for the dataset file:///shared/deutsche-bahn.zip. No country code was provided.

Use this report alongside our documentation.

Summary

Agencies included


Feed Info


Publisher Name:
DB-to-GTFS converter, based on DB-API data
Feed Email:
N/A
Feed Language:
German
Feed Start Date:
2018-12-09
Feed End Date:
2019-12-15

Files included


  1. README.md
  2. agency.txt
  3. calendar_dates.txt
  4. feed_info.txt
  5. routes.txt
  6. stop_times.txt
  7. stops.txt
  8. trips.txt

Counts


  • Agencies: 14
  • Blocks: 0
  • Routes: 1366
  • Shapes: 0
  • Stops: 664
  • Trips: 6063

Specification Compliance report

2988 notices reported (3 errors, 2984 warnings, 1 infos)

Notice Code Severity Total
stop_time_with_arrival_before_previous_departure_time ERROR 3

stop_time_with_arrival_before_previous_departure_time

Backwards time travel between stops in stop_times.txt

For a given trip_id, the arrival_time of (n+1)-th stoptime in sequence must not precede the departure_time of n-th stoptime in sequence in stop_times.txt.

You can see more about this notice here.

csvRowNumber (?) The row number of the faulty record. prevCsvRowNumber (?) The row of the previous stop time. tripId (?) The trip_id associated to the faulty record. arrivalTime (?) Arrival time at the faulty record. departureTime (?) Departure time at the previous stop time.
41660 41659 "2718" "33:01:00" "33:49:00"
41729 41728 "2721" "33:01:00" "33:49:00"
59659 59658 "4026" "22:08:00" "22:42:00"
expired_calendar WARNING 2924

expired_calendar

Dataset should not contain date ranges for services that have already expired.

This warning takes into account the calendar_dates.txt file as well as the calendar.txt file.

You can see more about this notice here.

Only the first 50 of 2924 affected records are displayed below.

csvRowNumber (?) The row of the faulty record. serviceId (?) The service id of the faulty record.
2 "0"
142 "1"
319 "2"
434 "3"
610 "4"
636 "5"
857 "6"
1065 "7"
1189 "8"
1308 "9"
1401 "10"
1412 "11"
1420 "12"
1467 "13"
1476 "14"
1699 "15"
1751 "16"
1754 "17"
1756 "18"
1781 "19"
1909 "20"
1933 "21"
1934 "22"
1935 "23"
1937 "24"
1991 "25"
2093 "26"
2094 "27"
2099 "28"
2107 "29"
2113 "30"
2120 "31"
2123 "32"
2127 "33"
2130 "34"
2132 "35"
2156 "36"
2157 "37"
2160 "38"
2163 "39"
2167 "40"
2168 "41"
2169 "42"
2170 "43"
2193 "44"
2279 "45"
2280 "46"
2299 "47"
2322 "48"
2346 "49"
feed_expiration_date7_days WARNING 1

feed_expiration_date7_days

Dataset should be valid for at least the next 7 days.

The dataset expiration date defined in feed_info.txt is in seven days or less. At any time, the published GTFS dataset should be valid for at least the next 7 days.

You can see more about this notice here.

csvRowNumber (?) The row number of the faulty record. currentDate (?) Current date (YYYYMMDD format). feedEndDate (?) Feed end date (YYYYMMDD format). suggestedExpirationDate (?) Suggested expiration date (YYYYMMDD format).
2 "20260116" "20191215" "20260123"
missing_feed_contact_email_and_url WARNING 1

missing_feed_contact_email_and_url

Best Practices for feed_info.txt suggest providing at least one of feed_contact_email and feed_contact_url.

You can see more about this notice here.

csvRowNumber (?) The row number of the validated record.
2
missing_recommended_field WARNING 1

missing_recommended_field

A recommended field is missing.

The given field has no value in some input row, even though values are recommended.

You can see more about this notice here.

filename (?) The name of the faulty file. csvRowNumber (?) The row of the faulty record. fieldName (?) The name of the missing field.
"feed_info.txt" 2 "feed_version"
non_ascii_or_non_printable_char WARNING 56

non_ascii_or_non_printable_char

Non ascii or non printable char in ID field.

A value of a field with type ID contains non ASCII or non printable characters. This is not recommended.

You can see more about this notice here.

Only the first 50 of 56 affected records are displayed below.

filename (?) Name of the faulty file. csvRowNumber (?) Row number of the faulty record. columnName (?) Name of the column where the error occurred. fieldValue (?) Faulty value.
"agency.txt" 5 "agency_id" "ÖBB"
"routes.txt" 47 "agency_id" "ÖBB"
"routes.txt" 48 "agency_id" "ÖBB"
"routes.txt" 235 "agency_id" "ÖBB"
"routes.txt" 236 "agency_id" "ÖBB"
"routes.txt" 315 "agency_id" "ÖBB"
"routes.txt" 317 "agency_id" "ÖBB"
"routes.txt" 319 "agency_id" "ÖBB"
"routes.txt" 320 "agency_id" "ÖBB"
"routes.txt" 321 "agency_id" "ÖBB"
"routes.txt" 325 "agency_id" "ÖBB"
"routes.txt" 327 "agency_id" "ÖBB"
"routes.txt" 329 "agency_id" "ÖBB"
"routes.txt" 331 "agency_id" "ÖBB"
"routes.txt" 332 "agency_id" "ÖBB"
"routes.txt" 334 "agency_id" "ÖBB"
"routes.txt" 337 "agency_id" "ÖBB"
"routes.txt" 340 "agency_id" "ÖBB"
"routes.txt" 342 "agency_id" "ÖBB"
"routes.txt" 344 "agency_id" "ÖBB"
"routes.txt" 345 "agency_id" "ÖBB"
"routes.txt" 346 "agency_id" "ÖBB"
"routes.txt" 347 "agency_id" "ÖBB"
"routes.txt" 349 "agency_id" "ÖBB"
"routes.txt" 350 "agency_id" "ÖBB"
"routes.txt" 351 "agency_id" "ÖBB"
"routes.txt" 352 "agency_id" "ÖBB"
"routes.txt" 353 "agency_id" "ÖBB"
"routes.txt" 355 "agency_id" "ÖBB"
"routes.txt" 356 "agency_id" "ÖBB"
"routes.txt" 357 "agency_id" "ÖBB"
"routes.txt" 358 "agency_id" "ÖBB"
"routes.txt" 360 "agency_id" "ÖBB"
"routes.txt" 361 "agency_id" "ÖBB"
"routes.txt" 364 "agency_id" "ÖBB"
"routes.txt" 369 "agency_id" "ÖBB"
"routes.txt" 371 "agency_id" "ÖBB"
"routes.txt" 372 "agency_id" "ÖBB"
"routes.txt" 374 "agency_id" "ÖBB"
"routes.txt" 375 "agency_id" "ÖBB"
"routes.txt" 376 "agency_id" "ÖBB"
"routes.txt" 377 "agency_id" "ÖBB"
"routes.txt" 378 "agency_id" "ÖBB"
"routes.txt" 380 "agency_id" "ÖBB"
"routes.txt" 419 "agency_id" "ÖBB"
"routes.txt" 420 "agency_id" "ÖBB"
"routes.txt" 430 "agency_id" "ÖBB"
"routes.txt" 494 "agency_id" "ÖBB"
"routes.txt" 566 "agency_id" "ÖBB"
"routes.txt" 632 "agency_id" "ÖBB"
trip_coverage_not_active_for_next7_days WARNING 1

trip_coverage_not_active_for_next7_days

Trips data should be valid for at least the next seven days.

This notice is triggered if the date range where a significant number of trips are running ends in less than 7 days.

You can see more about this notice here.

currentDate (?) Current date (YYYYMMDD format). serviceWindowStartDate (?) The start date of the majority service window. serviceWindowEndDate (?) The end date of the majority service window.
"20260116" "20181209" "20191214"
unknown_file INFO 1

unknown_file

A file is unknown.

You can see more about this notice here.

filename (?) The name of the unknown file.
"README.md"