diff --git a/gtfs-realtime/proto/gtfs-realtime.proto b/gtfs-realtime/proto/gtfs-realtime.proto
index 7672a94b..8ee20f0e 100644
--- a/gtfs-realtime/proto/gtfs-realtime.proto
+++ b/gtfs-realtime/proto/gtfs-realtime.proto
@@ -583,7 +583,7 @@ message Alert {
// Entities whose users we should notify of this alert.
repeated EntitySelector informed_entity = 5;
- // Cause of this alert.
+ // Cause of this alert. If cause_detail is included, then Cause must also be included.
enum Cause {
UNKNOWN_CAUSE = 1;
OTHER_CAUSE = 2; // Not machine-representable.
@@ -600,7 +600,7 @@ message Alert {
}
optional Cause cause = 6 [default = UNKNOWN_CAUSE];
- // What is the effect of this problem on the affected entity.
+ // What is the effect of this problem on the affected entity. If effect_detail is included, then Effect must also be included.
enum Effect {
NO_SERVICE = 1;
REDUCED_SERVICE = 2;
@@ -656,6 +656,15 @@ message Alert {
// or the user can't see the image for accessibility reasons). See the HTML spec for alt image text - https://html.spec.whatwg.org/#alt.
// NOTE: This field is still experimental, and subject to change. It may be formally adopted in the future.
optional TranslatedString image_alternative_text = 16;
+
+
+ // Description of the cause of the alert that allows for agency-specific language; more specific than the Cause. If cause_detail is included, then Cause must also be included.
+ // NOTE: This field is still experimental, and subject to change. It may be formally adopted in the future.
+ optional TranslatedString cause_detail = 17;
+
+ // Description of the effect of the alert that allows for agency-specific language; more specific than the Effect. If effect_detail is included, then Effect must also be included.
+ // NOTE: This field is still experimental, and subject to change. It may be formally adopted in the future.
+ optional TranslatedString effect_detail = 18;
// The extensions namespace allows 3rd-party developers to extend the
// GTFS Realtime Specification in order to add and evaluate new features
@@ -843,6 +852,26 @@ message VehicleDescriptor {
// The license plate of the vehicle.
optional string license_plate = 3;
+ enum WheelchairAccessible {
+ // The trip doesn't have information about wheelchair accessibility.
+ // This is the **default** behavior. If the static GTFS contains a
+ // _wheelchair_accessible_ value, it won't be overwritten.
+ NO_VALUE = 0;
+
+ // The trip has no accessibility value present.
+ // This value will overwrite the value from the GTFS.
+ UNKNOWN = 1;
+
+ // The trip is wheelchair accessible.
+ // This value will overwrite the value from the GTFS.
+ WHEELCHAIR_ACCESSIBLE = 2;
+
+ // The trip is **not** wheelchair accessible.
+ // This value will overwrite the value from the GTFS.
+ WHEELCHAIR_INACCESSIBLE = 3;
+ }
+ optional WheelchairAccessible wheelchair_accessible = 4 [default = NO_VALUE];
+
// The extensions namespace allows 3rd-party developers to extend the
// GTFS Realtime Specification in order to add and evaluate new features and
// modifications to the spec.
diff --git a/gtfs-realtime/spec/en/reference.md b/gtfs-realtime/spec/en/reference.md
index f5a92de5..a50ee6e9 100644
--- a/gtfs-realtime/spec/en/reference.md
+++ b/gtfs-realtime/spec/en/reference.md
@@ -46,6 +46,7 @@ Fields labeled as **experimental** are subject to change and not yet formally ad
* [TripDescriptor](#message-tripdescriptor)
* [ScheduleRelationship](#enum-schedulerelationship-1)
* [VehicleDescriptor](#message-vehicledescriptor)
+ * [WheelchairAccessible](#enum-wheelchairaccessible)
* [StopTimeUpdate](#message-stoptimeupdate)
* [StopTimeEvent](#message-stoptimeevent)
* [ScheduleRelationship](#enum-schedulerelationship)
@@ -55,6 +56,7 @@ Fields labeled as **experimental** are subject to change and not yet formally ad
* [TripDescriptor](#message-tripdescriptor)
* [ScheduleRelationship](#enum-schedulerelationship-1)
* [VehicleDescriptor](#message-vehicledescriptor)
+ * [WheelchairAccessible](#enum-wheelchairaccessible)
* [Position](#message-position)
* [VehicleStopStatus](#enum-vehiclestopstatus)
* [CongestionLevel](#enum-congestionlevel)
@@ -328,8 +330,10 @@ An alert, indicating some sort of incident in the public transit network.
|------------------|------------|----------------|-------------------|-------------------|
| **active_period** | [TimeRange](#message-timerange) | Optional | Many | Time when the alert should be shown to the user. If missing, the alert will be shown as long as it appears in the feed. If multiple ranges are given, the alert will be shown during all of them. |
| **informed_entity** | [EntitySelector](#message-entityselector) | Required | Many | Entities whose users we should notify of this alert. At least one informed_entity must be provided. |
-| **cause** | [Cause](#enum-cause) | Optional | One |
-| **effect** | [Effect](#enum-effect) | Optional | One |
+| **cause** | [Cause](#enum-cause) | Conditionally Required | One | If cause_detail is included, then Cause must also be included.
+| **cause_detail** | [TranslatedString](#message-translatedstring) | Optional | One | Description of the cause of the alert that allows for agency-specific language; more specific than the Cause. If cause_detail is included, then Cause must also be included.
**Caution:** this field is still **experimental**, and subject to change. It may be formally adopted in the future.
+| **effect** | [Effect](#enum-effect) | Conditionally Required | One | If effect_detail is included, then Effect must also be included.
+| **effect_detail** | [TranslatedString](#message-translatedstring) | Optional | One | Description of the effect of the alert that allows for agency-specific language; more specific than the Effect. If effect_detail is included, then Effect must also be included.
**Caution:** this field is still **experimental**, and subject to change. It may be formally adopted in the future.
| **url** | [TranslatedString](#message-translatedstring) | Optional | One | The URL which provides additional information about the alert. |
| **header_text** | [TranslatedString](#message-translatedstring) | Required | One | Header for the alert. This plain-text string will be highlighted, for example in boldface. |
| **description_text** | [TranslatedString](#message-translatedstring) | Required | One | Description for the alert. This plain-text string will be formatted as the body of the alert (or shown on an explicit "expand" request by the user). The information in the description should add to the information of the header. |
@@ -474,6 +478,20 @@ Identification information for the vehicle performing the trip.
| **id** | [string](https://developers.google.com/protocol-buffers/docs/proto#scalar) | Optional | One | Internal system identification of the vehicle. Should be **unique** per vehicle, and is used for tracking the vehicle as it proceeds through the system. This id should not be made visible to the end-user; for that purpose use the **label** field |
| **label** | [string](https://developers.google.com/protocol-buffers/docs/proto#scalar) | Optional | One | User visible label, i.e., something that must be shown to the passenger to help identify the correct vehicle. |
| **license_plate** | [string](https://developers.google.com/protocol-buffers/docs/proto#scalar) | Optional | One | The license plate of the vehicle. |
+| **wheelchair_accessible** | [WheelchairAccessible](#enum-wheelchairaccessible) | Optional | One | If provided, can overwrite the *wheelchair_accessible* value from the static GTFS. |
+
+## _enum_ WheelchairAccessible
+
+If a particuliar trip is accessible to wheelchair. When available, this value should overwrite the _wheelchair_accessible_ value from the static GTFS.
+
+#### Values
+
+| _**Value**_ | _**Comment**_ |
+|-------------|---------------|
+| **NO_VALUE** | The trip doesn't have information about wheelchair accessibility. This is the **default** behavior. If the static GTFS contains a _wheelchair_accessible_ value, it won't be overwritten. |
+| **UNKNOWN** | The trip has no accessibility value present. This value will overwrite the value from the GTFS. |
+| **WHEELCHAIR_ACCESSIBLE** | The trip is wheelchair accessible. This value will overwrite the value from the GTFS. |
+| **WHEELCHAIR_INACCESSIBLE** | The trip is **not** wheelchair accessible. This value will overwrite the value from the GTFS. |
## _message_ EntitySelector
diff --git a/gtfs/spec/en/reference.md b/gtfs/spec/en/reference.md
index a0cc75a9..b3c39ec3 100644
--- a/gtfs/spec/en/reference.md
+++ b/gtfs/spec/en/reference.md
@@ -221,7 +221,7 @@ Primary key (`trip_id`)
| `trip_headsign` | Text | Optional | Text that appears on signage identifying the trip's destination to riders. Should be used to distinguish between different patterns of service on the same route.
If the headsign changes during a trip, values for `trip_headsign` may be overridden by defining values in `stop_times.stop_headsign` for specific `stop_time`s along the trip. |
| `trip_short_name` | Text | Optional | Public facing text used to identify the trip to riders, for instance, to identify train numbers for commuter rail trips. If riders do not commonly rely on trip names, `trip_short_name` should be empty. A `trip_short_name` value, if provided, should uniquely identify a trip within a service day; it should not be used for destination names or limited/express designations. |
| `direction_id` | Enum | Optional | Indicates the direction of travel for a trip. This field should not be used in routing; it provides a way to separate trips by direction when publishing time tables. Valid options are:
`0` - Travel in one direction (e.g. outbound travel).
`1` - Travel in the opposite direction (e.g. inbound travel).
+Trip A +───────────────────\ + \ Trip C + ───────────── +Trip B / +───────────────────/ ++ ### pathways.txt File: **Optional**