bel-rail — Source Data Validation Report

This report was generated by the Canonical GTFS Schedule validator, version 8.0.1 at 2026-07-24T19:43:11Z,
for the dataset file:///shared/bel-rail_6bcc0c33.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:
2025-12-20
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: 86279
  • Routes: 1801
  • Shapes: 0
  • Stops: 2895
  • Trips: 134809

Specification Compliance report

226626 notices reported (0 errors, 68785 warnings, 157841 infos)

Notice Code Severity Total
expired_calendar WARNING 17159

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 17159 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"
31 "gc:nmbssncb:000029"
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 18

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" "BRAINE-ALLIANCE" 577
"stops.txt" "stop_name" "ERQUELINNES-FRONTIERE" 588
"stops.txt" "stop_name" "ESPLECHIN-FRONTIERE" 589
"stops.txt" "stop_name" "KOLN-EHRENFELD" 609
"stops.txt" "stop_name" "KOLN SUD" 610
"stops.txt" "stop_name" "LORRAINE TGV" 619
"stops.txt" "stop_name" "MEER-GRENS" 627
"stops.txt" "stop_name" "QUEVY-FRONTIERE" 665
"stops.txt" "stop_name" "KOLN-EHRENFELD" 688
"stops.txt" "stop_name" "KOLN SUD" 694
"stops.txt" "stop_name" "LORRAINE TGV" 717
"stops.txt" "stop_name" "BRAINE-ALLIANCE" 1055
"stops.txt" "stop_name" "MEER-GRENS" 1321
"stops.txt" "stop_name" "ERQUELINNES-FRONTIERE" 2203
"stops.txt" "stop_name" "QUEVY-FRONTIERE" 2429
"stops.txt" "stop_name" "ESPLECHIN-FRONTIERE" 2432
"trips.txt" "trip_headsign" "MEER-GRENS" 74871
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:973" 59 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:1004" 62 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:974" 1754 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:975" 1755 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:976" 1756 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:977" 1757 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:978" 1779 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:979" 1780 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:980" 1782 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:981" 1783 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:982" 1784 "#FFCD00" "#FFFFFF"
"gr:nmbssncb:983" 1785 "#FFCD00" "#FFFFFF"
service_has_no_active_day_of_the_week WARNING 51593

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 51593 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.
22 "gs:nmbssncb:8882206_BUS" "La Louvière-Sud"
24 "gs:nmbssncb:8895505_DSP 485" "Grammont"
25 "gs:nmbssncb:8896800_3" "Roulers"
big_gap_in_service INFO 65004

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 65004 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:000010" "2026-01-30" "2026-03-09" 37
"gc:nmbssncb:000014" "2026-01-27" "2026-03-09" 40
"gc:nmbssncb:000017" "2026-01-30" "2026-03-09" 37
"gc:nmbssncb:000018" "2026-01-28" "2026-03-11" 41
"gc:nmbssncb:000020" "2026-01-30" "2026-03-10" 38
"gc:nmbssncb:000022" "2026-01-30" "2026-03-11" 39
"gc:nmbssncb:000023" "2026-01-30" "2026-03-09" 37
"gc:nmbssncb:000033" "2026-01-30" "2026-03-09" 37
"gc:nmbssncb:000034" "2026-01-27" "2026-03-09" 40
"gc:nmbssncb:000037" "2026-01-30" "2026-03-09" 37
"gc:nmbssncb:000038" "2026-01-29" "2026-03-09" 38
"gc:nmbssncb:000039" "2026-01-26" "2026-03-09" 41
"gc:nmbssncb:000042" "2026-01-29" "2026-03-10" 39
"gc:nmbssncb:000043" "2026-01-27" "2026-03-10" 41
"gc:nmbssncb:000044" "2026-01-28" "2026-03-09" 39
"gc:nmbssncb:000059" "2026-02-01" "2026-03-14" 40
"gc:nmbssncb:000074" "2026-02-22" "2026-03-21" 26
"gc:nmbssncb:000078" "2026-02-02" "2026-03-15" 40
"gc:nmbssncb:000085" "2026-02-23" "2026-03-22" 26
"gc:nmbssncb:000096" "2026-02-23" "2026-03-28" 32
"gc:nmbssncb:000098" "2026-02-22" "2026-03-28" 33
"gc:nmbssncb:000102" "2026-02-22" "2026-03-28" 33
"gc:nmbssncb:000102" "2026-03-28" "2026-07-04" 97
"gc:nmbssncb:000103" "2026-06-14" "2026-08-22" 68
"gc:nmbssncb:000104" "2026-01-25" "2026-02-28" 33
"gc:nmbssncb:000104" "2026-03-01" "2026-03-28" 26
"gc:nmbssncb:000109" "2026-03-22" "2026-04-06" 14
"gc:nmbssncb:000111" "2026-04-26" "2026-09-26" 152
"gc:nmbssncb:000114" "2026-06-21" "2026-09-05" 75
"gc:nmbssncb:000115" "2026-09-20" "2026-10-17" 26
"gc:nmbssncb:000122" "2026-03-21" "2026-04-06" 15
"gc:nmbssncb:000127" "2026-09-20" "2026-10-24" 33
"gc:nmbssncb:000130" "2026-03-15" "2026-05-09" 54
"gc:nmbssncb:000142" "2026-02-08" "2026-10-17" 250
"gc:nmbssncb:000157" "2026-01-25" "2026-05-16" 110
"gc:nmbssncb:000158" "2026-01-19" "2026-04-27" 97
"gc:nmbssncb:000160" "2026-03-15" "2026-08-29" 166
"gc:nmbssncb:000170" "2026-06-08" "2026-11-16" 160
"gc:nmbssncb:000171" "2026-08-09" "2026-09-05" 26
"gc:nmbssncb:000171" "2026-09-06" "2026-09-26" 19
"gc:nmbssncb:000183" "2026-06-07" "2026-11-14" 159
"gc:nmbssncb:000199" "2026-06-07" "2026-11-14" 159
"gc:nmbssncb:000199" "2026-11-15" "2026-12-05" 19
"gc:nmbssncb:000201" "2026-08-09" "2026-09-26" 47
"gc:nmbssncb:000287" "2026-03-12" "2026-04-23" 41
"gc:nmbssncb:000287" "2026-04-23" "2026-06-04" 41
"gc:nmbssncb:000311" "2026-03-08" "2026-03-28" 19
"gc:nmbssncb:000312" "2026-06-02" "2026-07-29" 56
"gc:nmbssncb:000314" "2026-08-27" "2026-10-08" 41
"gc:nmbssncb:000323" "2026-07-19" "2026-08-29" 40
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 92836

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 92836 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" 395606 395654
"gt:nmbssncb:88____:007::8821402:8872009:49:1908:20260130:2" 395655 395703
"gt:nmbssncb:88____:007::8821402:8872009:49:1908:20260130:3" 395563 395783
"gt:nmbssncb:88____:046::8821006:8822715:10:1153:20260618" 1253816 1253825
"gt:nmbssncb:88____:G71::8895505:8892007:12:1056:20260306" 2044082 2044093
"gt:nmbssncb:88____:097::8872009:8819406:20:1813:20261211:3" 1868422 1868441
"gt:nmbssncb:88____:097::8872009:8819406:20:1813:20261211:4" 1868442 1868461
"gt:nmbssncb:88____:007::8892007:8833001:11:1839:20261106" 1103549 1103559
"gt:nmbssncb:88____:007::8891405:8831765:16:1218:20260809:1" 978158 978173
"gt:nmbssncb:88____:097::8872009:8819406:20:1813:20261211:1" 1868382 1868401
"gt:nmbssncb:88____:007::8891405:8831765:16:1218:20260809:2" 978174 978189
"gt:nmbssncb:88____:097::8872009:8819406:20:1813:20261211:2" 1868402 1868421
"gt:nmbssncb:88____:046::8891553:8822004:28:1827:20261211:1" 1443020 1443047
"gt:nmbssncb:88____:046::8891553:8822004:28:1827:20261211:2" 1443048 1443075
"gt:nmbssncb:88____:097::8814209:8833001:20:1520:20260525" 1843244 1843263
"gt:nmbssncb:88____:100::8400530:8814001:24:2017:20260329" 1881490 1881513
"gt:nmbssncb:88____:007::8811601:8872009:12:2321:20260227" 85772 85783
"gt:nmbssncb:88____:G70::8892908:8893708:15:2147:20261004" 2033139 2033153
"gt:nmbssncb:88____:070::8872009:8822004:26:613:20261106" 1562916 1562972
"gt:nmbssncb:88____:007::8841608:8881000:13:2121:20260814:1" 577797 577809
"gt:nmbssncb:88____:007::8831005:8821006:25:2011:20260118" 415397 415421
"gt:nmbssncb:88____:007::8841608:8881000:13:2121:20260814:2" 577810 577822
"gt:nmbssncb:88____:A72::8821006:8832409:13:1822:20261212" 1934386 1934398
"gt:nmbssncb:88____:007::8872009:8821006:13:1320:20260517" 761044 761056
"gt:nmbssncb:88____:075::8814308:8822004:15:1241:20260628" 1679984 1679998
"gt:nmbssncb:88____:007::8884004:8841673:19:1343:20260614:1" 868519 868537
"gt:nmbssncb:88____:007::8884004:8841673:19:1343:20260614:2" 868538 868556
"gt:nmbssncb:88____:046::8814001:8821006:17:2503:20260705:1" 1243885 1243901
"gt:nmbssncb:88____:046::8865300:8863008:15:1408:20260310:1" 1392552 1392566
"gt:nmbssncb:88____:046::8865300:8863008:15:1408:20260310:2" 1392567 1392581
"gt:nmbssncb:88____:C71::8871308:8872009:13:1208:20260113" 1998173 1998185
"gt:nmbssncb:88____:046::8814001:8821006:17:2503:20260705:2" 1243902 1243918
"gt:nmbssncb:88____:078::8811304:8895208:18:1905:20260315" 1703114 1703131
"gt:nmbssncb:88____:046::8814001:8821006:17:2503:20260705:3" 1243919 1243935
"gt:nmbssncb:88____:046::8814001:8821006:17:2503:20260705:4" 1243936 1243952
"gt:nmbssncb:88____:046::8895505:8881505:18:1052:20260614" 1455543 1455560
"gt:nmbssncb:88____:070::8821121:8814209:32:1356:20260411" 1557295 1557326
"gt:nmbssncb:88____:007::8872009:8821006:13:1320:20260525" 761057 761069
"gt:nmbssncb:88____:046::8833001:8831765:11:2420:20260424:1" 1306510 1306520
"gt:nmbssncb:88____:007::8821006:8872009:14:928:20261101" 330166 330179
"gt:nmbssncb:88____:046::8833001:8831765:11:2420:20260424:2" 1306521 1306531
"gt:nmbssncb:88____:046::8833001:8831765:11:2420:20260424:3" 1306532 1306542
"gt:nmbssncb:88____:097::8819406:8872009:28:2322:20260123" 1856431 1856458
"gt:nmbssncb:88____:071::8833001:8883006:24:840:20260329:1" 1598884 1598907
"gt:nmbssncb:88____:071::8833001:8883006:24:840:20260329:2" 1598908 1598931
"gt:nmbssncb:88____:079::8833001:8814209:20:1827:20261106" 1756578 1756597
"gt:nmbssncb:88____:007::8814001:8200100:16:1049:20260624:1" 90456 90471
"gt:nmbssncb:88____:007::8814001:8200100:16:1049:20260624:2" 90472 90487
"gt:nmbssncb:88____:007::8863008:8896008:43:1852:20260423:2" 706878 706944
"gt:nmbssncb:88____:071::8833001:8883006:24:1040:20260508:1" 1586020 1586043