sunshine — Source Data Validation Report

This report was generated by the Canonical GTFS Schedule validator, version 8.0.1 at 2026-08-08T01:12:11Z,
for the dataset file:///shared/sunshine_0712822e.zip. No country code was provided.

Use this report alongside our documentation.

Summary

Agencies included


Feed Info


Publisher Name:
Sunshine Bus
Feed Email:
awonsey@stjohnscoa.com
Feed Language:
English
Feed Start Date:
2023-08-01
Feed End Date:
2030-10-31

Files included


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

Counts


  • Agencies: 1
  • Blocks: 0
  • Routes: 9
  • Shapes: 16
  • Stops: 65
  • Trips: 104

Specification Compliance report

192 notices reported (90 errors, 98 warnings, 4 infos)

Notice Code Severity Total
decreasing_or_equal_stop_time_distance ERROR 74

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 74 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`.
"teal ib_T03" "14_49" 371 76.946 6 370 76.946 5
"teal ib_T03" "14_158" 372 76.946 7 371 76.946 6
"teal ib_T03" "14_37" 376 82.193 11 375 82.193 10
"teal ib_T02" "14_49" 360 76.946 6 359 76.946 5
"teal ib_T02" "14_158" 361 76.946 7 360 76.946 6
"teal ib_T02" "14_37" 365 82.193 11 364 82.193 10
"teal ib_T05" "14_49" 393 76.946 6 392 76.946 5
"teal ib_T05" "14_158" 394 76.946 7 393 76.946 6
"teal ib_T05" "14_37" 398 82.193 11 397 82.193 10
"teal ib_T04" "14_49" 382 76.946 6 381 76.946 5
"teal ib_T04" "14_158" 383 76.946 7 382 76.946 6
"teal ib_T04" "14_37" 387 82.193 11 386 82.193 10
"teal ib_T01" "14_49" 349 76.946 6 348 76.946 5
"teal ib_T01" "14_158" 350 76.946 7 349 76.946 6
"teal ib_T01" "14_37" 354 82.193 11 353 82.193 10
"blue ib_T06" "14_35" 109 5.954 4 108 5.954 3
"blue ib_T05" "14_35" 99 5.954 4 98 5.954 3
"blue ib_T04" "14_35" 89 5.954 4 88 5.954 3
"blue ib_T03" "14_35" 79 5.954 4 78 5.954 3
"blue ib_T02" "14_35" 69 5.954 4 68 5.954 3
"blue ib_T01" "14_35" 59 5.954 4 58 5.954 3
"purple ib_T05" "14_37" 309 59.105 10 308 59.105 9
"purple ib_T04" "14_37" 299 59.105 10 298 59.105 9
"purple ib_T03" "14_37" 289 59.105 10 288 59.105 9
"purple ib_T02" "14_37" 279 59.105 10 278 59.105 9
"purple ib_T01" "14_37" 269 59.105 10 268 59.105 9
"circulator ib_T07" "14_149" 471 95.581 3 470 95.581 2
"circulator ib_T07" "14_153" 475 104.399 7 474 104.399 6
"circulator ib_T07" "14_154" 476 104.399 8 475 104.399 7
"circulator ib_T07" "14_152" 477 104.399 9 476 104.399 8
"circulator ib_T07" "14_156" 478 104.399 10 477 104.399 9
"circulator ib_T07" "14_147" 479 104.399 11 478 104.399 10
"circulator ib_T06" "14_149" 460 95.581 3 459 95.581 2
"circulator ib_T06" "14_153" 464 104.399 7 463 104.399 6
"circulator ib_T06" "14_154" 465 104.399 8 464 104.399 7
"circulator ib_T06" "14_152" 466 104.399 9 465 104.399 8
"circulator ib_T06" "14_156" 467 104.399 10 466 104.399 9
"circulator ib_T06" "14_147" 468 104.399 11 467 104.399 10
"circulator ib_T08" "14_149" 482 95.581 3 481 95.581 2
"circulator ib_T08" "14_153" 486 104.399 7 485 104.399 6
"circulator ib_T08" "14_154" 487 104.399 8 486 104.399 7
"circulator ib_T08" "14_152" 488 104.399 9 487 104.399 8
"circulator ib_T08" "14_156" 489 104.399 10 488 104.399 9
"purple ib_T06" "14_37" 319 59.105 10 318 59.105 9
"circulator ib_T01" "14_149" 405 95.581 2 404 95.581 1
"circulator ib_T01" "14_153" 409 104.399 6 408 104.399 5
"circulator ib_T01" "14_154" 410 104.399 7 409 104.399 6
"circulator ib_T01" "14_152" 411 104.399 8 410 104.399 7
"circulator ib_T01" "14_156" 412 104.399 9 411 104.399 8
"circulator ib_T01" "14_147" 413 104.399 10 412 104.399 9
foreign_key_violation ERROR 16

foreign_key_violation

Wrong foreign key.

A foreign key references the primary key of another file. A foreign key violation means that the foreign key referenced from a given row (the child file) cannot be found in the corresponding file (the parent file). The Foreign keys are defined in the specification under "Type" for each file.

You can see more about this notice here.

childFilename (?) The name of the file from which reference is made. childFieldName (?) The name of the field that makes reference. parentFilename (?) The name of the file that is referred to. parentFieldName (?) The name of the field that is referred to. fieldValue (?) The faulty record's value. csvRowNumber (?) The row of the faulty record.
"fare_attributes.txt" "agency_id" "agency.txt" "agency_id" "408" 2
"routes.txt" "agency_id" "agency.txt" "agency_id" "408" 2
"routes.txt" "agency_id" "agency.txt" "agency_id" "408" 3
"routes.txt" "agency_id" "agency.txt" "agency_id" "408" 4
"routes.txt" "agency_id" "agency.txt" "agency_id" "408" 5
"routes.txt" "agency_id" "agency.txt" "agency_id" "408" 6
"routes.txt" "agency_id" "agency.txt" "agency_id" "408" 7
"routes.txt" "agency_id" "agency.txt" "agency_id" "408" 8
"routes.txt" "agency_id" "agency.txt" "agency_id" "408" 9
"routes.txt" "agency_id" "agency.txt" "agency_id" "408" 10
"stop_times.txt" "stop_id" "stops.txt" "stop_id" "14_84" 797
"stop_times.txt" "stop_id" "stops.txt" "stop_id" "14_84" 807
"stop_times.txt" "stop_id" "stops.txt" "stop_id" "14_84" 817
"stop_times.txt" "stop_id" "stops.txt" "stop_id" "14_84" 827
"stop_times.txt" "stop_id" "stops.txt" "stop_id" "14_84" 837
"stop_times.txt" "stop_id" "stops.txt" "stop_id" "14_84" 847
equal_shape_distance_diff_coordinates_distance_below_threshold WARNING 4

equal_shape_distance_diff_coordinates_distance_below_threshold

Two consecutive points have equal shape_dist_traveled and different lat/lon coordinates in shapes.txt and the distance between the two points is greater than 0 but less than 1.11m.

When sorted by shape.shape_pt_sequence, the values for shape_dist_traveled must increase along a shape. Two consecutive points with equal values for shape_dist_traveled and small difference of coordinates (greater than 0 but less than 1.11 m distance) result in a warning.

You can see more about this notice here.

shapeId (?) The id of the faulty shape. csvRowNumber (?) The row number from `shapes.txt`. shapeDistTraveled (?) The faulty record's `shape_dist_traveled` value. shapePtSequence (?) The faulty record's `shapes.shape_pt_sequence`. prevCsvRowNumber (?) The row number from `shapes.txt` of the previous shape point. prevShapeDistTraveled (?) The previous shape point's `shape_dist_traveled` value. prevShapePtSequence (?) The previous record's `shapes.shape_pt_sequence`. actualDistanceBetweenShapePoints (?) Actual distance traveled along the shape from the first shape point to the previous shape point.
"RED IB" 9684 6.072 236 9683 6.072 235 0.963964807557954
"ORANGE OB" 172 6.243 171 171 6.243 170 0.9644048491276641
"ORANGE OB" 563 19.536 562 562 19.536 561 0.9637909224392565
"GREEN IB" 8653 30.469 900 8652 30.469 899 0.9646269591397205
mixed_case_recommended_field WARNING 62

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 62 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.
"routes.txt" "route_long_name" "CONN-EX#1" 2
"routes.txt" "route_long_name" "CONN-EX#2" 3
"stops.txt" "stop_name" "DEPOT (DEPARTS)" 2
"stops.txt" "stop_name" "FLAGLER HOSPITAL (CAFETERIA)" 3
"stops.txt" "stop_name" "RIVERSIDE CENTER" 4
"stops.txt" "stop_name" "SEABRIDGE SQUARE" 5
"stops.txt" "stop_name" "PUBLIX (COBBLESTONE)" 6
"stops.txt" "stop_name" "WEST KING ST. (FLAG DOWN )" 7
"stops.txt" "stop_name" "GRANADA ST. (FLAGLER AUDITORIUM )" 8
"stops.txt" "stop_name" "MAIN LIBRARY ( NORTH )" 9
"stops.txt" "stop_name" "PUBLIX ( VILANO ) (ARRIVES)" 10
"stops.txt" "stop_name" "US-1 (FLAG DOWN)" 11
"stops.txt" "stop_name" "KING ST (FLAG DOWN)" 12
"stops.txt" "stop_name" "WEST KING ST. (FLAG DOWN )" 13
"stops.txt" "stop_name" "SHORES BLVD SOUTH" 15
"stops.txt" "stop_name" "US-1 & WILDWOOD DR" 16
"stops.txt" "stop_name" "KINGS ESTATE RD & OLD MOULTIRE" 17
"stops.txt" "stop_name" "GOVERNMENT CENTER" 18
"stops.txt" "stop_name" "PUBLIX ( PALENCIA" 19
"stops.txt" "stop_name" "MAIN LIBRARY (NORTH) US 1" 20
"stops.txt" "stop_name" "US-1 & SR-207" 21
"stops.txt" "stop_name" "KINGS ESTATE RD & SAINT AUGUSTINE RD" 22
"stops.txt" "stop_name" "PUBLIX (MOULTRIE)" 23
"stops.txt" "stop_name" "SHORES BLVD SOUTH" 24
"stops.txt" "stop_name" "LIONS BRIDGE" 25
"stops.txt" "stop_name" "COA COMM. CENTER (MARINE ST.)" 26
"stops.txt" "stop_name" "ML KING ST & POST OFFICE" 27
"stops.txt" "stop_name" "VISITOR INFORMATION CENTER" 28
"stops.txt" "stop_name" "MAY SR ( SAN MARCO AVE )" 29
"stops.txt" "stop_name" "WINN-DIXIE (NORTH)" 30
"stops.txt" "stop_name" "MAIN LIBRAY (NORTH)" 31
"stops.txt" "stop_name" "LEWIS PT PLAZA" 33
"stops.txt" "stop_name" "SR-207 & HOLMES BLVD" 34
"stops.txt" "stop_name" "KING ST & HOLMES BLVD" 35
"stops.txt" "stop_name" "MASTER DR & SR-16" 36
"stops.txt" "stop_name" "KANGAROO-EXXON SR-16 (ARRIVES)" 37
"stops.txt" "stop_name" "WESTGATE PLAZA" 38
"stops.txt" "stop_name" "KING ST & PALMER ST" 39
"stops.txt" "stop_name" "PUBLIX (ANASTASIA)" 40
"stops.txt" "stop_name" "LIBRARY & US-1 SOUTH" 42
"stops.txt" "stop_name" "SHORES BLVD" 43
"stops.txt" "stop_name" "CHRISTINA DRIVE" 44
"stops.txt" "stop_name" "SR-206 & US-1 SOUTH" 45
"stops.txt" "stop_name" "S.US-1 & KING ST. ( SEBASTIAN HOTEL)" 46
"stops.txt" "stop_name" "DEL MONTE DR/COLLINS AVE (SAHS/FCTC)" 47
"stops.txt" "stop_name" "SR-16/CLYDE LASSEN VETERAN HOME" 49
"stops.txt" "stop_name" "PUBLIX (MURABELLA)" 50
"stops.txt" "stop_name" "BUC-EE'S" 51
"stops.txt" "stop_name" "MAIN LIBRARY (NORTH)" 52
"stops.txt" "stop_name" "SOLOMON CALHOUN CENTER" 53
stop_too_far_from_shape WARNING 16

stop_too_far_from_shape

Stop too far from trip shape.

Per GTFS Best Practices, route alignments (in shapes.txt) should be within 100 meters of stop locations which a trip serves. This potentially indicates a problem with the location of the stop or the path of the shape.

You can see more about this notice here.

tripCsvRowNumber (?) The row number of the faulty record from `trips.txt`. shapeId (?) The id of the shape that is referred to. tripId (?) The id of the trip that is referred to. stopTimeCsvRowNumber (?) The row number of the faulty record from `stop_times.txt`. stopId (?) The id of the stop that is referred to. stopName (?) The name of the stop that is referred to. match (?) Latitude and longitude pair of the location. geoDistanceToShape (?) Distance from stop to shape.
32 "PURPLE IB" "purple ib_T01" 267 "14_129" "MAIN LIBRARY (NORTH)" [29.910870000000003,-81.32216] 658.9388730314497
32 "PURPLE IB" "purple ib_T01" 269 "14_37" "WEST KING ST. (FLAG DOWN )" [29.890476680410757,-81.32486089945225] 306.65816604982786
26 "PURPLE OB" "purple ob_T01" 200 "14_37" "WEST KING ST. (FLAG DOWN )" [29.889570000000003,-81.32545] 280.2134551839008
26 "PURPLE OB" "purple ob_T01" 202 "14_129" "MAIN LIBRARY (NORTH)" [29.91204344143236,-81.32269089894434] 643.8430560999304
88 "RED IB" "red ib_T01" 744 "14_54" "MAIN LIBRARY (NORTH) US 1" [29.91025385340911,-81.32059795101293] 129.72865537253057
88 "RED IB" "red ib_T01" 748 "14_62" "LIONS BRIDGE" [29.89278,-81.31037] 217.9453690478307
94 "ORANGE OB" "orange ob_T01" 797 "14_84" "" [29.859200000000005,-81.28228] 9167682.901163276
38 "TEAL OB" "teal ob_T01" 320 "14_37" "WEST KING ST. (FLAG DOWN )" [29.869650000000004,-81.32323] 2389.6401488986394
38 "TEAL OB" "teal ob_T01" 321 "14_133" "SR-207 & I95" [29.829503296862953,-81.42845563822863] 238.30880599960858
38 "TEAL OB" "teal ob_T01" 323 "14_135" "MAIN LIBRARY (HASTING) (ARRIVES)" [29.71384,-81.33615] 331.6112026483637
82 "RED OB" "red ob_T01" 701 "14_49" "GOVERNMENT CENTER" [29.93894173131743,-81.33410935029005] 187.86876590511142
44 "TEAL IB" "teal ib_T01" 344 "14_135" "MAIN LIBRARY (HASTING) (ARRIVES)" [29.718589999999992,-81.32709] 1319.8031665369713
44 "TEAL IB" "teal ib_T01" 346 "14_133" "SR-207 & I95" [29.829503296862953,-81.42845563822863] 238.30880599960858
44 "TEAL IB" "teal ib_T01" 354 "14_37" "WEST KING ST. (FLAG DOWN )" [29.890476680410757,-81.32486089945225] 306.65816604982786
64 "CON-EX 1&2 IB" "conn-ex 1 ib_T01" 542 "14_37" "WEST KING ST. (FLAG DOWN )" [29.890476680410757,-81.32486089945225] 306.65816604982786
76 "CON-EX 1&2 IB" "conn-ex 2 ib_T01" 645 "14_46" "KINGS ESTATE RD & OLD MOULTIRE" [29.84552306226575,-81.3274529113454] 331.31166706813013
stop_too_far_from_shape_using_user_distance WARNING 12

stop_too_far_from_shape_using_user_distance

Stop time too far from shape.

A stop time entry that is a large distance away from the location of the shape in shapes.txt as defined by shape_dist_traveled values.

You can see more about this notice here.

tripCsvRowNumber (?) The row number of the faulty record from `trips.txt`. shapeId (?) The id of the shape that is referred to. tripId (?) The id of the trip that is referred to. stopTimeCsvRowNumber (?) The row number of the faulty record from `stop_times.txt`. stopId (?) The id of the stop that is referred to. stopName (?) The name of the stop that is referred to. match (?) Latitude and longitude pair of the location. geoDistanceToShape (?) Distance from stop to shape.
50 "CIRCULATOR" "circulator ib_T01" 405 "14_149" "CRACKER SWAMP RD /CR13" [29.714310000000008,-81.50822] 887.3092702145091
50 "CIRCULATOR" "circulator ib_T01" 406 "14_150" "CEDAR FORD BLVD" [29.71484,-81.49591] 9094.255806419133
50 "CIRCULATOR" "circulator ib_T01" 407 "14_151" "KIRCHHERR AVE (CHURCH)" [29.72587,-81.43995000000001] 8754.507667263364
50 "CIRCULATOR" "circulator ib_T01" 408 "14_152" "BUZZ MART (SR-13)" [29.726160000000004,-81.4219] 6786.377848129409
50 "CIRCULATOR" "circulator ib_T01" 409 "14_153" "WEST DEEP CREEK BLVD" [29.726160000000004,-81.4219] 8325.205547233116
50 "CIRCULATOR" "circulator ib_T01" 410 "14_154" "CRACKER SWAMP RD / EAST DEEP CREEK" [29.726160000000004,-81.4219] 8467.224255465952
50 "CIRCULATOR" "circulator ib_T01" 412 "14_156" "MAIN LIBRARY" [29.726160000000004,-81.4219] 8483.94092635273
50 "CIRCULATOR" "circulator ib_T01" 413 "14_147" "EASTGATE SQUARE (DEPARTS)" [29.726160000000004,-81.4219] 19932.37382732963
44 "TEAL IB" "teal ib_T01" 348 "14_138" "SR-207 & US-1" [29.867670000000004,-81.33976] 8023.70920585032
44 "TEAL IB" "teal ib_T01" 349 "14_49" "GOVERNMENT CENTER" [29.867670000000004,-81.33976] 7848.01329605813
44 "TEAL IB" "teal ib_T01" 350 "14_158" "SOLOMON CALHOUN CENTER" [29.867670000000004,-81.33976] 1220.152011482616
64 "CON-EX 1&2 IB" "conn-ex 1 ib_T01" 543 "14_57" "KINGS ESTATE RD & SAINT AUGUSTINE RD" [29.84586,-81.35528] 137.2964487145521
stops_match_shape_out_of_order WARNING 3

stops_match_shape_out_of_order

Two stop entries are different than their arrival-departure order defined by shapes.txt.

This could indicate a problem with the location of the stops, the path of the shape, or the sequence of the stops for their trip.

You can see more about this notice here.

tripCsvRowNumber (?) The row number of the faulty record from `trips.txt`. shapeId (?) The id of the shape that is referred to. tripId (?) The id of the trip that is referred to. stopTimeCsvRowNumber1 (?) The row number of the first faulty record from `stop_times.txt`. stopId1 (?) The id of the first stop that is referred to. stopName1 (?) The name of the first stop that is referred to. match1 (?) Latitude and longitude pair of the first matching location. stopTimeCsvRowNumber2 (?) The row number of the second faulty record from `stop_times.txt`. stopId2 (?) The id of the second stop that is referred to. stopName2 (?) The name of the second stop that is referred to. match2 (?) Latitude and longitude pair of the second matching location.
50 "CIRCULATOR" "circulator ib_T01" 406 "14_150" "CEDAR FORD BLVD" [29.637324994318824,-81.4656600285778] 405 "14_149" "CRACKER SWAMP RD /CR13" [29.706355914219444,-81.50760727614548]
51 "CIRCULATOR" "circulator ib_T02" 417 "14_150" "CEDAR FORD BLVD" [29.637324994318824,-81.4656600285778] 416 "14_149" "CRACKER SWAMP RD /CR13" [29.706355914219444,-81.50760727614548]
57 "CIRCULATOR" "circulator ib_T08" 483 "14_150" "CEDAR FORD BLVD" [29.637324994318824,-81.4656600285778] 482 "14_149" "CRACKER SWAMP RD /CR13" [29.706355914219444,-81.50760727614548]
unused_shape WARNING 1

unused_shape

Shape is not used in GTFS file trips.txt.

All records defined by GTFS shapes.txt should be used in trips.txt.

You can see more about this notice here.

shapeId (?) The faulty record's id. csvRowNumber (?) The row number of the faulty record.
"CIRCULATOR IB" 11422
feed_valid_beyond_total_service_window INFO 1

feed_valid_beyond_total_service_window

The feed is valid 14 days beyond its total service window.

You can see more about this notice here.

feedStartDate (?) The feed start date from feed_info.txt. feedEndDate (?) The feed end date from feed_info.txt. serviceWindowStartDate (?) The earliest active service date across all services. serviceWindowEndDate (?) The latest active service date across all services.
"2023-08-01" "2030-10-31" "2023-08-01" "2030-01-26"
service_extends_far_in_the_future INFO 1

service_extends_far_in_the_future

A service end date is more than 2 years in the future.

You can see more about this notice here.

serviceId (?) The service_id that ends far in the future. serviceWindowEndDate (?) The end date of the service (YYYY-MM-DD format).
"mon-sat" "2030-01-26"
unknown_column INFO 2

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.
"calendar.txt" "holiday_name" 11
"calendar_dates.txt" "holiday_name" 4