GTFS Schedule Validation Report

This report was generated by the Canonical GTFS Schedule validator, version 8.0.1 at 2026-07-25T02:57:13Z,
for the dataset file:///shared/georgian-railway_92313f7a.zip. No country code was provided.

Use this report alongside our documentation.

Summary

Agencies included


Feed Info


Publisher Name:
Jonah Brüchert
Feed Email:
N/A
Feed Language:
English
Feed Start Date:
2026-07-23
Feed End Date:
2026-11-19

Files included


  1. agency.txt
  2. attributions.txt
  3. calendar_dates.txt
  4. feed_info.txt
  5. routes.txt
  6. shapes.txt
  7. stop_times.txt
  8. stops.txt
  9. translations.txt
  10. trips.txt

Counts


  • Agencies: 1
  • Blocks: 0
  • Routes: 38
  • Shapes: 66
  • Stops: 86
  • Trips: 412

Specification Compliance report

652 notices reported (5 errors, 647 warnings, 0 infos)

Notice Code Severity Total
point_near_origin ERROR 5

point_near_origin

A point is too close to origin (0, 0).

You can see more about this notice here.

filename (?) The name of the affected GTFS file. csvRowNumber (?) The row of the faulty row. entityId (?) The id of the faulty entity. latFieldName (?) The name of the field that uses latitude value. latFieldValue (?) The latitude of the faulty row. lonFieldName (?) The name of the field that uses longitude value. lonFieldValue (?) The longitude of the faulty row
"stops.txt" 63 "57715" "stop_lat" 0.0 "stop_lon" 0.0
"shapes.txt" 1704 N/A "shape_pt_lat" 0.0 "shape_pt_lon" 0.0
"shapes.txt" 1705 N/A "shape_pt_lat" 0.0 "shape_pt_lon" 0.0
"shapes.txt" 63973 N/A "shape_pt_lat" 0.0 "shape_pt_lon" 0.0
"shapes.txt" 63974 N/A "shape_pt_lat" 0.0 "shape_pt_lon" 0.0
equal_shape_distance_same_coordinates WARNING 600

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 600 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`.
"shp_106_26" 9877 6614.174 90 9876 6614.174 89
"shp_106_26" 9896 10791.733 109 9895 10791.733 108
"shp_106_26" 9929 16018.586 142 9928 16018.586 141
"shp_106_26" 9946 21514.479 159 9945 21514.479 158
"shp_106_26" 9986 27868.5 199 9985 27868.5 198
"shp_106_26" 10000 30964.719 213 9999 30964.719 212
"shp_102_24" 27787 19343.928 193 27786 19343.928 192
"shp_102_24" 27942 43796.363 348 27941 43796.363 347
"shp_102_24" 28284 113307.945 690 28283 113307.945 689
"shp_106_27" 14275 2222.585 21 14274 2222.585 20
"shp_106_27" 14344 10372.274 90 14343 10372.274 89
"shp_106_27" 14377 13445.535 123 14376 13445.535 122
"shp_106_27" 14440 20706.674 186 14439 20706.674 185
"shp_106_27" 14526 32388.465 272 14525 32388.465 271
"shp_106_27" 14597 42358.742 343 14596 42358.742 342
"shp_106_27" 14651 47833.172 397 14650 47833.172 396
"shp_106_27" 14719 60345.703 465 14718 60345.703 464
"shp_106_27" 14773 74726.203 519 14772 74726.203 518
"shp_106_27" 14868 92875.039 614 14867 92875.039 613
"shp_106_27" 14904 99248.805 650 14903 99248.805 649
"shp_106_27" 14925 108122.602 671 14924 108122.602 670
"shp_106_27" 14954 118837.164 700 14953 118837.164 699
"shp_106_27" 14978 125285.25 724 14977 125285.25 723
"shp_106_27" 15261 148085.594 1007 15260 148085.594 1006
"shp_102_25" 31993 19343.928 193 31992 19343.928 192
"shp_102_25" 32148 43796.363 348 32147 43796.363 347
"shp_102_25" 32490 113307.945 690 32489 113307.945 689
"shp_2_40" 91966 2643.542 30 91965 2643.542 29
"shp_2_40" 92035 9731.681 99 92034 9731.681 98
"shp_2_40" 92132 19343.93 196 92131 19343.93 195
"shp_2_40" 92287 43796.363 351 92286 43796.363 350
"shp_2_40" 92573 100841.305 637 92572 100841.305 636
"shp_2_40" 92838 161982.078 902 92837 161982.078 901
"shp_2_40" 93507 223734.141 1571 93506 223734.141 1570
"shp_2_40" 94179 342618.688 2243 94178 342618.688 2242
"shp_2_40" 94523 371549.406 2587 94522 371549.406 2586
"shp_2_40" 94720 408596.594 2784 94719 408596.594 2783
"shp_2_40" 94889 421496.125 2953 94888 421496.125 2952
"shp_2_40" 95954 493093.219 4018 95953 493093.219 4017
"shp_2_40" 96791 563006.5 4855 96790 563006.5 4854
"shp_2_40" 97724 669218.188 5788 97723 669218.188 5787
"shp_102_28" 22049 15005.175 85 22048 15005.175 84
"shp_102_28" 22062 28198.92 98 22061 28198.92 97
"shp_102_28" 22078 37921.129 114 22077 37921.129 113
"shp_102_28" 22134 51774.984 170 22133 51774.984 169
"shp_102_28" 22189 65236.664 225 22188 65236.664 224
"shp_102_28" 22246 77703.297 282 22245 77703.297 281
"shp_102_28" 22288 96036.367 324 22287 96036.367 323
"shp_102_28" 22456 126377.422 492 22455 126377.422 491
"shp_102_28" 22730 146932.063 766 22729 146932.063 765
fast_travel_between_consecutive_stops WARNING 8

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.
410 "gr-22690" "6446" 29479.48366779439 6387.2214613554515 4031 1 "10776367478" "Khashuri" "08:10:00" 4032 2 "57715" "baqani 2380 km" "08:22:00"
392 "gr-22654" "6446" 29479.48366779439 6387.2214613554515 4031 1 "10776367478" "Khashuri" "08:10:00" 4032 2 "57715" "baqani 2380 km" "08:22:00"
410 "gr-22690" "6446" 18201.16568031729 6370.407988111051 4032 2 "57715" "baqani 2380 km" "08:23:00" 4033 12 "11098865913" "Moliti" "08:43:00"
392 "gr-22654" "6446" 18201.16568031729 6370.407988111051 4032 2 "57715" "baqani 2380 km" "08:23:00" 4033 12 "11098865913" "Moliti" "08:43:00"
411 "gr-22691" "6445" 18201.16568031729 6370.407988111051 4042 17 "11098865913" "Moliti" "18:24:00" 4043 27 "57715" "baqani 2380 km" "18:44:00"
393 "gr-22655" "6445" 18201.16568031729 6370.407988111051 4042 17 "11098865913" "Moliti" "18:24:00" 4043 27 "57715" "baqani 2380 km" "18:44:00"
411 "gr-22691" "6445" 31936.107306777256 6387.2214613554515 4043 27 "57715" "baqani 2380 km" "18:45:00" 4044 28 "10776367478" "Khashuri" "18:56:00"
393 "gr-22655" "6445" 31936.107306777256 6387.2214613554515 4043 27 "57715" "baqani 2380 km" "18:45:00" 4044 28 "10776367478" "Khashuri" "18:56:00"
fast_travel_between_far_stops WARNING 4

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.
410 "gr-22690" "6446" 29479.48366779439 6387.2214613554515 4031 1 "10776367478" "Khashuri" "08:10:00" 4032 2 "57715" "baqani 2380 km" "08:22:00"
392 "gr-22654" "6446" 29479.48366779439 6387.2214613554515 3813 1 "10776367478" "Khashuri" "08:10:00" 3814 2 "57715" "baqani 2380 km" "08:22:00"
411 "gr-22691" "6445" 18201.16568031729 6370.407988111051 4042 17 "11098865913" "Moliti" "18:24:00" 4043 27 "57715" "baqani 2380 km" "18:44:00"
393 "gr-22655" "6445" 18201.16568031729 6370.407988111051 3824 17 "11098865913" "Moliti" "18:24:00" 3825 27 "57715" "baqani 2380 km" "18:44:00"
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"
mixed_case_recommended_field WARNING 1

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.
"stops.txt" "stop_name" "baqani 2380 km" 63
stop_too_far_from_shape_using_user_distance WARNING 2

stop_too_far_from_shape_using_user_distance

Stop time too far from shape.

A stop time entry that is a large distance away from the location of the shape in shapes.txt as defined by shape_dist_traveled values.

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.
36 "shp_2_47" "geo-20705812" 401 "5162796046" "Biləcəri" [40.432892,49.80353499999999] 114.0929216889264
37 "shp_2_29" "geo-20705932" 404 "5162796046" "Biləcəri" [40.432892,49.80353499999999] 114.0929216889264
unexpected_enum_value WARNING 30

unexpected_enum_value

An enum has an unexpected value.

You can see more about this notice here.

filename (?) The name of the faulty file. csvRowNumber (?) The row number of the faulty record. fieldName (?) The name of the field where the error occurred. fieldValue (?) Faulty value.
"routes.txt" 2 "route_type" 102
"routes.txt" 3 "route_type" 102
"routes.txt" 4 "route_type" 102
"routes.txt" 5 "route_type" 106
"routes.txt" 6 "route_type" 102
"routes.txt" 7 "route_type" 106
"routes.txt" 8 "route_type" 106
"routes.txt" 9 "route_type" 106
"routes.txt" 10 "route_type" 102
"routes.txt" 13 "route_type" 102
"routes.txt" 14 "route_type" 106
"routes.txt" 15 "route_type" 102
"routes.txt" 16 "route_type" 102
"routes.txt" 17 "route_type" 106
"routes.txt" 18 "route_type" 106
"routes.txt" 20 "route_type" 102
"routes.txt" 23 "route_type" 106
"routes.txt" 24 "route_type" 106
"routes.txt" 27 "route_type" 102
"routes.txt" 29 "route_type" 102
"routes.txt" 30 "route_type" 102
"routes.txt" 31 "route_type" 102
"routes.txt" 32 "route_type" 106
"routes.txt" 33 "route_type" 106
"routes.txt" 34 "route_type" 106
"routes.txt" 35 "route_type" 106
"routes.txt" 36 "route_type" 102
"routes.txt" 37 "route_type" 102
"routes.txt" 38 "route_type" 106
"routes.txt" 39 "route_type" 102