GTFS Schedule Validation Report

This report was generated by the Canonical GTFS Schedule validator, version 7.1.0 at 2026-01-16T14:04:05Z,
for the dataset file:///shared/vitalis-transport.zip. No country code was provided.

Use this report alongside our documentation.

Summary

Agencies included


Feed Info


Publisher Name:
Salim Bouhorma
Feed Email:
N/A
Feed Language:
French
Feed Start Date:
2020-12-01
Feed End Date:
2021-11-30

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: 0
  • Routes: 25
  • Shapes: 50
  • Stops: 546
  • Trips: 2600

Specification Compliance report

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

Notice Code Severity Total
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.
2 "Mo-Su"
fast_travel_between_consecutive_stops WARNING 4578

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.

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

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.
1728 "1521" "L35" 1057.161560806159 1.7619359346769317 37592 2 "node/8197563719" "Kondisa" "13:40:00" 37593 3 "node/8197563718" "Rifiyenne" "13:40:06"
1728 "1521" "L35" 930.3052197294719 1.5505086995491197 37593 3 "node/8197563718" "Rifiyenne" "13:40:06" 37594 4 "node/8197563717" "Fadesa" "13:40:12"
1728 "1521" "L35" 1201.16487095345 1.3346276343927221 37594 4 "node/8197563717" "Fadesa" "13:40:12" 37595 5 "node/8197552116" "El Amin" "13:40:16"
1728 "1521" "L35" 874.1668078105713 0.971296453122857 37595 5 "node/8197552116" "El Amin" "13:40:16" 37596 6 "node/8197552115" "Al Mina" "13:40:20"
1728 "1521" "L35" 1025.559609371467 1.139510677079408 37596 6 "node/8197552115" "Al Mina" "13:40:20" 37597 7 "node/8197552114" "Grand Hôtel" "13:40:24"
1728 "1521" "L35" 1187.5156805807185 1.3194618673119094 37597 7 "node/8197552114" "Grand Hôtel" "13:40:24" 37598 8 "node/8197552113" "Restinga" "13:40:28"
1728 "1521" "L35" 1022.0948711751801 0.5678304839862112 37598 8 "node/8197552113" "Restinga" "13:40:28" 37599 9 "node/8197552112" "Marina 2" "13:40:30"
1728 "1521" "L35" 1043.6100043534354 0.8696750036278628 37599 9 "node/8197552112" "Marina 2" "13:40:30" 37600 10 "node/1872003110" "Marina" "13:40:33"
1728 "1521" "L35" 761.7579323045233 0.4231988512802907 37600 10 "node/1872003110" "Marina" "13:40:33" 37601 11 "node/8197552111" "Marina Smir" "13:40:35"
1728 "1521" "L35" 1042.869618816427 0.8690580156803559 37601 11 "node/8197552111" "Marina Smir" "13:40:35" 37602 12 "node/8197552110" "Studio" "13:40:38"
1728 "1521" "L35" 1304.1692766917313 0.7245384870509618 37602 12 "node/8197552110" "Studio" "13:40:38" 37603 13 "node/8197552109" "Sania" "13:40:40"
1728 "1521" "L35" 943.1977469533454 1.0479974966148282 37603 13 "node/8197552109" "Sania" "13:40:40" 37604 14 "node/8197552108" "Kabila 2" "13:40:44"
1728 "1521" "L35" 1358.408472837986 0.754671373798881 37604 14 "node/8197552108" "Kabila 2" "13:40:44" 37605 15 "node/8197552107" "Kabila" "13:40:46"
1728 "1521" "L35" 965.0729388437895 2.412682347109474 37605 15 "node/8197552107" "Kabila" "13:40:46" 37606 16 "node/8197552106" "Holiday" "13:40:55"
1728 "1521" "L35" 1012.4110629307264 1.6873517715512107 37606 16 "node/8197552106" "Holiday" "13:40:55" 37607 17 "node/8197477243" "M'Diq" "13:41:01"
1728 "1521" "L35" 1260.1775090414853 0.35004930806707923 37607 17 "node/8197477243" "M'Diq" "13:41:01" 37608 18 "node/8197477242" "El Marssa" "13:41:02"
1728 "1521" "L35" 1200.869579308027 0.6671497662822372 37608 18 "node/8197477242" "El Marssa" "13:41:02" 37609 19 "node/8197477241" "Gorna" "13:41:04"
1728 "1521" "L35" 1029.0327084941027 1.1433696761045586 37609 19 "node/8197477241" "Gorna" "13:41:04" 37610 20 "node/8197477240" "Krouche" "13:41:08"
1728 "1521" "L35" 938.3746198856284 0.7819788499046904 37610 20 "node/8197477240" "Krouche" "13:41:08" 37611 21 "node/8197477239" "Jamae" "13:41:11"
1728 "1521" "L35" 884.5698841170675 0.4914277133983709 37611 21 "node/8197477239" "Jamae" "13:41:11" 37612 22 "node/8197477238" "Colinord" "13:41:13"
1728 "1521" "L35" 1111.0612617391625 0.617256256521757 37612 22 "node/8197477238" "Colinord" "13:41:13" 37613 23 "node/8197477237" "Ghniwat" "13:41:15"
1728 "1521" "L35" 995.1988949105345 0.5528882749502969 37613 23 "node/8197477237" "Ghniwat" "13:41:15" 37614 24 "node/8197477236" "Campo" "13:41:17"
1728 "1521" "L35" 961.0039519626914 0.5338910844237175 37614 24 "node/8197477236" "Campo" "13:41:17" 37615 25 "node/8197477235" "El Filaha" "13:41:19"
1728 "1521" "L35" 1465.3728285247287 0.40704800792353574 37615 25 "node/8197477235" "El Filaha" "13:41:19" 37616 26 "node/8197477234" "Rayhana" "13:41:20"
1728 "1521" "L35" 1196.0779295540594 0.6644877386411442 37616 26 "node/8197477234" "Rayhana" "13:41:20" 37617 27 "node/8197477233" "Sdouki" "13:41:22"
1728 "1521" "L35" 850.2957826222963 0.7085798188519136 37617 27 "node/8197477233" "Sdouki" "13:41:22" 37618 28 "node/8196133396" "Rp El Mallalienne" "13:41:25"
1728 "1521" "L35" 1710.8202961887355 0.4752278600524265 37618 28 "node/8196133396" "Rp El Mallalienne" "13:41:25" 37619 29 "node/8196133395" "R'Milat" "13:41:26"
1728 "1521" "L35" 1039.2801315926424 0.8660667763272021 37619 29 "node/8196133395" "R'Milat" "13:41:26" 37620 30 "node/8196133394" "Koudia" "13:41:29"
1728 "1521" "L35" 770.7517665983955 0.6422931388319962 37620 30 "node/8196133394" "Koudia" "13:41:29" 37621 31 "node/8196133393" "Setine 60" "13:41:32"
1728 "1521" "L35" 1053.9301468599185 0.5855167482555103 37621 31 "node/8196133393" "Setine 60" "13:41:32" 37622 32 "node/8196133392" "Marjane" "13:41:34"
1728 "1521" "L35" 1194.7467849821273 1.3274964277579193 37622 32 "node/8196133392" "Marjane" "13:41:34" 37623 33 "node/8188018834" "Avenue Des Far - El Yazidi" "13:41:38"
1728 "1521" "L35" 1253.2044958273875 0.3481123599520521 37623 33 "node/8188018834" "Avenue Des Far - El Yazidi" "13:41:38" 37624 34 "node/8188018833" "Avenue Des Far - Wilaya" "13:41:39"
1728 "1521" "L35" 806.2736824296659 0.4479298235720366 37624 34 "node/8188018833" "Avenue Des Far - Wilaya" "13:41:39" 37625 35 "node/8188018832" "Avenue Des Far - Rif" "13:41:41"
1728 "1521" "L35" 904.7530461753654 0.7539608718128045 37625 35 "node/8188018832" "Avenue Des Far - Rif" "13:41:41" 37626 36 "node/8188018831" "Avenue Des Far - Safir" "13:41:44"
1728 "1521" "L35" 1501.4669617398492 0.417074156038847 37626 36 "node/8188018831" "Avenue Des Far - Safir" "13:41:44" 37627 37 "node/8188018830" "Avenue Des Far - Rettaha" "13:41:45"
1728 "1521" "L35" 896.7477681390274 0.7472898067825228 37627 37 "node/8188018830" "Avenue Des Far - Rettaha" "13:41:45" 37628 38 "node/8188018829" "Avenue Des Far" "13:41:48"
1728 "1521" "L35" 1460.2619370720286 0.40562831585334125 37628 38 "node/8188018829" "Avenue Des Far" "13:41:48" 37629 39 "node/8188018828" "Lycée Charif Al Idrissi" "13:41:49"
1728 "1521" "L35" 890.7907894088554 0.7423256578407128 37629 39 "node/8188018828" "Lycée Charif Al Idrissi" "13:41:49" 37630 40 "node/8188018827" "Mekki Nassiri - Aakbat El Halouf" "13:41:52"
1728 "1521" "L35" 962.0753281518199 0.5344862934176777 37630 40 "node/8188018827" "Mekki Nassiri - Aakbat El Halouf" "13:41:52" 37631 41 "node/8188018826" "Jardin Chellal" "13:41:54"
1728 "1521" "L35" 1383.3954702909596 0.7685530390505331 37631 41 "node/8188018826" "Jardin Chellal" "13:41:54" 37632 42 "node/6899235256" "Clinique Nakhil" "13:41:56"
1728 "1521" "L35" 1124.121072797291 0.6245117071096061 37632 42 "node/6899235256" "Clinique Nakhil" "13:41:56" 37633 43 "node/8188018825" "Avenue Moulay Al Hassan Belmehdi" "13:41:58"
1728 "1521" "L35" 832.5371073587992 0.46252061519933285 37633 43 "node/8188018825" "Avenue Moulay Al Hassan Belmehdi" "13:41:58" 37634 44 "node/8188018824" "Rif (Rommana)" "13:42:00"
2385 "1510" "L35" 1057.161560806159 1.7619359346769317 52282 2 "node/8197563719" "Kondisa" "12:01:00" 52283 3 "node/8197563718" "Rifiyenne" "12:01:06"
2385 "1510" "L35" 930.3052197294719 1.5505086995491197 52283 3 "node/8197563718" "Rifiyenne" "12:01:06" 52284 4 "node/8197563717" "Fadesa" "12:01:12"
2385 "1510" "L35" 1201.16487095345 1.3346276343927221 52284 4 "node/8197563717" "Fadesa" "12:01:12" 52285 5 "node/8197552116" "El Amin" "12:01:16"
2385 "1510" "L35" 874.1668078105713 0.971296453122857 52285 5 "node/8197552116" "El Amin" "12:01:16" 52286 6 "node/8197552115" "Al Mina" "12:01:20"
2385 "1510" "L35" 1025.559609371467 1.139510677079408 52286 6 "node/8197552115" "Al Mina" "12:01:20" 52287 7 "node/8197552114" "Grand Hôtel" "12:01:24"
2385 "1510" "L35" 1187.5156805807185 1.3194618673119094 52287 7 "node/8197552114" "Grand Hôtel" "12:01:24" 52288 8 "node/8197552113" "Restinga" "12:01:28"
2385 "1510" "L35" 1022.0948711751801 0.5678304839862112 52288 8 "node/8197552113" "Restinga" "12:01:28" 52289 9 "node/8197552112" "Marina 2" "12:01:30"
2385 "1510" "L35" 1043.6100043534354 0.8696750036278628 52289 9 "node/8197552112" "Marina 2" "12:01:30" 52290 10 "node/1872003110" "Marina" "12:01:33"
fast_travel_between_far_stops WARNING 109

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.

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

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.
1728 "1521" "L35" 1023.8308693302001 10.807103620707668 37592 2 "node/8197563719" "Kondisa" "13:40:00" 37602 12 "node/8197552110" "Studio" "13:40:38"
2385 "1510" "L35" 1023.8308693302001 10.807103620707668 52282 2 "node/8197563719" "Kondisa" "12:01:00" 52292 12 "node/8197552110" "Studio" "12:01:38"
672 "1523" "L35" 1023.8308693302001 10.807103620707668 14169 2 "node/8197563719" "Kondisa" "13:58:00" 14179 12 "node/8197552110" "Studio" "13:58:38"
940 "1534" "L35" 1023.8308693302001 10.807103620707668 20334 2 "node/8197563719" "Kondisa" "15:37:00" 20344 12 "node/8197552110" "Studio" "15:37:38"
2454 "1567" "L35" 1023.8308693302001 10.807103620707668 53913 2 "node/8197563719" "Kondisa" "20:34:00" 53923 12 "node/8197552110" "Studio" "20:34:38"
1438 "1491" "L35" 1023.8308693302001 10.807103620707668 31168 2 "node/8197563719" "Kondisa" "09:10:00" 31178 12 "node/8197552110" "Studio" "09:10:38"
1136 "1530" "L35" 1023.8308693302001 10.807103620707668 24628 2 "node/8197563719" "Kondisa" "15:01:00" 24638 12 "node/8197552110" "Studio" "15:01:38"
1076 "1581" "L35" 1023.8308693302001 10.807103620707668 23397 2 "node/8197563719" "Kondisa" "22:40:00" 23407 12 "node/8197552110" "Studio" "22:40:38"
2054 "1542" "L35" 1023.8308693302001 10.807103620707668 45023 2 "node/8197563719" "Kondisa" "16:49:00" 45033 12 "node/8197552110" "Studio" "16:49:38"
1845 "1561" "L35" 1023.8308693302001 10.807103620707668 40050 2 "node/8197563719" "Kondisa" "19:40:00" 40060 12 "node/8197552110" "Studio" "19:40:38"
2381 "1514" "L35" 1023.8308693302001 10.807103620707668 52122 2 "node/8197563719" "Kondisa" "12:37:00" 52132 12 "node/8197552110" "Studio" "12:37:38"
676 "1492" "L35" 1023.8308693302001 10.807103620707668 14313 2 "node/8197563719" "Kondisa" "09:19:00" 14323 12 "node/8197552110" "Studio" "09:19:38"
2448 "1566" "L35" 1023.8308693302001 10.807103620707668 53799 2 "node/8197563719" "Kondisa" "20:25:00" 53809 12 "node/8197552110" "Studio" "20:25:38"
2387 "1512" "L35" 1023.8308693302001 10.807103620707668 52370 2 "node/8197563719" "Kondisa" "12:19:00" 52380 12 "node/8197552110" "Studio" "12:19:38"
2434 "1562" "L35" 1023.8308693302001 10.807103620707668 53464 2 "node/8197563719" "Kondisa" "19:49:00" 53474 12 "node/8197552110" "Studio" "19:49:38"
1458 "1497" "L35" 1023.8308693302001 10.807103620707668 31893 2 "node/8197563719" "Kondisa" "10:04:00" 31903 12 "node/8197552110" "Studio" "10:04:38"
2440 "1564" "L35" 1023.8308693302001 10.807103620707668 53615 2 "node/8197563719" "Kondisa" "20:07:00" 53625 12 "node/8197552110" "Studio" "20:07:38"
547 "1557" "L35" 1023.8308693302001 10.807103620707668 11672 2 "node/8197563719" "Kondisa" "19:04:00" 11682 12 "node/8197552110" "Studio" "19:04:38"
956 "1570" "L35" 1023.8308693302001 10.807103620707668 20642 2 "node/8197563719" "Kondisa" "21:01:00" 20652 12 "node/8197552110" "Studio" "21:01:38"
173 "1579" "L35" 1023.8308693302001 10.807103620707668 3427 2 "node/8197563719" "Kondisa" "22:22:00" 3437 12 "node/8197552110" "Studio" "22:22:38"
2386 "1513" "L35" 1023.8308693302001 10.807103620707668 52326 2 "node/8197563719" "Kondisa" "12:28:00" 52336 12 "node/8197552110" "Studio" "12:28:38"
2446 "1565" "L35" 1023.8308693302001 10.807103620707668 53741 2 "node/8197563719" "Kondisa" "20:16:00" 53751 12 "node/8197552110" "Studio" "20:16:38"
174 "1578" "L35" 1023.8308693302001 10.807103620707668 3471 2 "node/8197563719" "Kondisa" "22:13:00" 3481 12 "node/8197552110" "Studio" "22:13:38"
1075 "1580" "L35" 1023.8308693302001 10.807103620707668 23353 2 "node/8197563719" "Kondisa" "22:31:00" 23363 12 "node/8197552110" "Studio" "22:31:38"
2078 "1539" "L35" 1023.8308693302001 10.807103620707668 45530 2 "node/8197563719" "Kondisa" "16:22:00" 45540 12 "node/8197552110" "Studio" "16:22:38"
859 "1481" "L35" 1023.8308693302001 10.807103620707668 18259 2 "node/8197563719" "Kondisa" "07:40:00" 18269 12 "node/8197552110" "Studio" "07:40:38"
646 "1524" "L35" 1023.8308693302001 10.807103620707668 13457 2 "node/8197563719" "Kondisa" "14:07:00" 13467 12 "node/8197552110" "Studio" "14:07:38"
300 "1507" "L35" 1023.8308693302001 10.807103620707668 6089 2 "node/8197563719" "Kondisa" "11:34:00" 6099 12 "node/8197552110" "Studio" "11:34:38"
1077 "1586" "L35" 1023.8308693302001 10.807103620707668 23441 2 "node/8197563719" "Kondisa" "23:25:00" 23451 12 "node/8197552110" "Studio" "23:25:38"
965 "1575" "L35" 1023.8308693302001 10.807103620707668 20858 2 "node/8197563719" "Kondisa" "21:46:00" 20868 12 "node/8197552110" "Studio" "21:46:38"
294 "1503" "L35" 1023.8308693302001 10.807103620707668 5887 2 "node/8197563719" "Kondisa" "10:58:00" 5897 12 "node/8197552110" "Studio" "10:58:38"
864 "1484" "L35" 1023.8308693302001 10.807103620707668 18479 2 "node/8197563719" "Kondisa" "08:07:00" 18489 12 "node/8197552110" "Studio" "08:07:38"
952 "1572" "L35" 1023.8308693302001 10.807103620707668 20526 2 "node/8197563719" "Kondisa" "21:19:00" 20536 12 "node/8197552110" "Studio" "21:19:38"
2566 "1568" "L35" 1023.8308693302001 10.807103620707668 56117 2 "node/8197563719" "Kondisa" "20:43:00" 56127 12 "node/8197552110" "Studio" "20:43:38"
669 "1545" "L35" 1023.8308693302001 10.807103620707668 14069 2 "node/8197563719" "Kondisa" "17:16:00" 14079 12 "node/8197552110" "Studio" "17:16:38"
2058 "1540" "L35" 1023.8308693302001 10.807103620707668 45145 2 "node/8197563719" "Kondisa" "16:31:00" 45155 12 "node/8197552110" "Studio" "16:31:38"
2437 "1563" "L35" 1023.8308693302001 10.807103620707668 53542 2 "node/8197563719" "Kondisa" "19:58:00" 53552 12 "node/8197552110" "Studio" "19:58:38"
2378 "1519" "L35" 1023.8308693302001 10.807103620707668 51990 2 "node/8197563719" "Kondisa" "13:22:00" 52000 12 "node/8197552110" "Studio" "13:22:38"
542 "1550" "L35" 1023.8308693302001 10.807103620707668 11506 2 "node/8197563719" "Kondisa" "18:01:00" 11516 12 "node/8197552110" "Studio" "18:01:38"
1040 "1532" "L35" 1023.8308693302001 10.807103620707668 22390 2 "node/8197563719" "Kondisa" "15:19:00" 22400 12 "node/8197552110" "Studio" "15:19:38"
860 "1480" "L35" 1023.8308693302001 10.807103620707668 18303 2 "node/8197563719" "Kondisa" "07:31:00" 18313 12 "node/8197552110" "Studio" "07:31:38"
1210 "1587" "L35" 1023.8308693302001 10.807103620707668 26171 2 "node/8197563719" "Kondisa" "23:34:00" 26181 12 "node/8197552110" "Studio" "23:34:38"
966 "1574" "L35" 1023.8308693302001 10.807103620707668 20902 2 "node/8197563719" "Kondisa" "21:37:00" 20912 12 "node/8197552110" "Studio" "21:37:38"
299 "1506" "L35" 1023.8308693302001 10.807103620707668 6045 2 "node/8197563719" "Kondisa" "11:25:00" 6055 12 "node/8197552110" "Studio" "11:25:38"
541 "1551" "L35" 1023.8308693302001 10.807103620707668 11462 2 "node/8197563719" "Kondisa" "18:10:00" 11472 12 "node/8197552110" "Studio" "18:10:38"
567 "1558" "L35" 1023.8308693302001 10.807103620707668 12066 2 "node/8197563719" "Kondisa" "19:13:00" 12076 12 "node/8197552110" "Studio" "19:13:38"
958 "1577" "L35" 1023.8308693302001 10.807103620707668 20700 2 "node/8197563719" "Kondisa" "22:04:00" 20710 12 "node/8197552110" "Studio" "22:04:38"
2039 "1546" "L35" 1023.8308693302001 10.807103620707668 44665 2 "node/8197563719" "Kondisa" "17:25:00" 44675 12 "node/8197552110" "Studio" "17:25:38"
302 "1504" "L35" 1023.8308693302001 10.807103620707668 6161 2 "node/8197563719" "Kondisa" "11:07:00" 6171 12 "node/8197552110" "Studio" "11:07:38"
2079 "1538" "L35" 1023.8308693302001 10.807103620707668 45574 2 "node/8197563719" "Kondisa" "16:13:00" 45584 12 "node/8197552110" "Studio" "16:13:38"
feed_expiration_date7_days WARNING 1

feed_expiration_date7_days

Dataset should be valid for at least the next 7 days.

The dataset expiration date defined in feed_info.txt is in seven days or less. At any time, the published GTFS dataset should be valid for at least the next 7 days.

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 "20260116" "20211130" "20260123"
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_timepoint_value WARNING 57049

missing_timepoint_value

stop_times.timepoint value is missing for a record.

When at least one of stop_times.arrival_time or stop_times.departure_time are provided, stop_times.timepoint should be defined

You can see more about this notice here.

Only the first 50 of 57049 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 "344" 1
3 "344" 2
4 "344" 3
5 "344" 4
6 "344" 5
7 "344" 6
8 "344" 7
9 "344" 8
10 "344" 9
11 "344" 10
12 "344" 11
13 "344" 12
14 "344" 13
15 "344" 14
16 "344" 15
17 "344" 16
18 "344" 17
19 "344" 18
20 "345" 1
21 "345" 2
22 "345" 3
23 "345" 4
24 "345" 5
25 "345" 6
26 "345" 7
27 "345" 8
28 "345" 9
29 "345" 10
30 "345" 11
31 "345" 12
32 "345" 13
33 "345" 14
34 "345" 15
35 "345" 16
36 "345" 17
37 "345" 18
38 "346" 1
39 "346" 2
40 "346" 3
41 "346" 4
42 "346" 5
43 "346" 6
44 "346" 7
45 "346" 8
46 "346" 9
47 "346" 10
48 "346" 11
49 "346" 12
50 "346" 13
51 "346" 14
route_long_name_contains_short_name WARNING 25

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`.
"L19" 2 "L19" "L19"
"L14" 3 "L14" "L14"
"L16" 4 "L16" "L16"
"L11" 5 "L11" "L11"
"L12" 6 "L12" "L12"
"L13" 7 "L13" "L13"
"L21" 8 "L21" "L21"
"L23" 9 "L23" "L23"
"L25" 10 "L25" "L25"
"L24" 11 "L24" "L24"
"L27" 12 "L27" "L27"
"L26" 13 "L26" "L26"
"L29" 14 "L29" "L29"
"L6" 15 "L6" "L6"
"L7" 16 "L7" "L7"
"L4" 17 "L4" "L4"
"L5" 18 "L5" "L5"
"L2" 19 "L2" "L2"
"L3" 20 "L3" "L3"
"L1" 21 "L1" "L1"
"L8" 22 "L8" "L8"
"L9" 23 "L9" "L9"
"L36" 24 "L36" "L36"
"L34" 25 "L34" "L34"
"L35" 26 "L35" "L35"
trip_coverage_not_active_for_next7_days WARNING 1

trip_coverage_not_active_for_next7_days

Trips data should be valid for at least the next seven days.

This notice is triggered if the date range where a significant number of trips are running ends in less than 7 days.

You can see more about this notice here.

currentDate (?) Current date (YYYYMMDD format). serviceWindowStartDate (?) The start date of the majority service window. serviceWindowEndDate (?) The end date of the majority service window.
"20260116" "20201201" "20211130"