GTFS Schedule Validation Report

This report was generated by the Canonical GTFS Schedule validator, version 7.1.0 at 2025-12-12T19:34:50Z,
for the dataset file:///shared/dnvx-athenspublictransit.zip. No country code was provided.

Use this report alongside our documentation.

Summary

Agencies included


Feed Info


Publisher Name:
Passio Technologies
Publisher URL:
https://passiotech.com
Feed Email:
support@passiotech.com
Feed Language:
English
Feed Start Date:
2025-12-11
Feed End Date:
2026-01-11

Files included


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

Counts


  • Agencies: 1
  • Blocks: 20
  • Routes: 17
  • Shapes: 22
  • Stops: 133
  • Trips: 207

Specification Compliance report

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

Notice Code Severity Total
equal_shape_distance_same_coordinates WARNING 69

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 69 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`.
"66960" 12129 0.0 2 12128 0.0 1
"66960" 12130 0.0 3 12129 0.0 2
"66960" 12434 4639.37 307 12433 4639.37 306
"66960" 12435 4639.37 308 12434 4639.37 307
"66960" 12436 4639.37 309 12435 4639.37 308
"66960" 12437 4639.37 310 12436 4639.37 309
"66960" 12465 4890.34 338 12464 4890.34 337
"66960" 12466 4890.34 339 12465 4890.34 338
"66960" 12467 4890.34 340 12466 4890.34 339
"66960" 12495 5268.09 368 12494 5268.09 367
"66960" 12506 5376.75 379 12505 5376.75 378
"66960" 12541 6190.07 414 12540 6190.07 413
"66960" 12574 6976.09 447 12573 6976.09 446
"66960" 12747 10632.78 620 12746 10632.78 619
"66960" 12894 14879.85 767 12893 14879.85 766
"66960" 12922 15443.06 795 12921 15443.06 794
"66960" 13476 26946.62 1349 13475 26946.62 1348
"66960" 13477 26946.62 1350 13476 26946.62 1349
"66960" 13478 26946.62 1351 13477 26946.62 1350
"66960" 13617 28972.16 1490 13616 28972.16 1489
"66960" 13741 30728.61 1614 13740 30728.61 1613
"66960" 13742 30728.61 1615 13741 30728.61 1614
"66960" 13743 30728.61 1616 13742 30728.61 1615
"66960" 13746 30731.04 1619 13745 30731.04 1618
"66960" 13747 30731.04 1620 13746 30731.04 1619
"66960" 13818 31907.66 1691 13817 31907.66 1690
"66960" 13819 31907.66 1692 13818 31907.66 1691
"66952" 4489 447.61 27 4488 447.61 26
"66953" 4878 8954.5 306 4877 8954.5 305
"66953" 4938 9831.95 366 4937 9831.95 365
"66953" 5110 13473.65 538 5109 13473.65 537
"66964" 16262 2822.2 195 16261 2822.2 194
"66964" 16425 5063.02 358 16424 5063.02 357
"66964" 16550 6795.75 483 16549 6795.75 482
"66950" 3411 3088.58 165 3410 3088.58 164
"66961" 14295 6118.48 466 14294 6118.48 465
"66951" 4002 8975.47 544 4001 8975.47 543
"66951" 4397 15817.26 939 4396 15817.26 938
"66962" 15114 5294.41 386 15113 5294.41 385
"66962" 15115 5294.41 387 15114 5294.41 386
"66962" 15116 5294.41 388 15115 5294.41 387
"66962" 15117 5294.41 389 15116 5294.41 388
"66945" 7022 330.56 22 7021 330.56 21
"66945" 7176 2626.88 176 7175 2626.88 175
"66945" 7720 21888.14 720 7719 21888.14 719
"66945" 8017 33828.41 1017 8016 33828.41 1016
"66946" 8928 38257.37 836 8927 38257.37 835
"66957" 10101 3977.65 289 10100 3977.65 288
"66957" 10277 6424.14 465 10276 6424.14 464
"66957" 10313 6915.89 501 10312 6915.89 500
feed_expiration_date30_days WARNING 1

feed_expiration_date30_days

Dataset should cover at least the next 30 days of service.

At any time, the GTFS dataset should cover at least the next 30 days of service, and ideally for as long as the operator is confident that the schedule will continue to be operated.

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 "20251212" "20260111" "20260111"
route_color_contrast WARNING 1

route_color_contrast

Insufficient route color contrast.

A route's color and route_text_color should be contrasting.

You can see more about this notice here.

routeId (?) The id of the faulty record. csvRowNumber (?) The row number of the faulty record. routeColor (?) The faulty record's HTML route color. routeTextColor (?) The faulty record's HTML route text color.
"8464" 18 "#FF7F0E" "#FF7F0E"
route_long_name_contains_short_name WARNING 1

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`.
"7500" 15 "OWL" "OWL Summit"
stops_match_shape_out_of_order WARNING 1

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.
15 "66949" "989384" 604 "190923" "Berkley Turnaround" [39.295700999999994,-82.112007] 603 "191003" "Richland/ Log Cabin Gifts" [39.304419604,-82.103153125]