GTFS Schedule Validation Report

This report was generated by the Canonical GTFS Schedule validator, version 5.0.1 at 2024-09-14T18:19:17Z,
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. transfers.txt
  9. trips.txt

Counts


  • Agencies: 1
  • Blocks: 1
  • Routes: 445
  • Shapes: 2243
  • Stops: 10171
  • Trips: 3456

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


TransfersShapesRoute ColorsHeadsignsWheelchair AccessibilityLocation Types

Specification Compliance report

13950 notices reported (0 errors, 13950 warnings, 0 infos)

Notice Code Severity Total
equal_shape_distance_diff_coordinates_distance_below_threshold WARNING 2253

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 2253 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.
"CALC_1459069" 695253 13615.0 587 695252 13615.0 586 0.7774161637402641
"CALC_1459072" 696758 7027.0 281 696757 7027.0 280 0.9183205158985692
"CALC_1459074" 697841 10196.0 416 697840 10196.0 415 0.7071635865235242
"CALC_1460052" 1282032 21162.0 1482 1282031 21162.0 1481 0.6036629281680566
"CALC_1460052" 1282692 31547.0 2142 1282691 31547.0 2141 0.2720922157468689
"CALC_1459075" 698355 7552.0 303 698354 7552.0 302 0.6034480970520203
"CALC_1460053" 1283002 1264.0 45 1283001 1264.0 44 0.45048910427496214
"CALC_1460053" 1283830 15766.0 873 1283829 15766.0 872 0.6036629281680566
"CALC_1460050" 1278612 31410.0 1604 1278611 31410.0 1603 0.22239020252697528
"CALC_1460051" 1280383 31410.0 1604 1280382 31410.0 1603 0.22239020252697528
"CALC_1460056" 1290122 10423.0 764 1290121 10423.0 763 0.4074379462262638
"CALC_1460057" 1291549 8038.0 578 1291548 8038.0 577 0.7940331987927823
"CALC_1460057" 1291791 14842.0 820 1291790 14842.0 819 0.5776625439274569
"CALC_1460057" 1291807 15224.0 836 1291806 15224.0 835 0.4074379462262638
"CALC_1460054" 1286006 13118.0 1067 1286005 13118.0 1066 0.6717594449595727
"CALC_1460054" 1286257 16808.0 1318 1286256 16808.0 1317 0.5920891256121543
"CALC_1460055" 1286992 1264.0 45 1286991 1264.0 44 0.45048910427496214
"CALC_1460055" 1287820 15766.0 873 1287819 15766.0 872 0.6036629281680566
"CALC_1460055" 1288979 29491.0 2032 1288978 29491.0 2031 0.5032047881871963
"CALC_1460058" 1293374 11344.0 834 1293373 11344.0 833 0.4074379462262638
"CALC_1460059" 1294801 8038.0 578 1294800 8038.0 577 0.7940331987927823
"CALC_1460059" 1295043 14842.0 820 1295042 14842.0 819 0.5776625439274569
"CALC_1460059" 1295059 15224.0 836 1295058 15224.0 835 0.4074379462262638
"CALC_1459060" 690520 23681.0 841 690519 23681.0 840 0.7774161637402641
"CALC_1459063" 691747 3975.0 209 691746 3975.0 208 0.8381270556630983
"CALC_1459064" 692457 10382.0 318 692456 10382.0 317 0.8619380709872607
"CALC_1460042" 1260500 40048.0 2311 1260499 40048.0 2310 0.22239020252697528
"CALC_1460042" 1260505 40081.0 2316 1260504 40081.0 2315 0.6800968975753997
"CALC_1460040" 1256572 49328.0 1279 1256571 49328.0 1278 0.6717692085467638
"CALC_1460040" 1256930 56469.0 1637 1256929 56469.0 1636 0.8393714829221339
"CALC_1460040" 1257077 58876.0 1784 1257076 58876.0 1783 0.5211126448324745
"CALC_1460045" 1267613 36021.0 1844 1267612 36021.0 1843 0.4504891042749622
"CALC_1460043" 1261478 10225.0 811 1261477 10225.0 810 0.6479553726529784
"CALC_1460043" 1263124 42273.0 2457 1263123 42273.0 2456 0.22239020252697528
"CALC_1460043" 1263129 42306.0 2462 1263128 42306.0 2461 0.6800968975753997
"CALC_1460043" 1263247 45089.0 2580 1263246 45089.0 2579 0.4504891042749622
"CALC_1460044" 1265602 40048.0 2311 1265601 40048.0 2310 0.22239020252697528
"CALC_1460044" 1265607 40081.0 2316 1265606 40081.0 2315 0.6800968975753997
"CALC_1459097" 709761 2961.0 157 709760 2961.0 156 0.45616354234760065
"CALC_1459098" 710045 4356.0 141 710044 4356.0 140 0.45616354234760065
"CALC_1459099" 710466 10102.0 288 710465 10102.0 287 0.3825777224653042
"CALC_1460078" 1313161 12202.0 692 1313160 12202.0 691 0.23594138520716654
"CALC_1460079" 1314237 5980.0 423 1314236 5980.0 422 0.3690063067395282
"CALC_1460079" 1314393 8959.0 579 1314392 8959.0 578 0.895769155605332
"CALC_1460079" 1314496 10189.0 682 1314495 10189.0 681 0.7099193574195538
"CALC_1460076" 1309350 547.0 39 1309349 547.0 38 0.8725779473248623
"CALC_1460076" 1309621 5130.0 310 1309620 5130.0 309 0.6041941811529472
"CALC_1460076" 1310096 13778.0 785 1310095 13778.0 784 0.7831340163499002
"CALC_1460077" 1310783 5573.0 311 1310782 5573.0 310 0.7831340163499002
"CALC_1460077" 1310987 8168.0 515 1310986 8168.0 514 0.23594138520716654
fast_travel_between_consecutive_stops WARNING 2

fast_travel_between_consecutive_stops

A transit vehicle moves too fast between two consecutive stops.

The speed threshold depends on route type:

Route type Description Threshold, km/h
0 Light rail 100
1 Subway 150
2 Rail 500
3 Bus 150
4 Ferry 80
5 Cable tram 30
6 Aerial lift 50
7 Funicular 50
11 Trolleybus 150
12 Monorail 150
- Unknown 200

You can see more about this notice here.

tripCsvRowNumber (?) The row number of the problematic trip. tripId (?) `trip_id` of the problematic trip. routeId (?) `route_id` of the problematic trip. speedKph (?) Travel speed (km/h). distanceKm (?) Distance between stops (km). csvRowNumber1 (?) The row number of the first stop time. stopSequence1 (?) `stop_sequence` of the first stop. stopId1 (?) `stop_id` of the first stop. stopName1 (?) `stop_name` of the first stop. departureTime1 (?) `departure_time` of the first stop. csvRowNumber2 (?) The row number of the second stop time. stopSequence2 (?) `stop_sequence` of the second stop. stopId2 (?) `stop_id` of the second stop. stopName2 (?) `stop_name` of the second stop. arrivalTime2 (?) `arrival_time` of the second stop.
1633 "GRE0408|1" "GRE04" 237.24081383200783 11.862040691600392 15937 16 "15465" "POMPIERS" "19:32:00" 15938 17 "14799" "LE PLAN" "19:34:00"
1222 "SEG0211|1" "SEG02" 191.63815534491033 3.1939692557485055 11594 10 "20104" "LA BRETONNIERE" "12:50:00" 11595 11 "14029" "LE BOURG" "12:50:00"
fast_travel_between_far_stops WARNING 1

fast_travel_between_far_stops

A transit vehicle moves too fast between two far stops.

Two stops are considered "far" if they are more than 10 km apart. This normally indicates a more serious problem than too fast travel between consecutive stops.

The speed threshold depends on route type and are the same as fast_travel_between_consecutive_stops.

You can see more about this notice here.

tripCsvRowNumber (?) The row number of the problematic trip. tripId (?) `trip_id` of the problematic trip. routeId (?) `route_id` of the problematic trip. speedKph (?) Travel speed (km/h). distanceKm (?) Distance between stops (km). csvRowNumber1 (?) The row number of the first stop time. stopSequence1 (?) `stop_sequence` of the first stop. stopId1 (?) `stop_id` of the first stop. stopName1 (?) `stop_name` of the first stop. departureTime1 (?) `departure_time` of the first stop. csvRowNumber2 (?) The row number of the second stop time. stopSequence2 (?) `stop_sequence` of the second stop. stopId2 (?) `stop_id` of the second stop. stopName2 (?) `stop_name` of the second stop. arrivalTime2 (?) `arrival_time` of the second stop.
1633 "GRE0408|1" "GRE04" 237.24081383200783 11.862040691600392 15937 16 "15465" "POMPIERS" "19:32:00" 15938 17 "14799" "LE PLAN" "19:34:00"
missing_recommended_column WARNING 1

missing_recommended_column

A recommended column is missing in the input file.

You can see more about this notice here.

filename (?) The name of the faulty file. fieldName (?) The name of the missing column.
"stop_times.txt" "timepoint"
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"
mixed_case_recommended_field WARNING 11676

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 11676 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.
"routes.txt" "route_long_name" "ST ROMAIN DE JALIONAS-BOURGOIN" 2
"routes.txt" "route_long_name" "MORESTEL-SALAGNON-BOURGOIN JALLIEU" 3
"routes.txt" "route_long_name" "VAUJANY-OZ-ALLEMONT-BOURG D'OISANS" 4
"routes.txt" "route_long_name" "LA PAUTE-BOURG D'OISANS" 5
"routes.txt" "route_long_name" "PRIMAIRE VENOSC" 6
"routes.txt" "route_long_name" "LE BASSEY-LE VERT-BOURG D'OISANS" 7
"routes.txt" "route_long_name" "VENOSC-BOURG D'OISANS" 8
"routes.txt" "route_long_name" "ORNON-BOURG D'OISANS" 9
"routes.txt" "route_long_name" "AURIS-MIZOEN-LE FRENEY-BOURG D'OISANS" 10
"routes.txt" "route_long_name" "CORDEAC-ST SEBASTIEN-ST JEAN D'HERANS (C" 11
"routes.txt" "route_long_name" "RPI LALLEY-ST MAURICE-MONESTIER DU PERCY" 12
"routes.txt" "route_long_name" "PRIMAIRE LE PERCY-CLELLES" 13
"routes.txt" "route_long_name" "COL DE ST SEBASTIEN-MENTEYRE-MENS" 14
"routes.txt" "route_long_name" "ST MAURICE EN TRIEVES-PREBOIS-MENS" 15
"routes.txt" "route_long_name" "LE PERCY-PREBOIS (CORRES. MENS)" 16
"routes.txt" "route_long_name" "PRIMAIRE MONESTIER DU PERCY-ST MAURICE E" 17
"routes.txt" "route_long_name" "ST JEAN D'HERANS-MENS" 18
"routes.txt" "route_long_name" "CHICHILIANNE-CLELLES-MENS" 19
"routes.txt" "route_long_name" "ST BAUDILLE ET PIPET (LE PERRIER)-MENS" 20
"routes.txt" "route_long_name" "ST MARTIN DE CLELLES-CLELLES ECOLES" 21
"routes.txt" "route_long_name" "CORDEAC-SAINT SEBASTIEN-MENS" 22
"routes.txt" "route_long_name" "NANTES EN RATIER-ST HONORE-LA MURE" 23
"routes.txt" "route_long_name" "PRIMAIRE SUSVILLE" 24
"routes.txt" "route_long_name" "ST JULIEN DE RATZ-ST JOSEPH DE RIVIERE" 25
"routes.txt" "route_long_name" "PRIMAIRE LIVET ET GAVET" 26
"routes.txt" "route_long_name" "ST NIZIER-LANS EN V.-VILLARD DE LANS" 27
"routes.txt" "route_long_name" "LA MOTTE ST MARTIN-LA MOTTE D'AVEILLANS" 28
"routes.txt" "route_long_name" "LAFFREY-LA MOTTE D'AVEILLANS" 29
"routes.txt" "route_long_name" "PRIMAIRE L'ALPE-D'HUEZ" 30
"routes.txt" "route_long_name" "VIZILLE-LAFFREY-SUSVILLE-LA MURE" 31
"routes.txt" "route_long_name" "PRIMAIRE VAUJANY-ALLEMONT" 32
"routes.txt" "route_long_name" "CREMIEU-SOLEYMIEU-MORESTEL" 33
"routes.txt" "route_long_name" "ST GEOIRE EN VALDAINE-PONT DE BEAUVOISIN" 34
"routes.txt" "route_long_name" "BIZONNES-OYEU-VOIRON" 35
"routes.txt" "route_long_name" "LA FRETTE-COLOMBE-VOIRON" 36
"routes.txt" "route_long_name" "BOURG D'OISANS-VIZILLE" 37
"routes.txt" "route_long_name" "LA MURE-LAFFREY-VIZILLE" 38
"routes.txt" "route_long_name" "LA MURE-LA MOTTE D'AVEILLANS-VIZILLE" 39
"routes.txt" "route_long_name" "VIENNE-GRENOBLE" 40
"routes.txt" "route_long_name" "ARTAS-SAINT JEAN DE BOURNAY" 41
"routes.txt" "route_long_name" "VILLETTE D'ANTHON-TIGNIEU JAMEYZIEU" 42
"routes.txt" "route_long_name" "RPI NOTRE DAME DE VAULX-ST JEAN DE VAULX" 43
"routes.txt" "route_long_name" "COLOMBE-LE GRAND LEMPS" 44
"routes.txt" "route_long_name" "RIOUPEROUX-LIVET-BOURG D'OISANS" 45
"routes.txt" "route_long_name" "ST ROMAIN JALIONAS-ANTHON-GENAS (AZIEU)" 46
"routes.txt" "route_long_name" "BEAULIEU-VINAY" 47
"routes.txt" "route_long_name" "RPI ST GERVAIS-ROVON-COGNIN" 48
"routes.txt" "route_long_name" "COGNIN-ROVON-ST GERVAIS-VINAY" 49
"routes.txt" "route_long_name" "RPI TECHE-BEAULIEU" 50
"routes.txt" "route_long_name" "RPI BEAULIEU-TECHE" 51
stop_too_far_from_shape WARNING 13

stop_too_far_from_shape

Stop too far from trip shape.

Per GTFS Best Practices, route alignments (in shapes.txt) should be within 100 meters of stop locations which a trip serves. This potentially indicates a problem with the location of the stop or the path of the shape.

You can see more about this notice here.

tripCsvRowNumber (?) The row number of the faulty record from `trips.txt`. shapeId (?) The id of the shape that is referred to. tripId (?) The id of the trip that is referred to. stopTimeCsvRowNumber (?) The row number of the faulty record from `stop_times.txt`. stopId (?) The id of the stop that is referred to. stopName (?) The name of the stop that is referred to. match (?) Latitude and longitude pair of the location. geoDistanceToShape (?) Distance from stop to shape.
109 "CALC_1458173" "BEA0412|1" 1095 "14571" "LES PICHONNIERES" [45.370698797041044,4.952023039874461] 109.44096669322256
1894 "CALC_1459921" "T2301|1" 19186 "19887" "ROND-POINT NORD" [45.820536000000004,5.406123999999999] 114.4032929619464
502 "CALC_1458480" "MOI0103|2" 4831 "14091" "FONTBESSET-PISCICULTURE" [45.288852999999996,5.570932] 117.0989879104979
505 "CALC_1458483" "MOI0106|1" 4871 "14090" "FONTBESSET-PISCICULTURE" [45.288852999999996,5.570932] 116.99450460245805
341 "CALC_1458355" "IDB0305|1" 3230 "18616" "CAFE GIROUD" [45.653428,5.20176] 118.15520017347217
340 "CALC_1458356" "IDB0302|1" 3219 "18617" "CAFE GIROUD" [45.653428,5.20176] 134.29038614498526
343 "CALC_1458357" "IDB0307|1" 3267 "18616" "CAFE GIROUD" [45.653428,5.20176] 118.15520017347217
996 "CALC_1458891" "PSQIA01|1" 9475 "14091" "FONTBESSET-PISCICULTURE" [45.288852999999996,5.570932] 117.0989879104979
995 "CALC_1458890" "PSQIA00|1" 9463 "14091" "FONTBESSET-PISCICULTURE" [45.288852999999996,5.570932] 117.0989879104979
1368 "CALC_1459188" "TUL0203|1" 12921 "14091" "FONTBESSET-PISCICULTURE" [45.288852999999996,5.570932] 117.0989879104979
1366 "CALC_1459189" "TUL0200|1" 12882 "14091" "FONTBESSET-PISCICULTURE" [45.288852999999996,5.570932] 117.0989879104979
1367 "CALC_1459190" "TUL0201|2" 12900 "14091" "FONTBESSET-PISCICULTURE" [45.288852999999996,5.570932] 117.0989879104979
3269 "CALC_1460533" "T2407|1" 46017 "19011" "Z.A. DU BERT" [45.627291,5.581615000000001] 102.4631753297564
stops_match_shape_out_of_order WARNING 3

stops_match_shape_out_of_order

Two stop entries are different than their arrival-departure order defined by shapes.txt.

This could indicate a problem with the location of the stops, the path of the shape, or the sequence of the stops for their trip.

You can see more about this notice here.

tripCsvRowNumber (?) The row number of the faulty record from `trips.txt`. shapeId (?) The id of the shape that is referred to. tripId (?) The id of the trip that is referred to. stopTimeCsvRowNumber1 (?) The row number of the first faulty record from `stop_times.txt`. stopId1 (?) The id of the first stop that is referred to. stopName1 (?) The name of the first stop that is referred to. match1 (?) Latitude and longitude pair of the first matching location. stopTimeCsvRowNumber2 (?) The row number of the second faulty record from `stop_times.txt`. stopId2 (?) The id of the second stop that is referred to. stopName2 (?) The name of the second stop that is referred to. match2 (?) Latitude and longitude pair of the second matching location.
2633 "CALC_1460219" "T1500|9" 34033 "20367" "LE LICHOUD RD18" [45.63495772564318,5.244176072139885] 34032 "20366" "LE LICHOUD RD18" [45.63493580162346,5.244370890504182]
2660 "CALC_1460227" "T1512|1" 34414 "20367" "LE LICHOUD RD18" [45.63495772564318,5.244176072139885] 34413 "20366" "LE LICHOUD RD18" [45.63493580162346,5.244370890504182]
2655 "CALC_1460221" "T1506|1" 34369 "20367" "LE LICHOUD RD18" [45.63495772564318,5.244176072139885] 34368 "20366" "LE LICHOUD RD18" [45.63493580162346,5.244370890504182]