thebus-org-thebus-1 — Source Data Validation Report

This report was generated by the Canonical GTFS Schedule validator, version 7.1.0 at 2026-03-28T04:43:20Z,
for the dataset file:///shared/thebus-org-thebus-1_4628a498.zip. No country code was provided.

Use this report alongside our documentation.

Summary

Agencies included


Feed Info


Publisher Name:
TheBus
Publisher URL:
http://www.thebus.org
Feed Email:
N/A
Feed Language:
English
Feed Start Date:
2026-02-15
Feed End Date:
2026-05-30

Files included


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

Counts


  • Agencies: 2
  • Blocks: 2568
  • Routes: 120
  • Shapes: 541
  • Stops: 3817
  • Trips: 37713

Specification Compliance report

133531 notices reported (1206 errors, 132314 warnings, 11 infos)

Notice Code Severity Total
decreasing_or_equal_stop_time_distance ERROR 1206

decreasing_or_equal_stop_time_distance

Decreasing or equal shape_dist_traveled in stop_times.txt.

When sorted by stop_times.stop_sequence, two consecutive entries in stop_times.txt should have increasing distance, based on the field shape_dist_traveled. If the values are equal, this is considered as an error.

You can see more about this notice here.

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

tripId (?) The id of the faulty trip. stopId (?) The id of the faulty stop. csvRowNumber (?) The row number from `stop_times.txt`. shapeDistTraveled (?) Actual distance traveled along the shape from the first shape point to the faulty record. stopSequence (?) The faulty record's `stop_times.stop_sequence`. prevCsvRowNumber (?) The row number from `stop_times.txt` of the previous stop time. prevShapeDistTraveled (?) Actual distance traveled along the shape from the first shape point to the previous stop time. prevStopSequence (?) The previous record's `stop_times.stop_sequence`.
"5269904" "2341" 327531 68013.9 51 338363 68013.9 50
"5269912" "2341" 36649 233110.8 142 36872 233110.8 141
"5269930" "2341" 36650 233110.8 142 36873 233110.8 141
"5269938" "2341" 327532 68013.9 51 338364 68013.9 50
"5269946" "2341" 327533 68013.9 51 338365 68013.9 50
"5282914" "4416" 180311 123679.1 76 176085 123679.1 75
"5282913" "4417" 287955 85011.6 53 316219 85011.6 52
"5282906" "4416" 180310 123679.1 76 176084 123679.1 75
"5269954" "2341" 327534 68013.9 51 338366 68013.9 50
"5282902" "4417" 287953 85011.6 53 316217 85011.6 52
"5282905" "4417" 287954 85011.6 53 316218 85011.6 52
"5282933" "4416" 194298 116795.4 73 182452 116795.4 72
"5282938" "4416" 180312 123679.1 76 176086 123679.1 75
"5282937" "4416" 194299 116795.4 73 182453 116795.4 72
"5282941" "4416" 186310 122561.9 74 194300 122561.9 73
"5282929" "4417" 287957 85011.6 53 316221 85011.6 52
"5282921" "4417" 287956 85011.6 53 316220 85011.6 52
"5269979" "2341" 36651 233110.8 142 36874 233110.8 141
"5282922" "4416" 180168 55479.3 76 175942 55479.3 75
"5282930" "4416" 180169 55479.3 76 175943 55479.3 75
"5269982" "2341" 327535 68013.9 51 338367 68013.9 50
"5282953" "4416" 180313 123679.1 76 176087 123679.1 75
"5282961" "4416" 180314 123679.1 76 176088 123679.1 75
"5282960" "4416" 1096756 4628.7 4 1243752 4628.7 3
"5269990" "2341" 36652 233110.8 142 36875 233110.8 141
"5269995" "2341" 37543 155078.8 142 37542 155078.8 141
"5282943" "4416" 1096752 4628.7 4 1243748 4628.7 3
"5269998" "2341" 37545 155078.8 142 37544 155078.8 141
"5282949" "4416" 186311 122561.9 74 194301 122561.9 73
"5282952" "4416" 941594 35373.7 17 937108 35373.7 16
"5282951" "4416" 194302 116795.4 73 182456 116795.4 72
"5282976" "4416" 186314 122561.9 74 194303 122561.9 73
"5282975" "4417" 287958 85011.6 53 316223 85011.6 52
"5282977" "4416" 180316 123679.1 76 176090 123679.1 75
"5282981" "4417" 287959 85011.6 53 316224 85011.6 52
"5282983" "4416" 180317 123679.1 76 176091 123679.1 75
"5282984" "4417" 287960 85011.6 53 316225 85011.6 52
"5282965" "4417" 570120 60998.2 33 548801 60998.2 32
"5282967" "4416" 180170 129388.3 76 175944 129388.3 75
"5282968" "4416" 180315 123679.1 76 176089 123679.1 75
"5282997" "4417" 287963 85011.6 53 316228 85011.6 52
"5282999" "4416" 180319 123679.1 76 176093 123679.1 75
"5282989" "4416" 180171 55479.3 76 175945 55479.3 75
"5282992" "4417" 287961 85011.6 53 316226 85011.6 52
"5282991" "4416" 180318 123679.1 76 176092 123679.1 75
"5282993" "4417" 287962 85011.6 53 316227 85011.6 52
"5292144" "4416" 180367 123679.1 76 176141 123679.1 75
"5292136" "4416" 180366 123679.1 76 176140 123679.1 75
"5292128" "4416" 180193 55479.3 76 175967 55479.3 75
"5269801" "2341" 37539 155078.8 142 37538 155078.8 141
expired_calendar WARNING 64

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 64 affected records are displayed below.

csvRowNumber (?) The row of the faulty record. serviceId (?) The service id of the faulty record.
2 "27420"
4 "27426"
5 "27427"
6 "27428"
9 "27431"
10 "27432"
11 "27433"
12 "27434"
14 "27438"
15 "27441"
16 "27442"
17 "27444"
18 "27448"
19 "27449"
20 "27450"
21 "27451"
22 "27452"
23 "27453"
24 "27454"
25 "27455"
26 "27456"
27 "27459"
28 "27462"
29 "27463"
30 "27468"
31 "27471"
32 "27472"
33 "27473"
34 "27474"
35 "27477"
36 "27478"
37 "27481"
38 "27482"
39 "27483"
40 "27484"
41 "27485"
42 "27486"
43 "27487"
44 "27488"
84 "27419"
85 "27421"
88 "27424"
89 "27436"
90 "27437"
91 "27439"
92 "27440"
93 "27443"
94 "27445"
95 "27446"
96 "27447"
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 100000

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 100000 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 "5258518" 1
3 "5258526" 1
4 "5258530" 1
5 "5258532" 1
6 "5258534" 1
7 "5258537" 1
8 "5258538" 1
9 "5258540" 1
10 "5258542" 1
11 "5258545" 1
12 "5258546" 1
13 "5258547" 1
14 "5258548" 1
15 "5258550" 1
16 "5258551" 1
17 "5258553" 1
18 "5258554" 1
19 "5258555" 1
20 "5258556" 1
21 "5258557" 1
22 "5258558" 1
23 "5258559" 1
24 "5258561" 1
25 "5258562" 1
26 "5258563" 1
27 "5258564" 1
28 "5258565" 1
29 "5258566" 1
30 "5258567" 1
31 "5258568" 1
32 "5258569" 1
33 "5258570" 1
34 "5258571" 1
35 "5258572" 1
36 "5258573" 1
37 "5258576" 1
38 "5258577" 1
39 "5258578" 1
40 "5258579" 1
41 "5258580" 1
42 "5258581" 1
43 "5258584" 1
44 "5258585" 1
45 "5258586" 1
46 "5258587" 1
47 "5258589" 1
48 "5258591" 1
49 "5258594" 1
50 "5258595" 1
51 "5258597" 1
mixed_case_recommended_field WARNING 32246

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.

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

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" "PAKI AVE + PONI MOI RD" 2
"stops.txt" "stop_name" "PAKI AVE + DIAMOND HEAD TENNIS CTR" 3
"stops.txt" "stop_name" "PAKI AVE + NOELA ST" 4
"stops.txt" "stop_name" "PAKI AVE + PAKI PLAYGROUND" 5
"stops.txt" "stop_name" "PAKI AVE + MONSARRAT AVE" 6
"stops.txt" "stop_name" "PAKI AVE + KAPAHULU AVE" 7
"stops.txt" "stop_name" "KAPAHULU AVE + ALA WAI BL" 8
"stops.txt" "stop_name" "KAPAHULU AVE + KUHIO AVE" 9
"stops.txt" "stop_name" "KUHIO AVE + PAOAKALANI AVE" 10
"stops.txt" "stop_name" "KUHIO AVE + LILIUOKALANI AVE" 11
"stops.txt" "stop_name" "KUHIO AVE + KAIULANI AVE" 12
"stops.txt" "stop_name" "KUHIO AVE + WALINA ST" 13
"stops.txt" "stop_name" "KUHIO AVE + SEASIDE AVE" 14
"stops.txt" "stop_name" "KUHIO AVE + LEWERS ST" 15
"stops.txt" "stop_name" "KUHIO AVE + LAUNIU ST" 16
"stops.txt" "stop_name" "KUHIO AVE + NAMAHANA ST" 17
"stops.txt" "stop_name" "KALAKAUA AVE + PAU ST" 18
"stops.txt" "stop_name" "KALAKAUA AVE + MCCULLY ST" 19
"stops.txt" "stop_name" "KALAKAUA AVE + KAPIOLANI BL" 20
"stops.txt" "stop_name" "KALAKAUA AVE + KAPIOLANI BL" 21
"stops.txt" "stop_name" "KALAKAUA AVE + OPP MAKALOA ST" 22
"stops.txt" "stop_name" "KALAKAUA AVE + PHILIP ST" 23
"stops.txt" "stop_name" "KALAKAUA AVE + S KING ST" 24
"stops.txt" "stop_name" "S BERETANIA ST + OPP KALAKAUA AVE" 25
"stops.txt" "stop_name" "S BERETANIA ST + KEEAUMOKU ST" 26
"stops.txt" "stop_name" "S BERETANIA ST + PIIKOI ST" 27
"stops.txt" "stop_name" "S BERETANIA ST + PENSACOLA ST" 28
"stops.txt" "stop_name" "S BERETANIA ST + WARD AVE" 29
"stops.txt" "stop_name" "S BERETANIA ST + ALAPAI ST" 30
"stops.txt" "stop_name" "S BERETANIA ST + PUNCHBOWL ST" 31
"stops.txt" "stop_name" "S HOTEL ST + ALAKEA ST" 32
"stops.txt" "stop_name" "S HOTEL ST + BISHOP ST" 33
"stops.txt" "stop_name" "S HOTEL ST + BETHEL ST" 34
"stops.txt" "stop_name" "N HOTEL ST + KEKAULIKE ST" 35
"stops.txt" "stop_name" "N KING ST + N BERETANIA ST" 36
"stops.txt" "stop_name" "LILIHA ST + N KING ST" 37
"stops.txt" "stop_name" "LILIHA ST + VINEYARD BL" 38
"stops.txt" "stop_name" "LILIHA ST + KAULUWELA PL" 39
"stops.txt" "stop_name" "LILIHA ST + SCHOOL ST" 40
"stops.txt" "stop_name" "LILIHA ST + 1657" 41
"stops.txt" "stop_name" "LILIHA ST + KUAKINI ST" 42
"stops.txt" "stop_name" "LILIHA ST + ELENA ST" 43
"stops.txt" "stop_name" "LILIHA ST + BATES ST" 44
"stops.txt" "stop_name" "LILIHA ST + JUDD ST" 45
"stops.txt" "stop_name" "LILIHA ST + BACHELOT ST" 46
"stops.txt" "stop_name" "LILIHA ST + HALAPIA PL" 47
"stops.txt" "stop_name" "LILIHA ST + OPP EKEKELA ST" 48
"stops.txt" "stop_name" "LILIHA ST + WYLLIE ST" 49
"stops.txt" "stop_name" "LILIHA ST + NAMAUU DR" 50
"stops.txt" "stop_name" "SCHOOL ST + LILIHA ST" 51
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.
3779 "4851" "KALEWA ST TERMINUS"
3804 "32003" "KALIHI FACILITY GARAGE"
3805 "32004" "PEARL CITY FACILITY GARAGE"
unknown_column INFO 11

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_description" 7
"stop_times.txt" "stop_code" 11
"stops.txt" "stop_serial_number" 11
"trips.txt" "trip_headsign_short" 8
"trips.txt" "apc_trip_id" 9
"trips.txt" "display_code" 10
"trips.txt" "trip_serial_number" 11
"trips.txt" "block" 12
"calendar.txt" "events_and_status" 11
"calendar.txt" "operating_days" 12
"calendar.txt" "duty" 13