septa-rail1 — Source Data Validation Report

This report was generated by the Canonical GTFS Schedule validator, version 8.0.1 at 2026-07-24T18:42:34Z,
for the dataset file:///shared/septa-rail1_e8d4a1aa.zip. No country code was provided.

Use this report alongside our documentation.

Summary

Agencies included


Feed Info


Publisher Name:
SEPTA
Publisher URL:
https://septa.org/
Feed Email:
N/A
Feed Language:
English
Feed Start Date:
2026-07-26
Feed End Date:
2026-08-29

Files included


  1. agency.txt
  2. areas.txt
  3. calendar.txt
  4. calendar_dates.txt
  5. directions.txt
  6. fare_leg_rules.txt
  7. fare_media.txt
  8. fare_products.txt
  9. fare_transfer_rules.txt
  10. feed_info.txt
  11. rider_categories.txt
  12. route_stops.txt
  13. routes.txt
  14. shapes.txt
  15. stop_areas.txt
  16. stop_times.txt
  17. stops.txt
  18. timeframes.txt
  19. trips.txt

Counts


  • Agencies: 1
  • Blocks: 631
  • Routes: 13
  • Shapes: 26
  • Stops: 156
  • Trips: 1394

Specification Compliance report

14 notices reported (0 errors, 7 warnings, 7 infos)

Notice Code Severity Total
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
route_long_name_contains_short_name WARNING 1

route_long_name_contains_short_name

Long name should not contain short name for a single route.

In routes.txt, route_long_name should not contain the value for route_short_name, because when both are provided, they are often combined by transit applications. Note that only one of the two fields is required. If there is no short name used for a route, use route_long_name only.

Good examples:

route_short_name/route_long_name Dataset
"N"/"Judah" Muni San Fransisco
"6"/"ML King Jr Blvd" Trimet Portland Streetcar
"55"/"Boulevard Saint Laurent" STM Montreal
"1"/"Rangiora/Cashmere" Metro Christchurch

Bad examples:

route_short_name/route_long_name
"604"/"604"
"14"/"Route 14"
"2"/"Route 2: Bellows Falls In-Town"

You can see more about this notice here.

routeId (?) The id of the faulty record. csvRowNumber (?) The row number of the faulty record. routeShortName (?) The faulty record's `route_short_name`. routeLongName (?) The faulty record's `route_long_name`.
"FOX" 6 "FOX" "Fox Chase Line"
stop_too_far_from_shape WARNING 4

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.
969 "815005" "FOX6807_20260622_SID189324" 14608 "90004" "Gray 30th St Station" [39.954012,-75.167672] 1228.36906070126
727 "538004" "LAN5305_20260622_SID189324" 10185 "90406" "Penn Medicine Station" [39.956596,-75.181676] 1199.4948978341465
63 "228004" "NOR2385_20260622_SID189815" 789 "90406" "Penn Medicine Station" [39.956596,-75.181676] 1199.4948978341465
224 "004228" "NOR3214_20260622_SID189815" 2948 "90406" "Penn Medicine Station" [39.956596,-75.181676] 1199.4948978341465
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.
"20260724" "20260727" "20260828"
big_gap_in_service INFO 3

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.
"SID189779" "2026-07-26" "2026-08-15" 19
"SID189836" "2026-07-31" "2026-08-17" 16
"SID189896" "2026-08-09" "2026-08-29" 19
future_calendar INFO 1

future_calendar

All services in the feed start in the future; no service covers today's date.

You can see more about this notice here.

minServiceStartDate (?) The earliest service start date across all services in the feed. currentDate (?) Today's date at validation time.
"2026-07-26" "2026-07-24"
future_feed INFO 1

future_feed

The feed covers the future only.

The minimum start_date in feed_info.txt is greater than today's date, indicating the feed covers the future only.

You can see more about this notice here.

feedStartDate (?) Feed start date. currentDate (?) Current date.
"20260726" "20260724"
unknown_file INFO 2

unknown_file

A file is unknown.

You can see more about this notice here.

filename (?) The name of the unknown file.
"directions.txt"
"route_stops.txt"