GTFS Schedule Validation Report

This report was generated by the Canonical GTFS Schedule validator, version 5.0.1 at 2024-06-07T16:36:45Z,
for the dataset file:///tmp/1_in.zip. No country code was provided.

Use this report alongside our documentation.

Summary

Agencies included


Feed Info


Publisher Name:
N/A
Publisher URL:
N/A
Feed Language:
N/A

Files included


  1. agency.txt
  2. calendar.txt
  3. calendar_dates.txt
  4. routes.txt
  5. shapes.txt
  6. stop_times.txt
  7. stops.txt
  8. trips.txt

Counts


  • Agencies: 1
  • Blocks: 1
  • Routes: 11
  • Shapes: 25
  • Stops: 472
  • Trips: 598

GTFS Features included (?) GTFS features provide a standardized vocabulary to define and describe features that are officially adopted in GTFS.


ShapesRoute ColorsHeadsignsWheelchair AccessibilityLocation Types

Specification Compliance report

11921 notices reported (0 errors, 11919 warnings, 2 infos)

Notice Code Severity Total
equal_shape_distance_diff_coordinates_distance_below_threshold WARNING 630

equal_shape_distance_diff_coordinates_distance_below_threshold

Two consecutive points have equal shape_dist_traveled and different lat/lon coordinates in shapes.txt and the distance between the two points is less than 1.11m.

When sorted by shape.shape_pt_sequence, the values for shape_dist_traveled must increase along a shape. Two consecutive points with equal values for shape_dist_traveled and small difference of coordinates (less than 1.11 m distance) result in a warning.

You can see more about this notice here.

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

shapeId (?) The id of the faulty shape. csvRowNumber (?) The row number from `shapes.txt`. shapeDistTraveled (?) The faulty record's `shape_dist_traveled` value. shapePtSequence (?) The faulty record's `shapes.shape_pt_sequence`. prevCsvRowNumber (?) The row number from `shapes.txt` of the previous shape point. prevShapeDistTraveled (?) The previous shape point's `shape_dist_traveled` value. prevShapePtSequence (?) The previous record's `shapes.shape_pt_sequence`. actualDistanceBetweenShapePoints (?) Actual distance traveled along the shape from the first shape point to the previous shape point.
"zenbus:Route:727310001:LOC" 3880 2572.0 97 3879 2572.0 96 0.343000887698041
"zenbus:Route:727310001:LOC" 3934 4123.0 151 3933 4123.0 150 0.34299705885586773
"zenbus:Route:727310001:LOC" 3946 4612.0 163 3945 4612.0 162 0.36979290959821665
"zenbus:Route:725470001:LOC" 3538 3759.0 132 3537 3759.0 131 0.2394704337866076
"zenbus:Route:725470001:LOC" 3549 4060.0 143 3548 4060.0 142 0.7982338065046312
"zenbus:Route:725470001:LOC" 3567 4520.0 161 3566 4520.0 160 0.3430017344517944
"zenbus:Route:893910054:LOC" 1673 878.0 25 1672 878.0 24 0.15976036655315212
"zenbus:Route:893910054:LOC" 1674 878.0 26 1673 878.0 25 0.11119510161714974
"zenbus:Route:893910054:LOC" 1676 879.0 28 1675 879.0 27 0.23964055786661306
"zenbus:Route:893910054:LOC" 1677 879.0 29 1676 879.0 28 0.1597603720169351
"zenbus:Route:893910054:LOC" 1679 880.0 31 1678 880.0 30 0.3892954038495093
"zenbus:Route:893910054:LOC" 1688 1229.0 40 1687 1229.0 39 0.11119510161714974
"zenbus:Route:893910054:LOC" 1690 1230.0 42 1689 1230.0 41 0.0798830885640263
"zenbus:Route:893910054:LOC" 1691 1230.0 43 1690 1230.0 42 0.15976617706453447
"zenbus:Route:893910054:LOC" 1692 1230.0 44 1691 1230.0 43 0.07988308862754442
"zenbus:Route:893910054:LOC" 1694 1231.0 46 1693 1231.0 45 0.0798830885640263
"zenbus:Route:893910054:LOC" 1701 1442.0 53 1700 1442.0 52 0.07988485166215065
"zenbus:Route:893910054:LOC" 1703 1443.0 55 1702 1443.0 54 0.07988485301213331
"zenbus:Route:893910054:LOC" 1704 1443.0 56 1703 1443.0 55 0.2738316307620706
"zenbus:Route:893910054:LOC" 1705 1443.0 57 1704 1443.0 56 0.26419436592444584
"zenbus:Route:893910054:LOC" 1742 2414.0 94 1741 2414.0 93 0.31957253879088254
"zenbus:Route:893910054:LOC" 1757 3001.0 109 1756 3001.0 108 0.44478040505395056
"zenbus:Route:893910054:LOC" 1759 3002.0 111 1758 3002.0 110 0.11119510161714974
"zenbus:Route:893910054:LOC" 1760 3002.0 112 1759 3002.0 111 0.22239020181965108
"zenbus:Route:893910054:LOC" 1761 3002.0 113 1760 3002.0 112 0.451900037484866
"zenbus:Route:893910054:LOC" 1774 3205.0 126 1773 3205.0 125 0.11119510090982554
"zenbus:Route:893910054:LOC" 1775 3205.0 127 1774 3205.0 126 0.07990111050163118
"zenbus:Route:893910054:LOC" 1776 3205.0 128 1775 3205.0 127 0.15980222081266499
"zenbus:Route:893910054:LOC" 1778 3206.0 130 1777 3206.0 129 0.07990111050163118
"zenbus:Route:893910054:LOC" 1779 3206.0 131 1778 3206.0 130 0.15980222081266499
"zenbus:Route:893910054:LOC" 1780 3206.0 132 1779 3206.0 131 0.13692530067539677
"zenbus:Route:893910054:LOC" 1795 3538.0 147 1794 3538.0 146 0.3430211522493001
"zenbus:Route:893910054:LOC" 1796 3538.0 148 1795 3538.0 147 0.19468378780672485
"zenbus:Route:893910054:LOC" 1798 3539.0 150 1797 3539.0 149 0.11119510161714974
"zenbus:Route:893910054:LOC" 1799 3539.0 151 1798 3539.0 150 0.11119510090982554
"zenbus:Route:893910054:LOC" 1806 3828.0 158 1805 3828.0 157 0.22239020252697528
"zenbus:Route:893910054:LOC" 1808 3829.0 160 1807 3829.0 159 0.22239020252697528
"zenbus:Route:893910054:LOC" 1809 3829.0 161 1808 3829.0 160 0.3335853034368008
"zenbus:Route:893910054:LOC" 1810 3829.0 162 1809 3829.0 161 0.11119510090982554
"zenbus:Route:893910054:LOC" 1812 3830.0 164 1811 3830.0 163 0.22239020252697528
"zenbus:Route:893910054:LOC" 1820 4035.0 172 1819 4035.0 171 0.22239020252697528
"zenbus:Route:893910054:LOC" 1821 4035.0 173 1820 4035.0 172 0.3335853034368008
"zenbus:Route:893910054:LOC" 1822 4035.0 174 1821 4035.0 173 0.11119510090982554
"zenbus:Route:893910054:LOC" 1823 4035.0 175 1822 4035.0 174 0.22239020252697528
"zenbus:Route:893910054:LOC" 1860 5311.0 212 1859 5311.0 211 0.2738362474063173
"zenbus:Route:893910054:LOC" 1861 5311.0 213 1860 5311.0 212 0.3335853034368008
"zenbus:Route:893910054:LOC" 1862 5311.0 214 1861 5311.0 213 0.11119510232447394
"zenbus:Route:893910054:LOC" 1863 5311.0 215 1862 5311.0 214 0.11119510090982554
"zenbus:Route:893910054:LOC" 1864 5311.0 216 1863 5311.0 215 0.13691811858346922
"zenbus:Route:893910054:LOC" 1881 5659.0 233 1880 5659.0 232 0.7988484356860608
missing_recommended_file WARNING 1

missing_recommended_file

A recommended file is missing.

You can see more about this notice here.

filename (?) The name of the faulty file.
"feed_info.txt"
missing_timepoint_value WARNING 11208

missing_timepoint_value

stop_times.timepoint value is missing for a record.

Even though the column timepoint is optional in stop_times.txt according to the specification, stop_times.timepoint should not be empty when provided.

You can see more about this notice here.

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

csvRowNumber (?) The row number of the faulty record. tripId (?) The faulty record's `stop_times.trip_id`. stopSequence (?) The faulty record's `stop_times.stop_sequence`.
2 "715820010:0" 0
3 "715820010:0" 1
4 "715820010:0" 2
5 "715820010:0" 3
6 "715820010:0" 4
7 "715820010:0" 5
8 "715820010:0" 6
9 "715820010:0" 7
10 "715820010:0" 8
11 "715820010:0" 9
12 "715820010:0" 10
13 "715820010:0" 11
14 "715820010:0" 12
15 "715820010:0" 13
16 "715820010:0" 14
17 "715820010:0" 15
18 "715820010:0" 16
19 "715820010:0" 17
20 "715820010:0" 18
21 "715820010:0" 19
22 "715820010:0" 20
23 "715820010:0" 21
24 "715820010:0" 22
25 "715820010:0" 23
26 "715820010:0" 24
27 "715820010:0" 25
28 "715820010:0" 26
29 "715820010:0" 27
30 "715820010:1" 0
31 "715820010:1" 1
32 "715820010:1" 2
33 "715820010:1" 3
34 "715820010:1" 4
35 "715820010:1" 5
36 "715820010:1" 6
37 "715820010:1" 7
38 "715820010:1" 8
39 "715820010:1" 9
40 "715820010:1" 10
41 "715820010:1" 11
42 "715820010:1" 12
43 "715820010:1" 13
44 "715820010:1" 14
45 "715820010:1" 15
46 "715820010:1" 16
47 "715820010:1" 17
48 "715820010:1" 18
49 "715820010:1" 19
50 "715820010:1" 20
51 "715820010:1" 21
mixed_case_recommended_field WARNING 65

mixed_case_recommended_field

This field has customer-facing text and should use Mixed Case (should contain upper and lower case letters).

This field contains customer-facing text and should use Mixed Case (upper and lower case letters) to ensure good readability when displayed to riders. Avoid the use of abbreviations throughout the feed (e.g. St. for Street) unless a location is called by its abbreviated name (e.g. “JFK Airport”). Abbreviations may be problematic for accessibility by screen reader software and voice user interfaces.

Good examples:
Field Text Dataset
"Schwerin, Hauptbahnhof" Verkehrsverbund Berlin-Brandenburg
"Red Hook/Atlantic Basin" NYC Ferry
"Campo Grande Norte" Carris
Bad examples:
Field Text
"GALLERIA MALL"
"3427 GG 17"
"21 Clark Rd Est"

You can see more about this notice here.

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

filename (?) Name of the faulty file. fieldName (?) Name of the faulty field. fieldValue (?) Faulty value. csvRowNumber (?) The row number of the faulty record.
"trips.txt" "trip_short_name" "trip_1" 489
"trips.txt" "trip_short_name" "trip_2" 490
"trips.txt" "trip_short_name" "trip_3" 491
"trips.txt" "trip_short_name" "trip_4" 492
"trips.txt" "trip_short_name" "trip_5" 493
"trips.txt" "trip_short_name" "trip_6" 494
"trips.txt" "trip_short_name" "trip_7" 495
"trips.txt" "trip_short_name" "trip_8" 496
"trips.txt" "trip_short_name" "trip_9" 497
"trips.txt" "trip_short_name" "trip_10" 498
"trips.txt" "trip_short_name" "trip_11" 499
"trips.txt" "trip_short_name" "trip_12" 500
"trips.txt" "trip_short_name" "trip_13" 501
"trips.txt" "trip_short_name" "trip_14" 502
"trips.txt" "trip_short_name" "trip_15" 503
"trips.txt" "trip_short_name" "trip_16" 504
"trips.txt" "trip_short_name" "trip_17" 505
"trips.txt" "trip_short_name" "trip_18" 506
"trips.txt" "trip_short_name" "trip_19" 507
"trips.txt" "trip_short_name" "trip_20" 508
"trips.txt" "trip_short_name" "trip_21" 509
"trips.txt" "trip_short_name" "trip_22" 510
"trips.txt" "trip_short_name" "trip_23" 511
"trips.txt" "trip_short_name" "trip_24" 512
"trips.txt" "trip_short_name" "trip_25" 513
"trips.txt" "trip_short_name" "trip_26" 514
"trips.txt" "trip_short_name" "trip_27" 515
"trips.txt" "trip_short_name" "trip_28" 516
"trips.txt" "trip_short_name" "trip_29" 517
"trips.txt" "trip_short_name" "trip_30" 518
"trips.txt" "trip_short_name" "trip_31" 519
"trips.txt" "trip_short_name" "trip_32" 520
"trips.txt" "trip_short_name" "trip_33" 521
"trips.txt" "trip_short_name" "trip_34" 522
"trips.txt" "trip_short_name" "trip_35" 523
"trips.txt" "trip_short_name" "trip_36" 524
"trips.txt" "trip_short_name" "trip_37" 525
"trips.txt" "trip_short_name" "trip_38" 526
"trips.txt" "trip_short_name" "trip_39" 527
"trips.txt" "trip_short_name" "trip_40" 528
"trips.txt" "trip_short_name" "trip_41" 529
"trips.txt" "trip_short_name" "trip_42" 530
"trips.txt" "trip_short_name" "trip_43" 531
"trips.txt" "trip_short_name" "trip_44" 532
"trips.txt" "trip_short_name" "trip_56" 578
"trips.txt" "trip_short_name" "trip_57" 579
"trips.txt" "trip_short_name" "trip_58" 580
"trips.txt" "trip_short_name" "trip_59" 581
"trips.txt" "trip_short_name" "trip_60" 582
"trips.txt" "trip_short_name" "trip_61" 583
non_ascii_or_non_printable_char WARNING 12

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.

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" 2 "agency_id" "ville d'Alès"
"routes.txt" 2 "agency_id" "ville d'Alès"
"routes.txt" 3 "agency_id" "ville d'Alès"
"routes.txt" 4 "agency_id" "ville d'Alès"
"routes.txt" 5 "agency_id" "ville d'Alès"
"routes.txt" 6 "agency_id" "ville d'Alès"
"routes.txt" 7 "agency_id" "ville d'Alès"
"routes.txt" 8 "agency_id" "ville d'Alès"
"routes.txt" 9 "agency_id" "ville d'Alès"
"routes.txt" 10 "agency_id" "ville d'Alès"
"routes.txt" 11 "agency_id" "ville d'Alès"
"routes.txt" 12 "agency_id" "ville d'Alès"
route_long_name_contains_short_name WARNING 3

route_long_name_contains_short_name

Long name should not contain short name for a single route.

In routes.txt, route_long_name should not contain the value for route_short_name, because when both are provided, they are often combined by transit applications. Note that only one of the two fields is required. If there is no short name used for a route, use route_long_name only.

Good examples:

route_short_name/route_long_name Dataset
"N"/"Judah" Muni San Fransisco
"6"/"ML King Jr Blvd" Trimet Portland Streetcar
"55"/"Boulevard Saint Laurent" STM Montreal
"1"/"Rangiora/Cashmere" Metro Christchurch

Bad examples:

route_short_name/route_long_name
"604"/"604"
"14"/"Route 14"
"2"/"Route 2: Bellows Falls In-Town"

You can see more about this notice here.

routeId (?) The id of the faulty record. csvRowNumber (?) The row number of the faulty record. routeShortName (?) The faulty record's `route_short_name`. routeLongName (?) The faulty record's `route_long_name`.
"zenbus:Line:359610003:LOC" 5 "Ales'y" "Ales'y Bleue"
"zenbus:Line:365440001:LOC" 9 "Ales'y" "Ales'y Orange"
"zenbus:Line:351630001:LOC" 11 "Ales'y" "Ales'y Verte"
unknown_column INFO 2

unknown_column

A column name is unknown.

You can see more about this notice here.

filename (?) The name of the faulty file. fieldName (?) The name of the unknown column. index (?) The index of the faulty column.
"trips.txt" "zenbus_mission_id" 11
"trips.txt" "trip_headsign_code" 12