breeze-transit — Source Data Validation Report

This report was generated by the Canonical GTFS Schedule validator, version 8.0.1 at 2026-09-11T21:30:35Z,
for the dataset file:///shared/breeze-transit_15a48e99.zip. No country code was provided.

Use this report alongside our documentation.

Summary

Agencies included


Feed Info


Publisher Name:
N/A
Publisher URL:
N/A
Feed Email:
N/A
Feed Language:
N/A

Files included


  1. agency.txt
  2. calendar.txt
  3. calendar_dates.txt
  4. fare_attributes.txt
  5. fare_rules.txt
  6. routes.txt
  7. shapes.txt
  8. stop_times.txt
  9. stops.txt
  10. trips.txt

Counts


  • Agencies: 1
  • Blocks: 335
  • Routes: 0
  • Shapes: 129
  • Stops: 0
  • Trips: 8075

Specification Compliance report

10216 notices reported (1025 errors, 1100 warnings, 8091 infos)

Notice Code Severity Total
invalid_color ERROR 2

invalid_color

A field contains an invalid color value.

A color must be encoded as a six-digit hexadecimal number. The leading "#" is not included.

Example: FFFFFF for white, 000000 for black or 0039A6 for the A,C,E lines in NYC MTA.

You can see more about this notice here.

filename (?) The name of the faulty file. csvRowNumber (?) The row of the faulty record. fieldName (?) Faulty record's field name. fieldValue (?) Faulty value.
"routes.txt" 22 "route_color" ""
"routes.txt" 57 "route_color" ""
invalid_url ERROR 1023

invalid_url

A field contains a malformed URL.

Definitions for valid URLs are quite vague. We perform strict validation using the Apache Commons UrlValidator.

You can see more about this notice here.

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

filename (?) The name of the faulty file. csvRowNumber (?) The row of the faulty record. fieldName (?) Faulty record's field name. fieldValue (?) Faulty value.
"stops.txt" 2 "stop_url" ""
"stops.txt" 4 "stop_url" ""
"stops.txt" 5 "stop_url" ""
"stops.txt" 6 "stop_url" ""
"stops.txt" 7 "stop_url" ""
"stops.txt" 8 "stop_url" ""
"stops.txt" 9 "stop_url" ""
"stops.txt" 10 "stop_url" ""
"stops.txt" 11 "stop_url" ""
"stops.txt" 12 "stop_url" ""
"stops.txt" 13 "stop_url" ""
"stops.txt" 14 "stop_url" ""
"stops.txt" 15 "stop_url" ""
"stops.txt" 16 "stop_url" ""
"stops.txt" 17 "stop_url" ""
"stops.txt" 18 "stop_url" ""
"stops.txt" 19 "stop_url" ""
"stops.txt" 20 "stop_url" ""
"stops.txt" 21 "stop_url" ""
"stops.txt" 22 "stop_url" ""
"stops.txt" 23 "stop_url" ""
"stops.txt" 24 "stop_url" ""
"stops.txt" 25 "stop_url" ""
"stops.txt" 26 "stop_url" ""
"stops.txt" 27 "stop_url" ""
"stops.txt" 28 "stop_url" ""
"stops.txt" 29 "stop_url" ""
"stops.txt" 30 "stop_url" ""
"stops.txt" 31 "stop_url" ""
"stops.txt" 32 "stop_url" ""
"stops.txt" 33 "stop_url" ""
"stops.txt" 34 "stop_url" ""
"stops.txt" 35 "stop_url" ""
"stops.txt" 36 "stop_url" ""
"stops.txt" 37 "stop_url" ""
"stops.txt" 38 "stop_url" ""
"stops.txt" 39 "stop_url" ""
"stops.txt" 40 "stop_url" ""
"stops.txt" 41 "stop_url" ""
"stops.txt" 42 "stop_url" ""
"stops.txt" 43 "stop_url" ""
"stops.txt" 44 "stop_url" ""
"stops.txt" 45 "stop_url" ""
"stops.txt" 46 "stop_url" ""
"stops.txt" 47 "stop_url" ""
"stops.txt" 48 "stop_url" ""
"stops.txt" 49 "stop_url" ""
"stops.txt" 50 "stop_url" ""
"stops.txt" 51 "stop_url" ""
"stops.txt" 52 "stop_url" ""
expired_calendar WARNING 19

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 "HS"
3 "LG"
4 "LGS"
5 "LGW"
6 "LW"
7 "SA"
8 "SAUF"
9 "SHS"
10 "SLG"
11 "SLW"
12 "SSA"
13 "SSU"
14 "SU"
15 "SUUF"
16 "SWB"
17 "SWE"
18 "WB"
19 "WE"
20 "WESF"
leading_or_trailing_whitespaces WARNING 1072

leading_or_trailing_whitespaces

The value in CSV file has leading or trailing whitespaces.

This notice is emitted for values protected with double quotes since whitespaces for non-protected values are trimmed automatically by CSV parser.

The validator strips whitespaces from protected values. We do not see any use case when such a whitespace may be needed. On the other hand, some real-world feeds use trailing whitespaces for some values and omit them for the others. This is causing the largest problem when a primary key and a foreign key differ just by a whitespace: it is clear that they are intended to be the same, that is why we always strip whitespaces.

You can see more about this notice here.

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

filename (?) The name of the faulty file. csvRowNumber (?) The row of the faulty record. fieldName (?) Faulty record's field name. fieldValue (?) Faulty value.
"routes.txt" 2 "route_desc" " "
"routes.txt" 5 "route_desc" " "
"routes.txt" 7 "route_desc" " "
"routes.txt" 8 "route_desc" " "
"routes.txt" 9 "route_desc" " "
"routes.txt" 10 "route_desc" " "
"routes.txt" 11 "route_desc" " "
"routes.txt" 12 "route_desc" " "
"routes.txt" 13 "route_desc" " "
"routes.txt" 14 "route_desc" " "
"routes.txt" 16 "route_desc" " "
"routes.txt" 17 "route_desc" " "
"routes.txt" 18 "route_desc" " "
"routes.txt" 19 "route_desc" " "
"routes.txt" 20 "route_desc" " "
"routes.txt" 21 "route_desc" " "
"routes.txt" 22 "route_desc" " "
"routes.txt" 22 "route_color" " "
"routes.txt" 25 "route_desc" " "
"routes.txt" 27 "route_desc" " "
"routes.txt" 28 "route_desc" " "
"routes.txt" 30 "route_desc" " "
"routes.txt" 31 "route_desc" " "
"routes.txt" 32 "route_desc" " "
"routes.txt" 33 "route_desc" " "
"routes.txt" 35 "route_desc" " "
"routes.txt" 37 "route_desc" " "
"routes.txt" 38 "route_desc" " "
"routes.txt" 39 "route_desc" " "
"routes.txt" 40 "route_desc" " "
"routes.txt" 41 "route_desc" " "
"routes.txt" 42 "route_desc" " "
"routes.txt" 43 "route_desc" " "
"routes.txt" 44 "route_desc" " "
"routes.txt" 45 "route_desc" " "
"routes.txt" 46 "route_desc" " "
"routes.txt" 47 "route_desc" " "
"routes.txt" 48 "route_desc" " "
"routes.txt" 49 "route_desc" " "
"routes.txt" 50 "route_desc" " "
"routes.txt" 51 "route_desc" " "
"routes.txt" 52 "route_desc" " "
"routes.txt" 53 "route_desc" " "
"routes.txt" 54 "route_desc" " "
"routes.txt" 55 "route_desc" " "
"routes.txt" 57 "route_desc" " "
"routes.txt" 57 "route_color" " "
"stops.txt" 2 "stop_url" " "
"stops.txt" 4 "stop_url" " "
"stops.txt" 5 "stop_url" " "
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.
"fare_attributes.txt" 2 "agency_id"
missing_recommended_file WARNING 1

missing_recommended_file

A recommended file is missing.

You can see more about this notice here.

filename (?) The name of the faulty file.
"feed_info.txt"
mixed_case_recommended_field WARNING 4

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" "CVS @ SW 13th ST" 1037
"stops.txt" "stop_name" "CVS - NW 39th AVE @ NW 13th ST" 1039
"stops.txt" "stop_name" "NE 18 ST @ NE 3 AVE" 1100
"stops.txt" "stop_name" "NE 18 ST @ NE 3 AVE" 1101
service_has_no_active_day_of_the_week WARNING 2

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.

csvRowNumber (?) The row number in calendar.txt where the error occurs. serviceId (?) The service_id field value.
2 "HS"
9 "SHS"
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.
"20260911" "20170814" "20180504"
big_gap_in_service INFO 16

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.

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.
"HS" "2017-09-04" "2017-11-10" 66
"HS" "2017-11-24" "2017-12-26" 31
"LG" "2017-12-15" "2018-01-04" 19
"LGS" "2017-12-09" "2018-01-06" 27
"LGS" "2018-02-24" "2018-03-17" 20
"LGW" "2017-12-13" "2018-01-03" 20
"LW" "2018-02-24" "2018-03-17" 20
"SAUF" "2017-12-09" "2018-01-06" 27
"SAUF" "2018-02-24" "2018-03-17" 20
"SHS" "2018-05-28" "2018-07-04" 36
"SLW" "2018-06-16" "2018-07-07" 20
"SLW" "2018-07-14" "2018-08-18" 34
"SUUF" "2017-12-17" "2018-01-07" 20
"SUUF" "2018-02-25" "2018-03-18" 20
"WE" "2017-12-15" "2018-01-02" 17
"WESF" "2017-12-15" "2018-01-02" 17
unsorted_stop_times INFO 8075

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 8075 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.
"2300013" 886 184968
"2300012" 885 180971
"2300015" 888 184969
"2300014" 887 180972
"2300017" 890 184970
"2300016" 889 180973
"2300019" 892 184971
"2300018" 891 180974
"2300011" 884 184967
"2300010" 883 180970
"2300009" 882 184966
"2300002" 875 180966
"2300001" 874 184962
"2300004" 877 180967
"2300003" 876 184963
"2300006" 879 180968
"2300005" 878 184964
"2300008" 881 180969
"2300007" 880 184965
"2300031" 904 184977
"2300030" 903 180980
"1125001" 129828 164668
"1125002" 8280 185605
"2300024" 897 180977
"2300023" 896 184973
"2300026" 899 180978
"2300025" 898 184974
"2300028" 901 180979
"2300027" 900 184975
"2300029" 902 184976
"2300020" 893 180975
"2300022" 895 180976
"2300021" 894 184972
"1125003" 129830 164669
"1125004" 129831 164670
"1125005" 8281 185606
"1125006" 129833 164671
"1125007" 8282 185607
"1125008" 129835 164672
"1125009" 8283 185608
"6711005" 2203 178993
"6711006" 2204 199106
"6711007" 2205 178994
"6711008" 2206 199107
"6711001" 2199 178991
"6711002" 2200 199104
"6711003" 2201 178992
"6711004" 2202 199105
"6711009" 2207 178995
"1023024" 35512 198941