GTFS Schedule Validation Report

This report was generated by the Canonical GTFS Schedule validator, version 8.0.1-SNAPSHOT at 2026-07-13T10:10:45Z,
for the dataset file:///data/feed.zip. No country code was provided.

Use this report alongside our documentation.

Summary

Agencies included


Feed Info


Publisher Name:
nmbssncb
Feed Email:
N/A
Feed Language:
French
Feed Start Date:
2026-01-11
Feed End Date:
2026-12-12

Files included


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

Counts


  • Agencies: 1
  • Blocks: 83840
  • Routes: 1755
  • Shapes: 0
  • Stops: 2885
  • Trips: 129939

Specification Compliance report

213099 notices reported (0 errors, 63782 warnings, 149317 infos)

Notice Code Severity Total
expired_calendar WARNING 15260

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.

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

csvRowNumber (?) The row of the faulty record. serviceId (?) The service id of the faulty record.
3 "gc:nmbssncb:000001"
4 "gc:nmbssncb:000002"
10 "gc:nmbssncb:000008"
11 "gc:nmbssncb:000009"
12 "gc:nmbssncb:000010"
13 "gc:nmbssncb:000011"
14 "gc:nmbssncb:000012"
15 "gc:nmbssncb:000013"
16 "gc:nmbssncb:000014"
17 "gc:nmbssncb:000015"
18 "gc:nmbssncb:000016"
19 "gc:nmbssncb:000017"
20 "gc:nmbssncb:000018"
21 "gc:nmbssncb:000019"
22 "gc:nmbssncb:000020"
23 "gc:nmbssncb:000021"
24 "gc:nmbssncb:000022"
25 "gc:nmbssncb:000023"
26 "gc:nmbssncb:000024"
27 "gc:nmbssncb:000025"
28 "gc:nmbssncb:000026"
29 "gc:nmbssncb:000027"
30 "gc:nmbssncb:000028"
32 "gc:nmbssncb:000030"
33 "gc:nmbssncb:000031"
34 "gc:nmbssncb:000032"
35 "gc:nmbssncb:000033"
36 "gc:nmbssncb:000034"
37 "gc:nmbssncb:000035"
38 "gc:nmbssncb:000036"
39 "gc:nmbssncb:000037"
40 "gc:nmbssncb:000038"
41 "gc:nmbssncb:000039"
42 "gc:nmbssncb:000040"
43 "gc:nmbssncb:000041"
44 "gc:nmbssncb:000042"
45 "gc:nmbssncb:000043"
46 "gc:nmbssncb:000044"
47 "gc:nmbssncb:000045"
48 "gc:nmbssncb:000046"
49 "gc:nmbssncb:000047"
50 "gc:nmbssncb:000048"
51 "gc:nmbssncb:000049"
52 "gc:nmbssncb:000050"
53 "gc:nmbssncb:000051"
54 "gc:nmbssncb:000052"
55 "gc:nmbssncb:000053"
56 "gc:nmbssncb:000054"
57 "gc:nmbssncb:000055"
58 "gc:nmbssncb:000056"
mixed_case_recommended_field WARNING 17

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.
"agency.txt" "agency_name" "NMBS/SNCB" 2
"stops.txt" "stop_name" "LORRAINE TGV" 30
"stops.txt" "stop_name" "BRAINE-ALLIANCE" 579
"stops.txt" "stop_name" "ERQUELINNES-FRONTIERE" 589
"stops.txt" "stop_name" "ESPLECHIN-FRONTIERE" 590
"stops.txt" "stop_name" "KOLN-EHRENFELD" 610
"stops.txt" "stop_name" "KOLN SUD" 611
"stops.txt" "stop_name" "MEER-GRENS" 625
"stops.txt" "stop_name" "QUEVY-FRONTIERE" 637
"stops.txt" "stop_name" "KOLN-EHRENFELD" 657
"stops.txt" "stop_name" "KOLN SUD" 663
"stops.txt" "stop_name" "LORRAINE TGV" 712
"stops.txt" "stop_name" "BRAINE-ALLIANCE" 1049
"stops.txt" "stop_name" "MEER-GRENS" 1331
"stops.txt" "stop_name" "ERQUELINNES-FRONTIERE" 2193
"stops.txt" "stop_name" "QUEVY-FRONTIERE" 2384
"stops.txt" "stop_name" "ESPLECHIN-FRONTIERE" 2422
route_color_contrast WARNING 12

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.
"gr:nmbssncb:925" 1675 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:926" 1676 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:927" 1677 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:928" 1678 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:929" 1679 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:930" 1681 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:931" 1682 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:932" 1683 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:933" 1684 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:934" 1685 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:935" 1686 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:956" 1709 "#FFCD00" "#FFFFFF"
service_has_no_active_day_of_the_week WARNING 48490

service_has_no_active_day_of_the_week

A service is not valid for any day of the week.

You can see more about this notice here.

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

csvRowNumber (?) The row number in calendar.txt where the error occurs. serviceId (?) The service_id field value.
2 "gc:nmbssncb:000000"
3 "gc:nmbssncb:000001"
4 "gc:nmbssncb:000002"
5 "gc:nmbssncb:000003"
6 "gc:nmbssncb:000004"
7 "gc:nmbssncb:000005"
8 "gc:nmbssncb:000006"
9 "gc:nmbssncb:000007"
10 "gc:nmbssncb:000008"
11 "gc:nmbssncb:000009"
12 "gc:nmbssncb:000010"
13 "gc:nmbssncb:000011"
14 "gc:nmbssncb:000012"
15 "gc:nmbssncb:000013"
16 "gc:nmbssncb:000014"
17 "gc:nmbssncb:000015"
18 "gc:nmbssncb:000016"
19 "gc:nmbssncb:000017"
20 "gc:nmbssncb:000018"
21 "gc:nmbssncb:000019"
22 "gc:nmbssncb:000020"
23 "gc:nmbssncb:000021"
24 "gc:nmbssncb:000022"
25 "gc:nmbssncb:000023"
26 "gc:nmbssncb:000024"
27 "gc:nmbssncb:000025"
28 "gc:nmbssncb:000026"
29 "gc:nmbssncb:000027"
30 "gc:nmbssncb:000028"
31 "gc:nmbssncb:000029"
32 "gc:nmbssncb:000030"
33 "gc:nmbssncb:000031"
34 "gc:nmbssncb:000032"
35 "gc:nmbssncb:000033"
36 "gc:nmbssncb:000034"
37 "gc:nmbssncb:000035"
38 "gc:nmbssncb:000036"
39 "gc:nmbssncb:000037"
40 "gc:nmbssncb:000038"
41 "gc:nmbssncb:000039"
42 "gc:nmbssncb:000040"
43 "gc:nmbssncb:000041"
44 "gc:nmbssncb:000042"
45 "gc:nmbssncb:000043"
46 "gc:nmbssncb:000044"
47 "gc:nmbssncb:000045"
48 "gc:nmbssncb:000046"
49 "gc:nmbssncb:000047"
50 "gc:nmbssncb:000048"
51 "gc:nmbssncb:000049"
stop_without_stop_time WARNING 3

stop_without_stop_time

A stop in stops.txt is not referenced by any stop_times.stop_id.

Such stops are not used by any trip and normally do not provide user value. This notice may indicate a typo in stop_times.txt.

You can see more about this notice here.

csvRowNumber (?) The row number of the faulty record. stopId (?) The id of the faulty stop. stopName (?) The name of the faulty stop.
70 "gs:nmbssncb:8896800_3" "Roulers"
126 "gs:nmbssncb:8895505_DSP 485" "Grammont"
145 "gs:nmbssncb:8882206_BUS" "La Louvière-Sud"
big_gap_in_service INFO 59015

big_gap_in_service

A service has a gap of more than 13 days between active service dates.

You can see more about this notice here.

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

serviceId (?) The service_id that has the gap. gapStartDate (?) The first day of the gap. gapEndDate (?) The last day of the gap. gapDurationDays (?) The number of days in the gap.
"gc:nmbssncb:000009" "2026-01-30" "2026-03-09" 37
"gc:nmbssncb:000013" "2026-01-27" "2026-03-09" 40
"gc:nmbssncb:000016" "2026-01-30" "2026-03-09" 37
"gc:nmbssncb:000017" "2026-01-28" "2026-03-11" 41
"gc:nmbssncb:000019" "2026-01-30" "2026-03-10" 38
"gc:nmbssncb:000021" "2026-01-30" "2026-03-11" 39
"gc:nmbssncb:000022" "2026-01-30" "2026-03-09" 37
"gc:nmbssncb:000032" "2026-01-30" "2026-03-09" 37
"gc:nmbssncb:000033" "2026-01-27" "2026-03-09" 40
"gc:nmbssncb:000036" "2026-01-30" "2026-03-09" 37
"gc:nmbssncb:000037" "2026-01-29" "2026-03-09" 38
"gc:nmbssncb:000038" "2026-01-26" "2026-03-09" 41
"gc:nmbssncb:000041" "2026-01-29" "2026-03-10" 39
"gc:nmbssncb:000042" "2026-01-27" "2026-03-10" 41
"gc:nmbssncb:000043" "2026-01-28" "2026-03-09" 39
"gc:nmbssncb:000058" "2026-02-01" "2026-03-14" 40
"gc:nmbssncb:000072" "2026-02-22" "2026-03-21" 26
"gc:nmbssncb:000076" "2026-02-02" "2026-03-15" 40
"gc:nmbssncb:000082" "2026-02-23" "2026-03-22" 26
"gc:nmbssncb:000093" "2026-02-23" "2026-03-28" 32
"gc:nmbssncb:000095" "2026-02-22" "2026-03-28" 33
"gc:nmbssncb:000099" "2026-02-22" "2026-03-28" 33
"gc:nmbssncb:000099" "2026-03-28" "2026-07-04" 97
"gc:nmbssncb:000100" "2026-06-14" "2026-08-22" 68
"gc:nmbssncb:000101" "2026-01-25" "2026-02-28" 33
"gc:nmbssncb:000101" "2026-03-01" "2026-03-28" 26
"gc:nmbssncb:000105" "2026-03-22" "2026-04-06" 14
"gc:nmbssncb:000107" "2026-04-26" "2026-09-26" 152
"gc:nmbssncb:000110" "2026-06-21" "2026-09-05" 75
"gc:nmbssncb:000111" "2026-09-20" "2026-10-17" 26
"gc:nmbssncb:000118" "2026-03-21" "2026-04-06" 15
"gc:nmbssncb:000127" "2026-03-15" "2026-05-09" 54
"gc:nmbssncb:000137" "2026-02-08" "2026-10-17" 250
"gc:nmbssncb:000152" "2026-01-25" "2026-05-16" 110
"gc:nmbssncb:000153" "2026-01-19" "2026-04-27" 97
"gc:nmbssncb:000155" "2026-03-15" "2026-08-29" 166
"gc:nmbssncb:000165" "2026-06-08" "2026-11-16" 160
"gc:nmbssncb:000166" "2026-08-09" "2026-09-05" 26
"gc:nmbssncb:000166" "2026-09-06" "2026-09-26" 19
"gc:nmbssncb:000178" "2026-06-07" "2026-11-14" 159
"gc:nmbssncb:000195" "2026-06-07" "2026-11-14" 159
"gc:nmbssncb:000195" "2026-11-15" "2026-12-05" 19
"gc:nmbssncb:000197" "2026-08-09" "2026-09-26" 47
"gc:nmbssncb:000242" "2026-04-06" "2026-05-01" 24
"gc:nmbssncb:000242" "2026-05-03" "2026-05-23" 19
"gc:nmbssncb:000242" "2026-05-25" "2026-09-26" 123
"gc:nmbssncb:000243" "2026-02-08" "2026-03-14" 33
"gc:nmbssncb:000243" "2026-03-15" "2026-04-25" 40
"gc:nmbssncb:000243" "2026-04-26" "2026-07-25" 89
"gc:nmbssncb:000243" "2026-08-09" "2026-09-05" 26
unknown_column INFO 1

unknown_column

A column name is unknown.

You can see more about this notice here.

filename (?) The name of the faulty file. fieldName (?) The name of the unknown column. index (?) The index of the faulty column.
"feed_info.txt" "feed_id" 1
unsorted_stop_times INFO 90301

unsorted_stop_times

Stop times are not sorted by trip_id and stop_sequence.

'stop_times.txt' entries for a given trip are not sorted by stop_sequence, or are not contiguous in the file.

You can see more about this notice here.

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

tripId (?) The faulty record's trip_id. startCsvRowNumber (?) CSV row number of the first stop_times entry for this trip. endCsvRowNumber (?) CSV row number of the last stop_times entry for this trip.
"gt:nmbssncb:88____:007::8821402:8872009:49:1908:20260130:1" 373945 373993
"gt:nmbssncb:88____:007::8821402:8872009:49:1908:20260130:2" 373994 374042
"gt:nmbssncb:88____:007::8821402:8872009:49:1908:20260130:3" 374043 374091
"gt:nmbssncb:88____:046::8821006:8822715:10:1153:20260618" 1189939 1189956
"gt:nmbssncb:88____:G71::8895505:8892007:12:1056:20260306" 1952010 1952021
"gt:nmbssncb:88____:097::8872009:8819406:20:1813:20261211:3" 1781879 1781898
"gt:nmbssncb:88____:097::8872009:8819406:20:1813:20261211:4" 1781899 1781918
"gt:nmbssncb:88____:007::8892007:8833001:11:1839:20261106" 1045510 1045520
"gt:nmbssncb:88____:007::8891405:8831765:16:1218:20260809:1" 925660 925675
"gt:nmbssncb:88____:097::8872009:8819406:20:1813:20261211:1" 1781839 1781858
"gt:nmbssncb:88____:007::8891405:8831765:16:1218:20260809:2" 925676 925691
"gt:nmbssncb:88____:097::8872009:8819406:20:1813:20261211:2" 1781859 1781878
"gt:nmbssncb:88____:046::8891553:8822004:28:1827:20261211:1" 1371792 1371819
"gt:nmbssncb:88____:046::8891553:8822004:28:1827:20261211:2" 1371820 1371847
"gt:nmbssncb:88____:097::8814209:8833001:20:1520:20260525" 1758193 1758212
"gt:nmbssncb:88____:100::8400530:8814001:24:2017:20260329" 1794572 1794595
"gt:nmbssncb:88____:007::8811601:8872009:12:2321:20260227" 79057 79068
"gt:nmbssncb:88____:G70::8892908:8893708:15:2147:20261004" 1941522 1941536
"gt:nmbssncb:88____:070::8872009:8822004:26:613:20261106" 1486792 1486817
"gt:nmbssncb:88____:007::8841608:8881000:13:2121:20260814:1" 643184 643196
"gt:nmbssncb:88____:007::8831005:8821006:25:2011:20260118" 393294 393318
"gt:nmbssncb:88____:007::8841608:8881000:13:2121:20260814:2" 643197 643209
"gt:nmbssncb:88____:A72::8821006:8832409:13:1822:20261212" 1845777 1845789
"gt:nmbssncb:88____:007::8872009:8821006:13:1320:20260517" 719092 719104
"gt:nmbssncb:88____:075::8814308:8822004:15:1241:20260628" 1599233 1599247
"gt:nmbssncb:88____:007::8884004:8841673:19:1343:20260614:1" 823108 823126
"gt:nmbssncb:88____:007::8884004:8841673:19:1343:20260614:2" 823127 823145
"gt:nmbssncb:88____:046::8814001:8821006:17:2503:20260705:1" 1180158 1180174
"gt:nmbssncb:88____:046::8865300:8863008:15:1408:20260310:1" 1323719 1323733
"gt:nmbssncb:88____:046::8865300:8863008:15:1408:20260310:2" 1323734 1323748
"gt:nmbssncb:88____:C71::8871308:8872009:13:1208:20260113" 1907253 1907265
"gt:nmbssncb:88____:046::8814001:8821006:17:2503:20260705:2" 1180175 1180191
"gt:nmbssncb:88____:078::8811304:8895208:18:1905:20260315" 1622249 1622266
"gt:nmbssncb:88____:046::8814001:8821006:17:2503:20260705:3" 1180192 1180208
"gt:nmbssncb:88____:046::8814001:8821006:17:2503:20260705:4" 1180209 1180225
"gt:nmbssncb:88____:046::8895505:8881505:18:1052:20260614" 1383427 1383444
"gt:nmbssncb:88____:070::8821121:8814209:32:1356:20260411" 1481296 1481327
"gt:nmbssncb:88____:007::8872009:8821006:13:1320:20260525" 719105 719117
"gt:nmbssncb:88____:046::8833001:8831765:11:2420:20260424:1" 1241500 1241510
"gt:nmbssncb:88____:007::8821006:8872009:14:928:20261101" 312530 312543
"gt:nmbssncb:88____:046::8833001:8831765:11:2420:20260424:2" 1241511 1241521
"gt:nmbssncb:88____:046::8833001:8831765:11:2420:20260424:3" 1241522 1241532
"gt:nmbssncb:88____:097::8819406:8872009:28:2322:20260123" 1770525 1770552
"gt:nmbssncb:88____:071::8833001:8883006:24:840:20260329:1" 1521953 1521976
"gt:nmbssncb:88____:071::8833001:8883006:24:840:20260329:2" 1521977 1522000
"gt:nmbssncb:88____:079::8833001:8814209:20:1827:20261106" 1673455 1673474
"gt:nmbssncb:88____:007::8814001:8200100:16:1049:20260624:1" 83247 83262
"gt:nmbssncb:88____:007::8814001:8200100:16:1049:20260624:2" 83263 83278
"gt:nmbssncb:88____:007::8863008:8896008:43:1852:20260423:2" 667867 667909
"gt:nmbssncb:88____:071::8833001:8883006:24:1040:20260508:1" 1509713 1509736