GTFS Schedule Validation Report

This report was generated by the Canonical GTFS Schedule validator, version 7.1.0 at 2025-12-12T20:20:27Z,
for the dataset file:///shared/trailways-adp.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 Email:
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: 0
  • Blocks: 0
  • Routes: 13
  • Shapes: 13
  • Stops: 15
  • Trips: 13

Specification Compliance report

757 notices reported (12 errors, 745 warnings, 0 infos)

Notice Code Severity Total
trip_distance_exceeds_shape_distance ERROR 12

trip_distance_exceeds_shape_distance

The distance between the last shape point and last stop point is greater than or equal to the 11.1m threshold.

You can see more about this notice here.

tripId (?) The faulty record's trip id. shapeId (?) The faulty record's shape id. maxTripDistanceTraveled (?) The faulty record's trip max distance traveled. maxShapeDistanceTraveled (?) The faulty record's shape max distance traveled. geoDistanceToShape (?) The distance in meters between the shape and the stop.
"6639086fa72a11ea927f4b04c20a6aaa" "6639086fa72a11ea927f4b04c20a6aaa_0" 240809.2 240741.71 36.3256769670727
"768b0ef4b54f11ea927fc3fcb24ccff7" "768b0ef4b54f11ea927fc3fcb24ccff7_0" 236005.4 235939.18 28.108277793572533
"d50dcdb3dc9911eabb75bfad239adf8f" "d50dcdb3dc9911eabb75bfad239adf8f_0" 246754.3 246685.09 28.108277793572533
"dbad52bfe60711eabb75dda2ec248f78" "dbad52bfe60711eabb75dda2ec248f78_0" 240809.2 240741.71 36.3256769670727
"37b7c55a413311eb9d4563ff9428e8fa" "37b7c55a413311eb9d4563ff9428e8fa_0" 246754.3 246685.09 28.108277793572533
"4a2297db5b7e11eb877cb34f60be0185" "4a2297db5b7e11eb877cb34f60be0185_0" 240745.6 240678.07 28.108277793572533
"73b38e46bc9811eb9d3e19c6e929df37" "73b38e46bc9811eb9d3e19c6e929df37_0" 238316.3 238249.52 28.108277793572533
"bd6365e89d2911eb9d3e4d6ab13fe21c" "bd6365e89d2911eb9d3e4d6ab13fe21c_0" 247234.1 247163.42 36.3256769670727
"2378f89dca3511eb9d3e03a07840ec42" "2378f89dca3511eb9d3e03a07840ec42_0" 246754.3 246685.09 28.108277793572533
"bfbcbf4a9d2911eb9d3e47ba299d95f3" "bfbcbf4a9d2911eb9d3e47ba299d95f3_0" 243138.9 243069.33 42.387657617870964
"f419f44c9df211eb9d3e19e481a16f9f" "f419f44c9df211eb9d3e19e481a16f9f_0" 244746.8 244678.25 36.3256769670727
"f9876b7b9df211eb9d3ea190df8ddf54" "f9876b7b9df211eb9d3ea190df8ddf54_0" 240809.2 240741.71 36.3256769670727
equal_shape_distance_same_coordinates WARNING 687

equal_shape_distance_same_coordinates

Two consecutive points have equal shape_dist_traveled and the same lat/lon coordinates in shapes.txt.

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 the same coordinates indicate a duplicative shape point.

You can see more about this notice here.

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

shapeId (?) The id of the faulty shape. csvRowNumber (?) The row number from `shapes.txt`. shapeDistTraveled (?) Actual distance traveled along the shape from the first shape point to the faulty record. shapePtSequence (?) The faulty record's `shapes.shape_pt_sequence`. prevCsvRowNumber (?) The row number from `shapes.txt` of the previous shape point. prevShapeDistTraveled (?) Actual distance traveled along the shape from the first shape point to the previous shape point. prevShapePtSequence (?) The previous record's `shapes.shape_pt_sequence`.
"2378f89dca3511eb9d3e03a07840ec42_0" 25680 240.3 25 25679 240.3 24
"2378f89dca3511eb9d3e03a07840ec42_0" 25693 374.51 38 25692 374.51 37
"2378f89dca3511eb9d3e03a07840ec42_0" 25699 466.81 44 25698 466.81 43
"2378f89dca3511eb9d3e03a07840ec42_0" 25711 770.72 56 25710 770.72 55
"2378f89dca3511eb9d3e03a07840ec42_0" 25734 1247.39 79 25733 1247.39 78
"2378f89dca3511eb9d3e03a07840ec42_0" 25854 7027.32 199 25853 7027.32 198
"2378f89dca3511eb9d3e03a07840ec42_0" 25862 7281.73 207 25861 7281.73 206
"2378f89dca3511eb9d3e03a07840ec42_0" 25893 7807.17 238 25892 7807.17 237
"2378f89dca3511eb9d3e03a07840ec42_0" 25915 8244.86 260 25914 8244.86 259
"2378f89dca3511eb9d3e03a07840ec42_0" 25933 9221.27 278 25932 9221.27 277
"2378f89dca3511eb9d3e03a07840ec42_0" 25944 9673.76 289 25943 9673.76 288
"2378f89dca3511eb9d3e03a07840ec42_0" 25950 9787.28 295 25949 9787.28 294
"2378f89dca3511eb9d3e03a07840ec42_0" 25982 10563.38 327 25981 10563.38 326
"2378f89dca3511eb9d3e03a07840ec42_0" 25986 10635.16 331 25985 10635.16 330
"2378f89dca3511eb9d3e03a07840ec42_0" 25993 10745.92 338 25992 10745.92 337
"2378f89dca3511eb9d3e03a07840ec42_0" 25994 10745.92 339 25993 10745.92 338
"2378f89dca3511eb9d3e03a07840ec42_0" 25995 10745.92 340 25994 10745.92 339
"2378f89dca3511eb9d3e03a07840ec42_0" 25997 10757.48 342 25996 10757.48 341
"2378f89dca3511eb9d3e03a07840ec42_0" 26005 10858.86 350 26004 10858.86 349
"2378f89dca3511eb9d3e03a07840ec42_0" 26016 11103.18 361 26015 11103.18 360
"2378f89dca3511eb9d3e03a07840ec42_0" 26036 11432.15 381 26035 11432.15 380
"2378f89dca3511eb9d3e03a07840ec42_0" 26079 13134.77 424 26078 13134.77 423
"2378f89dca3511eb9d3e03a07840ec42_0" 26122 14090.28 467 26121 14090.28 466
"2378f89dca3511eb9d3e03a07840ec42_0" 26181 14959.62 526 26180 14959.62 525
"2378f89dca3511eb9d3e03a07840ec42_0" 27778 169385.35 2123 27777 169385.35 2122
"2378f89dca3511eb9d3e03a07840ec42_0" 28367 193996.01 2712 28366 193996.01 2711
"2378f89dca3511eb9d3e03a07840ec42_0" 28414 195472.87 2759 28413 195472.87 2758
"2378f89dca3511eb9d3e03a07840ec42_0" 28435 196234.13 2780 28434 196234.13 2779
"2378f89dca3511eb9d3e03a07840ec42_0" 28673 208057.25 3018 28672 208057.25 3017
"2378f89dca3511eb9d3e03a07840ec42_0" 28700 209162.79 3045 28699 209162.79 3044
"2378f89dca3511eb9d3e03a07840ec42_0" 28742 210802.0 3087 28741 210802.0 3086
"2378f89dca3511eb9d3e03a07840ec42_0" 28751 210994.17 3096 28750 210994.17 3095
"2378f89dca3511eb9d3e03a07840ec42_0" 28758 211099.97 3103 28757 211099.97 3102
"2378f89dca3511eb9d3e03a07840ec42_0" 28759 211099.97 3104 28758 211099.97 3103
"2378f89dca3511eb9d3e03a07840ec42_0" 28760 211099.97 3105 28759 211099.97 3104
"2378f89dca3511eb9d3e03a07840ec42_0" 28768 211183.99 3113 28767 211183.99 3112
"2378f89dca3511eb9d3e03a07840ec42_0" 29249 232991.75 3594 29248 232991.75 3593
"2378f89dca3511eb9d3e03a07840ec42_0" 29275 233776.46 3620 29274 233776.46 3619
"2378f89dca3511eb9d3e03a07840ec42_0" 29410 239793.1 3755 29409 239793.1 3754
"2378f89dca3511eb9d3e03a07840ec42_0" 29432 240214.29 3777 29431 240214.29 3776
"2378f89dca3511eb9d3e03a07840ec42_0" 29531 243320.28 3876 29530 243320.28 3875
"2378f89dca3511eb9d3e03a07840ec42_0" 29556 245925.2 3901 29555 245925.2 3900
"2378f89dca3511eb9d3e03a07840ec42_0" 29578 246176.0 3923 29577 246176.0 3922
"2378f89dca3511eb9d3e03a07840ec42_0" 29584 246569.36 3929 29583 246569.36 3928
"2378f89dca3511eb9d3e03a07840ec42_0" 29586 246647.92 3931 29585 246647.92 3930
"2378f89dca3511eb9d3e03a07840ec42_0" 29589 246685.09 3934 29588 246685.09 3933
"2378f89dca3511eb9d3e03a07840ec42_0" 29590 246685.09 3935 29589 246685.09 3934
"f419f44c9df211eb9d3e19e481a16f9f_0" 40936 609.21 19 40935 609.21 18
"f419f44c9df211eb9d3e19e481a16f9f_0" 40938 688.64 21 40937 688.64 20
"f419f44c9df211eb9d3e19e481a16f9f_0" 40953 836.21 36 40952 836.21 35
expired_calendar WARNING 1

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.

csvRowNumber (?) The row of the faulty record. serviceId (?) The service id of the faulty record.
9 "ADP279"
missing_recommended_field WARNING 14

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.
"agency.txt" 2 "agency_id"
"routes.txt" 2 "agency_id"
"routes.txt" 3 "agency_id"
"routes.txt" 4 "agency_id"
"routes.txt" 5 "agency_id"
"routes.txt" 6 "agency_id"
"routes.txt" 7 "agency_id"
"routes.txt" 8 "agency_id"
"routes.txt" 9 "agency_id"
"routes.txt" 10 "agency_id"
"routes.txt" 11 "agency_id"
"routes.txt" 12 "agency_id"
"routes.txt" 13 "agency_id"
"routes.txt" 14 "agency_id"
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 41

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.

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" "NEW YORK -> ALBANY" 2
"routes.txt" "route_long_name" "ALBANY -> NEW YORK" 3
"routes.txt" "route_long_name" "ALBANY SUNY -> NEW YORK" 4
"routes.txt" "route_long_name" "NEW YORK -> ALBANY" 5
"routes.txt" "route_long_name" "NEW YORK -> ALBANY SUNY" 6
"routes.txt" "route_long_name" "ALBANY SUNY -> NEW YORK" 7
"routes.txt" "route_long_name" "ALBANY -> NEW YORK" 8
"routes.txt" "route_long_name" "ALBANY -> NEW YORK" 9
"routes.txt" "route_long_name" "SYRACUSE -> ALBANY" 10
"routes.txt" "route_long_name" "ALBANY SUNY -> NEW YORK" 11
"routes.txt" "route_long_name" "ALBANY -> SYRACUSE" 12
"routes.txt" "route_long_name" "NEW YORK -> ALBANY" 13
"routes.txt" "route_long_name" "NEW YORK -> ALBANY" 14
"stops.txt" "stop_name" "AMSTERDAM, NY" 2
"stops.txt" "stop_name" "NEW YORK, NY" 3
"stops.txt" "stop_name" "NEW PALTZ, NY" 4
"stops.txt" "stop_name" "KINGSTON, NY" 5
"stops.txt" "stop_name" "SYRACUSE, NY" 6
"stops.txt" "stop_name" "ROSENDALE, NY" 7
"stops.txt" "stop_name" "UTICA (E), NY" 8
"stops.txt" "stop_name" "CATSKILL PARK & RIDE, NY" 9
"stops.txt" "stop_name" "BLOOMINGTON, NY" 10
"stops.txt" "stop_name" "RIDGEWOOD (E), NJ" 11
"stops.txt" "stop_name" "ALBANY, NY" 12
"stops.txt" "stop_name" "ALBANY SUNY, NY" 13
"stops.txt" "stop_name" "TILLSON, NY" 14
"stops.txt" "stop_name" "NEW PALTZ PK & RD, NY" 15
"stops.txt" "stop_name" "SCHENECTADY (E), NY" 16
"trips.txt" "trip_short_name" "NEW YORK -> ALBANY" 2
"trips.txt" "trip_short_name" "ALBANY -> NEW YORK" 3
"trips.txt" "trip_short_name" "ALBANY SUNY -> NEW YORK" 4
"trips.txt" "trip_short_name" "NEW YORK -> ALBANY" 5
"trips.txt" "trip_short_name" "NEW YORK -> ALBANY SUNY" 6
"trips.txt" "trip_short_name" "ALBANY SUNY -> NEW YORK" 7
"trips.txt" "trip_short_name" "ALBANY -> NEW YORK" 8
"trips.txt" "trip_short_name" "ALBANY -> NEW YORK" 9
"trips.txt" "trip_short_name" "SYRACUSE -> ALBANY" 10
"trips.txt" "trip_short_name" "ALBANY SUNY -> NEW YORK" 11
"trips.txt" "trip_short_name" "ALBANY -> SYRACUSE" 12
"trips.txt" "trip_short_name" "NEW YORK -> ALBANY" 13
"trips.txt" "trip_short_name" "NEW YORK -> ALBANY" 14
trip_distance_exceeds_shape_distance_below_threshold WARNING 1

trip_distance_exceeds_shape_distance_below_threshold

The distance between the last shape point and last stop point is greater than 0 but less than the 11.1m threshold.

You can see more about this notice here.

tripId (?) The faulty record's trip id. shapeId (?) The faulty record's shape id. maxTripDistanceTraveled (?) The faulty record's trip max distance traveled. maxShapeDistanceTraveled (?) The faulty record's shape max distance traveled. geoDistanceToShape (?) The distance in meters between the shape and the stop.
"5413e783413311eb9d456b5e758b51cc" "5413e783413311eb9d456b5e758b51cc_0" 248831.4 248761.69 2.125093910967413