google / google/transit

Within the spec documentation, explicitly call out that holiday information should be included

Open
#512 0 comments 7 reactions 0 assignees View on GitHub
Change type: Non-Functional Discussion Period GTFS Schedule Support: Needs Feedback
Dominant language
No language data
Stars
1.1k
Forks
225
Avg merge
7d 17h
Merged PRs (30d)
3

Description

### Describe the problem

Caltrans has recently completed a research project on holiday service data quality ([see paper](https://www.calitp.org/assets/Cal-ITP-2023-Holiday-Service-Transit-Traveler-Information-Research.pdf)). One of the findings of our research indicated a confusion among some agencies on the best ways to include holiday information within GTFS data.

The current GTFS Schedule specification narrative does not affirmatively say that holiday data _should_ be included. There are some places that list examples or suggest that holiday information _could_ be added as follows:

[booking_rules.txt](https://gtfs.org/documentation/schedule/reference/#:~:text=weekdays%20without%20holidays):

> Example: If empty, prior_notice_start_day=2 will be two calendar days in advance. If defined as a service_id containing only business days (weekdays without holidays), prior_notice_start_day=2 will be two business days in advance.

[calendar_dates.txt](https://gtfs.org/documentation/schedule/reference/#:~:text=suppose%20a%20route%20has%20one%20set%20of%20trips%20available%20on%20holidays)

> Example: Suppose a route has one set of trips available on holidays and another set of trips available on all other days. One service_id could correspond to the regular service schedule and another service_id could correspond to the holiday schedule. For a particular holiday, the [calendar_dates.txt](https://gtfs.org/documentation/schedule/reference/#calendar_datestxt) file could be used to add the holiday to the holiday service_id and to remove the holiday from the regular service_id schedule.

[best practices on All Fields](https://gtfs.org/documentation/schedule/schedule_best_practices/#:~:text=route%202%20includes%20a%20deviation%20on%20main%20street%20nights%2C%20sundays%2C%20and%20holidays.)

> Route 2 includes a deviation on Main Street nights, Sundays, and holidays.

### Use cases

This applies to major holidays regularly observed each year by transit agencies.

### Proposed solution

This proposal seeks to clarify within the GTFS Specification narrative that holiday service known in advance and generally repeating each year should be an explicitly expected element of all GTFS Schedule feeds.

A possible place to insert this expectation would be within the bullet points outlining expectations for current and upcoming service (bold indicates new addition):

- _One GTFS dataset should contain current and upcoming service (sometimes called a “merged” dataset). There are multiple [merge tools](https://gtfs.org/resources/gtfs/#gtfs-merge-tools) available that can be used to create a merged dataset from two different GTFS feeds._
- _At any time, the published GTFS dataset should be valid for at least the next 7 days, and ideally for as long as the operator is confident that the schedule will continue to be operated._
- _If possible, the GTFS dataset should cover at least the next 30 days of service._
- **All holidays observed within the valid period of the feed should be accounted for with the appropriate service reductions and/or additions.**

### Additional information

_No response_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.