From 99a2dfb4c6ffe4fe76fa4d33f84360a542e93bea Mon Sep 17 00:00:00 2001 From: Guillaume Campagna Date: Wed, 3 Oct 2018 14:38:45 -0400 Subject: [PATCH 01/17] First draft of prediction type --- gtfs-realtime/proto/gtfs-realtime.proto | 22 ++++++++++++++++++++++ gtfs-realtime/spec/en/reference.md | 15 +++++++++++++++ 2 files changed, 37 insertions(+) diff --git a/gtfs-realtime/proto/gtfs-realtime.proto b/gtfs-realtime/proto/gtfs-realtime.proto index 76057b9d4..c400867bb 100644 --- a/gtfs-realtime/proto/gtfs-realtime.proto +++ b/gtfs-realtime/proto/gtfs-realtime.proto @@ -221,6 +221,28 @@ message TripUpdate { optional ScheduleRelationship schedule_relationship = 5 [default = SCHEDULED]; + // Experimental feild, subject to change + // PredictionType represent the source of data of the prediction + // This lets consumer know if they should display a + // real time symbol next to a departure and the type of prediction + // PredictionType is ignored when schedule_relationship = SKIPPED or NO_DATA + enum PredictionType { + // Update are based on information from a vehicle + // that is followed in real time + // This is the default + REALTIME = 0; + + // Update are based on information from a vehicle that was followed + // in real time but is imprecise. Imprecision can come from things like + // a bus losing internet connection after the start of the run. + IMPRECISE_REALTIME = 1; + + // Update are based on information from schedule but improved + // from what is present in the static GTFS + IMPROVED_SCHEDULE = 2; + } + optional PredictionType prediction_type = 6 [default = REALTIME] + // 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 1e71bfeca..fc6dcdae5 100644 --- a/gtfs-realtime/spec/en/reference.md +++ b/gtfs-realtime/spec/en/reference.md @@ -177,6 +177,21 @@ The update is linked to a specific stop either through stop_sequence or stop_id, | **arrival** | [StopTimeEvent](#message-stoptimeevent) | Conditionally required | One | If schedule_relationship is empty or SCHEDULED, either arrival or departure must be provided within a StopTimeUpdate - both fields cannot be empty. arrival and departure may both be empty when schedule_relationship is SKIPPED. If schedule_relationship is NO_DATA, arrival and departure must be empty. | | **departure** | [StopTimeEvent](#message-stoptimeevent) | Conditionally required | One | If schedule_relationship is empty or SCHEDULED, either arrival or departure must be provided within a StopTimeUpdate - both fields cannot be empty. arrival and departure may both be empty when schedule_relationship is SKIPPED. If schedule_relationship is NO_DATA, arrival and departure must be empty. | | **schedule_relationship** | [ScheduleRelationship](#enum-schedulerelationship) | Optional | One | The default relationship is SCHEDULED. | +| **prediction_type** | [PredictionType](#enum-predictiontype) | Optional | One | The default relationship is REALTIME. | + +## _enum_ PredictionType + +Experimental feild, subject to change. +PredictionType represent the source of data of the prediction. This lets consumer adjust their display of the information depending on the source (for example, with a real time symbol). +PredictionType is ignored when schedule_relationship is SKIPPED or NO_DATA. + +#### Values + +| _**Value**_ | _**Comment**_ | +|-------------|---------------| +| **REALTIME** | This is the **default** behavior. Update are based on information from a vehicle that is followed in real time. | +| **IMPRECISE_REALTIME** | Update are based on information from a vehicle that was followed in real time but is imprecise. Imprecision can come from things like a bus losing internet connection after the start of the run. | +| **IMPROVED_SCHEDULE** | Update are based on information from schedule but improved from what is present in the static GTFS. | ## _enum_ ScheduleRelationship From 1c92d3a475cf12530f279f30531b6951715b4b2f Mon Sep 17 00:00:00 2001 From: Guillaume Campagna Date: Thu, 18 Oct 2018 13:59:00 -0400 Subject: [PATCH 02/17] Change IMPROVED_SCHEDULE to UPDATED_SCHEDULE --- gtfs-realtime/proto/gtfs-realtime.proto | 18 +++++++++--------- gtfs-realtime/spec/en/reference.md | 10 +++++----- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/gtfs-realtime/proto/gtfs-realtime.proto b/gtfs-realtime/proto/gtfs-realtime.proto index c400867bb..f84f9b9ed 100644 --- a/gtfs-realtime/proto/gtfs-realtime.proto +++ b/gtfs-realtime/proto/gtfs-realtime.proto @@ -222,24 +222,24 @@ message TripUpdate { [default = SCHEDULED]; // Experimental feild, subject to change - // PredictionType represent the source of data of the prediction - // This lets consumer know if they should display a - // real time symbol next to a departure and the type of prediction + // PredictionType represent the source of data of the prediction + // This lets consumer know if they should display a + // real time symbol next to a departure and the type of prediction // PredictionType is ignored when schedule_relationship = SKIPPED or NO_DATA enum PredictionType { - // Update are based on information from a vehicle + // Update are based on information from a vehicle // that is followed in real time // This is the default REALTIME = 0; - // Update are based on information from a vehicle that was followed - // in real time but is imprecise. Imprecision can come from things like + // Update are based on information from a vehicle that was followed + // in real time but is imprecise. Imprecision can come from things like // a bus losing internet connection after the start of the run. IMPRECISE_REALTIME = 1; - // Update are based on information from schedule but improved - // from what is present in the static GTFS - IMPROVED_SCHEDULE = 2; + // Update are based on information from schedule but updated + // from what is present in the static GTFS due to control actions. + UPDATED_SCHEDULE = 2; } optional PredictionType prediction_type = 6 [default = REALTIME] diff --git a/gtfs-realtime/spec/en/reference.md b/gtfs-realtime/spec/en/reference.md index fc6dcdae5..695d12b4a 100644 --- a/gtfs-realtime/spec/en/reference.md +++ b/gtfs-realtime/spec/en/reference.md @@ -12,7 +12,7 @@ The following values are used in the *Required* field: * **Required**: This field must be provided by a GTFS-realtime feed producer. * **Conditionally required**: This field is required under certain conditions, which are outlined in the field *Description*. Outside of these conditions, the field is optional. -* **Optional**: This field is optional and is not required to be implemented by producers. However, if the data is available in the underlying automatic vehicle location systems (e.g., VehiclePosition `timestamp`) it is recommended that producers provide these optional fields when possible. +* **Optional**: This field is optional and is not required to be implemented by producers. However, if the data is available in the underlying automatic vehicle location systems (e.g., VehiclePosition `timestamp`) it is recommended that producers provide these optional fields when possible. *Note that semantic requirements were not defined in GTFS-realtime version 1.0, and therefore feeds with `gtfs_realtime_version` of `1` may not meet these requirements (see [the proposal for semantic requirements](https://github.com/google/transit/pull/64) for details).* @@ -191,7 +191,7 @@ PredictionType is ignored when schedule_relationship is SKIPPED or NO_DATA. |-------------|---------------| | **REALTIME** | This is the **default** behavior. Update are based on information from a vehicle that is followed in real time. | | **IMPRECISE_REALTIME** | Update are based on information from a vehicle that was followed in real time but is imprecise. Imprecision can come from things like a bus losing internet connection after the start of the run. | -| **IMPROVED_SCHEDULE** | Update are based on information from schedule but improved from what is present in the static GTFS. | +| **UPDATED_SCHEDULE** | Update are based on information from schedule but updated from what is present in the static GTFS due to control actions. | ## _enum_ ScheduleRelationship @@ -220,7 +220,7 @@ Realtime positioning information for a given vehicle. | **stop_id** | [string](https://developers.google.com/protocol-buffers/docs/proto#scalar) | Optional | One | Identifies the current stop. The value must be the same as in stops.txt in the corresponding GTFS feed. | | **current_status** | [VehicleStopStatus](#enum-vehiclestopstatus) | Optional | One | The exact status of the vehicle with respect to the current stop. Ignored if current_stop_sequence is missing. | | **timestamp** | [uint64](https://developers.google.com/protocol-buffers/docs/proto#scalar) | Optional | One | Moment at which the vehicle's position was measured. In POSIX time (i.e., number of seconds since January 1st 1970 00:00:00 UTC). | -| **congestion_level** | [CongestionLevel](#enum-congestionlevel) | Optional | One | +| **congestion_level** | [CongestionLevel](#enum-congestionlevel) | Optional | One | | _**occupancy_status**_ | _[OccupancyStatus](#enum-occupancystatus)_ | _Optional_ | One | The degree of passenger occupancy of the vehicle.
**Caution:** this field is still **experimental**, and subject to change. It may be formally adopted in the future.| ## _enum_ VehicleStopStatus @@ -275,8 +275,8 @@ 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) | Optional | One | +| **effect** | [Effect](#enum-effect) | Optional | One | | **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. | From ed0cb91851fa95b5b4d4e90d238a3d8a04162a5a Mon Sep 17 00:00:00 2001 From: Guillaume Campagna Date: Thu, 18 Oct 2018 14:01:08 -0400 Subject: [PATCH 03/17] Remove internet connection since connection type doesn't change the problem --- gtfs-realtime/proto/gtfs-realtime.proto | 2 +- gtfs-realtime/spec/en/reference.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/gtfs-realtime/proto/gtfs-realtime.proto b/gtfs-realtime/proto/gtfs-realtime.proto index f84f9b9ed..6bdc55055 100644 --- a/gtfs-realtime/proto/gtfs-realtime.proto +++ b/gtfs-realtime/proto/gtfs-realtime.proto @@ -234,7 +234,7 @@ message TripUpdate { // Update are based on information from a vehicle that was followed // in real time but is imprecise. Imprecision can come from things like - // a bus losing internet connection after the start of the run. + // a bus losing connection after the start of the run. IMPRECISE_REALTIME = 1; // Update are based on information from schedule but updated diff --git a/gtfs-realtime/spec/en/reference.md b/gtfs-realtime/spec/en/reference.md index 695d12b4a..638c97fb9 100644 --- a/gtfs-realtime/spec/en/reference.md +++ b/gtfs-realtime/spec/en/reference.md @@ -190,7 +190,7 @@ PredictionType is ignored when schedule_relationship is SKIPPED or NO_DATA. | _**Value**_ | _**Comment**_ | |-------------|---------------| | **REALTIME** | This is the **default** behavior. Update are based on information from a vehicle that is followed in real time. | -| **IMPRECISE_REALTIME** | Update are based on information from a vehicle that was followed in real time but is imprecise. Imprecision can come from things like a bus losing internet connection after the start of the run. | +| **IMPRECISE_REALTIME** | Update are based on information from a vehicle that was followed in real time but is imprecise. Imprecision can come from things like a bus losing connection after the start of the run. | | **UPDATED_SCHEDULE** | Update are based on information from schedule but updated from what is present in the static GTFS due to control actions. | ## _enum_ ScheduleRelationship From f478749ecf32d6d569b55433011bb79f5184423e Mon Sep 17 00:00:00 2001 From: Guillaume Campagna Date: Thu, 18 Oct 2018 14:12:12 -0400 Subject: [PATCH 04/17] Improve documentation of different values --- gtfs-realtime/spec/en/reference.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gtfs-realtime/spec/en/reference.md b/gtfs-realtime/spec/en/reference.md index 638c97fb9..a73180161 100644 --- a/gtfs-realtime/spec/en/reference.md +++ b/gtfs-realtime/spec/en/reference.md @@ -190,8 +190,8 @@ PredictionType is ignored when schedule_relationship is SKIPPED or NO_DATA. | _**Value**_ | _**Comment**_ | |-------------|---------------| | **REALTIME** | This is the **default** behavior. Update are based on information from a vehicle that is followed in real time. | -| **IMPRECISE_REALTIME** | Update are based on information from a vehicle that was followed in real time but is imprecise. Imprecision can come from things like a bus losing connection after the start of the run. | -| **UPDATED_SCHEDULE** | Update are based on information from schedule but updated from what is present in the static GTFS due to control actions. | +| **IMPRECISE_REALTIME** | Update are based on information from a vehicle that was followed in real time but is imprecise. Imprecision can come from things like a bus losing connection after the start of the run, or when a vehicle is a the start of the run but start of the run is dependant on driver behavior. | +| **UPDATED_SCHEDULE** | Update are based on information from schedule but updated from what is present in the static GTFS. This value should be used when changes are due to control action but when the vehicle has not been follwed yet. | ## _enum_ ScheduleRelationship From 6dc06f38a5f383f2238da5c30eb4d96039ecc31b Mon Sep 17 00:00:00 2001 From: Guillaume Campagna Date: Thu, 18 Oct 2018 14:13:24 -0400 Subject: [PATCH 05/17] Fix typo --- gtfs-realtime/proto/gtfs-realtime.proto | 2 +- gtfs-realtime/spec/en/reference.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/gtfs-realtime/proto/gtfs-realtime.proto b/gtfs-realtime/proto/gtfs-realtime.proto index 6bdc55055..afa2ee476 100644 --- a/gtfs-realtime/proto/gtfs-realtime.proto +++ b/gtfs-realtime/proto/gtfs-realtime.proto @@ -221,7 +221,7 @@ message TripUpdate { optional ScheduleRelationship schedule_relationship = 5 [default = SCHEDULED]; - // Experimental feild, subject to change + // Experimental field, subject to change // PredictionType represent the source of data of the prediction // This lets consumer know if they should display a // real time symbol next to a departure and the type of prediction diff --git a/gtfs-realtime/spec/en/reference.md b/gtfs-realtime/spec/en/reference.md index a73180161..8e9e62231 100644 --- a/gtfs-realtime/spec/en/reference.md +++ b/gtfs-realtime/spec/en/reference.md @@ -190,8 +190,8 @@ PredictionType is ignored when schedule_relationship is SKIPPED or NO_DATA. | _**Value**_ | _**Comment**_ | |-------------|---------------| | **REALTIME** | This is the **default** behavior. Update are based on information from a vehicle that is followed in real time. | -| **IMPRECISE_REALTIME** | Update are based on information from a vehicle that was followed in real time but is imprecise. Imprecision can come from things like a bus losing connection after the start of the run, or when a vehicle is a the start of the run but start of the run is dependant on driver behavior. | -| **UPDATED_SCHEDULE** | Update are based on information from schedule but updated from what is present in the static GTFS. This value should be used when changes are due to control action but when the vehicle has not been follwed yet. | +| **IMPRECISE_REALTIME** | Update are based on information from a vehicle that was followed in real time but is imprecise. Imprecision can come from things like a bus losing connection after the start of the run, or when a vehicle is a the start of the run but start of the run is dependent on driver behavior. | +| **UPDATED_SCHEDULE** | Update are based on information from schedule but updated from what is present in the static GTFS. This value should be used when changes are due to control action where the applicable schedule is different but when the vehicle has not been followed yet. | ## _enum_ ScheduleRelationship From fb94dba881150f1ea8afb12cbcf73dde4b747e86 Mon Sep 17 00:00:00 2001 From: Guillaume Campagna Date: Thu, 18 Oct 2018 14:18:15 -0400 Subject: [PATCH 06/17] More precision on IMPRECISE_REALTIME --- gtfs-realtime/spec/en/reference.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gtfs-realtime/spec/en/reference.md b/gtfs-realtime/spec/en/reference.md index 8e9e62231..ba77febce 100644 --- a/gtfs-realtime/spec/en/reference.md +++ b/gtfs-realtime/spec/en/reference.md @@ -190,7 +190,7 @@ PredictionType is ignored when schedule_relationship is SKIPPED or NO_DATA. | _**Value**_ | _**Comment**_ | |-------------|---------------| | **REALTIME** | This is the **default** behavior. Update are based on information from a vehicle that is followed in real time. | -| **IMPRECISE_REALTIME** | Update are based on information from a vehicle that was followed in real time but is imprecise. Imprecision can come from things like a bus losing connection after the start of the run, or when a vehicle is a the start of the run but start of the run is dependent on driver behavior. | +| **IMPRECISE_REALTIME** | Update are based on information from a vehicle that was followed in real time but is imprecise. Imprecision can come from things like a bus losing connection after the start of the run, or when a vehicle is a the start of the run but start of the run is dependent on driver behavior. This value should be used when the prediction is not precise enough to show the real time indicator next to the predictions in other interfaces (ex bus stop displays) but that still have information based on real time condition. | | **UPDATED_SCHEDULE** | Update are based on information from schedule but updated from what is present in the static GTFS. This value should be used when changes are due to control action where the applicable schedule is different but when the vehicle has not been followed yet. | ## _enum_ ScheduleRelationship From 0f74b6d6903a837015be475247c1206f2ac03347 Mon Sep 17 00:00:00 2001 From: Guillaume Campagna Date: Thu, 18 Oct 2018 15:02:55 -0400 Subject: [PATCH 07/17] Revert removal of space to avoid diffs --- gtfs-realtime/spec/en/reference.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gtfs-realtime/spec/en/reference.md b/gtfs-realtime/spec/en/reference.md index ba77febce..1d480c80c 100644 --- a/gtfs-realtime/spec/en/reference.md +++ b/gtfs-realtime/spec/en/reference.md @@ -220,7 +220,7 @@ Realtime positioning information for a given vehicle. | **stop_id** | [string](https://developers.google.com/protocol-buffers/docs/proto#scalar) | Optional | One | Identifies the current stop. The value must be the same as in stops.txt in the corresponding GTFS feed. | | **current_status** | [VehicleStopStatus](#enum-vehiclestopstatus) | Optional | One | The exact status of the vehicle with respect to the current stop. Ignored if current_stop_sequence is missing. | | **timestamp** | [uint64](https://developers.google.com/protocol-buffers/docs/proto#scalar) | Optional | One | Moment at which the vehicle's position was measured. In POSIX time (i.e., number of seconds since January 1st 1970 00:00:00 UTC). | -| **congestion_level** | [CongestionLevel](#enum-congestionlevel) | Optional | One | +| **congestion_level** | [CongestionLevel](#enum-congestionlevel) | Optional | One | | _**occupancy_status**_ | _[OccupancyStatus](#enum-occupancystatus)_ | _Optional_ | One | The degree of passenger occupancy of the vehicle.
**Caution:** this field is still **experimental**, and subject to change. It may be formally adopted in the future.| ## _enum_ VehicleStopStatus @@ -275,8 +275,8 @@ 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) | Optional | One | +| **effect** | [Effect](#enum-effect) | Optional | One | | **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. | From c975455af8509e71cf52c2161a56b62d4f6aaa0c Mon Sep 17 00:00:00 2001 From: Guillaume Campagna Date: Thu, 18 Oct 2018 15:03:17 -0400 Subject: [PATCH 08/17] Update reference.md --- gtfs-realtime/spec/en/reference.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gtfs-realtime/spec/en/reference.md b/gtfs-realtime/spec/en/reference.md index 1d480c80c..2b097552f 100644 --- a/gtfs-realtime/spec/en/reference.md +++ b/gtfs-realtime/spec/en/reference.md @@ -12,7 +12,7 @@ The following values are used in the *Required* field: * **Required**: This field must be provided by a GTFS-realtime feed producer. * **Conditionally required**: This field is required under certain conditions, which are outlined in the field *Description*. Outside of these conditions, the field is optional. -* **Optional**: This field is optional and is not required to be implemented by producers. However, if the data is available in the underlying automatic vehicle location systems (e.g., VehiclePosition `timestamp`) it is recommended that producers provide these optional fields when possible. +* **Optional**: This field is optional and is not required to be implemented by producers. However, if the data is available in the underlying automatic vehicle location systems (e.g., VehiclePosition `timestamp`) it is recommended that producers provide these optional fields when possible. *Note that semantic requirements were not defined in GTFS-realtime version 1.0, and therefore feeds with `gtfs_realtime_version` of `1` may not meet these requirements (see [the proposal for semantic requirements](https://github.com/google/transit/pull/64) for details).* From dc6ef5f732f6f7c149cb134f10eb9dfd615a2702 Mon Sep 17 00:00:00 2001 From: Guillaume Campagna Date: Thu, 18 Oct 2018 15:04:14 -0400 Subject: [PATCH 09/17] Fix typo --- gtfs-realtime/spec/en/reference.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gtfs-realtime/spec/en/reference.md b/gtfs-realtime/spec/en/reference.md index 2b097552f..d05668e83 100644 --- a/gtfs-realtime/spec/en/reference.md +++ b/gtfs-realtime/spec/en/reference.md @@ -181,7 +181,7 @@ The update is linked to a specific stop either through stop_sequence or stop_id, ## _enum_ PredictionType -Experimental feild, subject to change. +Experimental field, subject to change. PredictionType represent the source of data of the prediction. This lets consumer adjust their display of the information depending on the source (for example, with a real time symbol). PredictionType is ignored when schedule_relationship is SKIPPED or NO_DATA. @@ -189,9 +189,9 @@ PredictionType is ignored when schedule_relationship is SKIPPED or NO_DATA. | _**Value**_ | _**Comment**_ | |-------------|---------------| -| **REALTIME** | This is the **default** behavior. Update are based on information from a vehicle that is followed in real time. | -| **IMPRECISE_REALTIME** | Update are based on information from a vehicle that was followed in real time but is imprecise. Imprecision can come from things like a bus losing connection after the start of the run, or when a vehicle is a the start of the run but start of the run is dependent on driver behavior. This value should be used when the prediction is not precise enough to show the real time indicator next to the predictions in other interfaces (ex bus stop displays) but that still have information based on real time condition. | -| **UPDATED_SCHEDULE** | Update are based on information from schedule but updated from what is present in the static GTFS. This value should be used when changes are due to control action where the applicable schedule is different but when the vehicle has not been followed yet. | +| **REALTIME** | This is the **default** behavior. Updates are based on information from a vehicle that is followed in real time. | +| **IMPRECISE_REALTIME** | Updates are based on information from a vehicle that was followed in real time but is imprecise. Imprecision can come from things like a bus losing connection after the start of the run, or when a vehicle is a the start of the run but start of the run is dependent on driver behavior. This value should be used when the prediction is not precise enough to show the real time indicator next to the predictions in other interfaces (ex bus stop displays) but that still have information based on real time condition. | +| **UPDATED_SCHEDULE** | Updates are based on information from schedule but updated from what is present in the static GTFS. This value should be used when changes are due to control action where the applicable schedule is different but when the vehicle has not been followed yet. | ## _enum_ ScheduleRelationship From 33c7d32041f33b5524dad46add74971738c48b9d Mon Sep 17 00:00:00 2001 From: Guillaume Campagna Date: Mon, 22 Oct 2018 13:56:56 -0400 Subject: [PATCH 10/17] Use REALTIME_IMPRECISE --- gtfs-realtime/proto/gtfs-realtime.proto | 2 +- gtfs-realtime/spec/en/reference.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/gtfs-realtime/proto/gtfs-realtime.proto b/gtfs-realtime/proto/gtfs-realtime.proto index afa2ee476..bc7521a73 100644 --- a/gtfs-realtime/proto/gtfs-realtime.proto +++ b/gtfs-realtime/proto/gtfs-realtime.proto @@ -235,7 +235,7 @@ message TripUpdate { // Update are based on information from a vehicle that was followed // in real time but is imprecise. Imprecision can come from things like // a bus losing connection after the start of the run. - IMPRECISE_REALTIME = 1; + REALTIME_IMPRECISE = 1; // Update are based on information from schedule but updated // from what is present in the static GTFS due to control actions. diff --git a/gtfs-realtime/spec/en/reference.md b/gtfs-realtime/spec/en/reference.md index d05668e83..d1a184c09 100644 --- a/gtfs-realtime/spec/en/reference.md +++ b/gtfs-realtime/spec/en/reference.md @@ -190,7 +190,7 @@ PredictionType is ignored when schedule_relationship is SKIPPED or NO_DATA. | _**Value**_ | _**Comment**_ | |-------------|---------------| | **REALTIME** | This is the **default** behavior. Updates are based on information from a vehicle that is followed in real time. | -| **IMPRECISE_REALTIME** | Updates are based on information from a vehicle that was followed in real time but is imprecise. Imprecision can come from things like a bus losing connection after the start of the run, or when a vehicle is a the start of the run but start of the run is dependent on driver behavior. This value should be used when the prediction is not precise enough to show the real time indicator next to the predictions in other interfaces (ex bus stop displays) but that still have information based on real time condition. | +| **REALTIME_IMPRECISE** | Updates are based on information from a vehicle that was followed in real time but is imprecise. Imprecision can come from things like a bus losing connection after the start of the run, or when a vehicle is a the start of the run but start of the run is dependent on driver behavior. This value should be used when the prediction is not precise enough to show the real time indicator next to the predictions in other interfaces (ex bus stop displays) but that still have information based on real time condition. | | **UPDATED_SCHEDULE** | Updates are based on information from schedule but updated from what is present in the static GTFS. This value should be used when changes are due to control action where the applicable schedule is different but when the vehicle has not been followed yet. | ## _enum_ ScheduleRelationship From b2e6cd49093294b80b163dea70bf00a16e6a4119 Mon Sep 17 00:00:00 2001 From: juanborre Date: Thu, 1 Nov 2018 12:32:52 -0400 Subject: [PATCH 11/17] Update description to decouple real_time_precision from updated_schedule --- gtfs-realtime/proto/gtfs-realtime.proto | 37 ++++++++++++------------- gtfs-realtime/spec/en/reference.md | 13 ++++----- 2 files changed, 24 insertions(+), 26 deletions(-) diff --git a/gtfs-realtime/proto/gtfs-realtime.proto b/gtfs-realtime/proto/gtfs-realtime.proto index bc7521a73..644174224 100644 --- a/gtfs-realtime/proto/gtfs-realtime.proto +++ b/gtfs-realtime/proto/gtfs-realtime.proto @@ -222,26 +222,25 @@ message TripUpdate { [default = SCHEDULED]; // Experimental field, subject to change - // PredictionType represent the source of data of the prediction - // This lets consumer know if they should display a - // real time symbol next to a departure and the type of prediction - // PredictionType is ignored when schedule_relationship = SKIPPED or NO_DATA - enum PredictionType { - // Update are based on information from a vehicle - // that is followed in real time - // This is the default - REALTIME = 0; - - // Update are based on information from a vehicle that was followed - // in real time but is imprecise. Imprecision can come from things like - // a bus losing connection after the start of the run. - REALTIME_IMPRECISE = 1; - - // Update are based on information from schedule but updated - // from what is present in the static GTFS due to control actions. - UPDATED_SCHEDULE = 2; + // RealTimePrecision represents the accuracy of the + // real time information provided. + // This allows the consumer to decide how to display the real time information + // to the user depending on the precision. + // RealTimePrecision is ignored if schedule_relationship = SKIPPED or NO_DATA + enum RealTimePrecision { + // Update is based on information from a vehicle + // that is followed in real time. + // The prediction is as accurate as the producer can provide. + // This is the default. + PRECISE = 0; + + // Update is based on information from a vehicle that is or was followed + // in real time but is now imprecise. Imprecision can come from things like + // a bus losing connection after the start of the run or when the prediction + // is dependant on driver behaviour. + IMPRECISE = 1; } - optional PredictionType prediction_type = 6 [default = REALTIME] + optional RealTimePrecision real_time_precision = 6 [default = PRECISE]; // The extensions namespace allows 3rd-party developers to extend the // GTFS Realtime Specification in order to add and evaluate new features diff --git a/gtfs-realtime/spec/en/reference.md b/gtfs-realtime/spec/en/reference.md index d1a184c09..6862f46ee 100644 --- a/gtfs-realtime/spec/en/reference.md +++ b/gtfs-realtime/spec/en/reference.md @@ -177,21 +177,20 @@ The update is linked to a specific stop either through stop_sequence or stop_id, | **arrival** | [StopTimeEvent](#message-stoptimeevent) | Conditionally required | One | If schedule_relationship is empty or SCHEDULED, either arrival or departure must be provided within a StopTimeUpdate - both fields cannot be empty. arrival and departure may both be empty when schedule_relationship is SKIPPED. If schedule_relationship is NO_DATA, arrival and departure must be empty. | | **departure** | [StopTimeEvent](#message-stoptimeevent) | Conditionally required | One | If schedule_relationship is empty or SCHEDULED, either arrival or departure must be provided within a StopTimeUpdate - both fields cannot be empty. arrival and departure may both be empty when schedule_relationship is SKIPPED. If schedule_relationship is NO_DATA, arrival and departure must be empty. | | **schedule_relationship** | [ScheduleRelationship](#enum-schedulerelationship) | Optional | One | The default relationship is SCHEDULED. | -| **prediction_type** | [PredictionType](#enum-predictiontype) | Optional | One | The default relationship is REALTIME. | +| **real_time_precision** | [RealTimePrecision](#enum-realtimeprecision) | Optional | One | The default relationship is PRECISE. | -## _enum_ PredictionType +## _enum_ RealTimePrecision Experimental field, subject to change. -PredictionType represent the source of data of the prediction. This lets consumer adjust their display of the information depending on the source (for example, with a real time symbol). -PredictionType is ignored when schedule_relationship is SKIPPED or NO_DATA. +RealTimePrecision represents the accuracy of the real time information provided. This allows the consumer to adjust their display of the information depending on the precision (for example with a real-time symbol). +RealTimePrecision is ignored when schedule_relationship is SKIPPED or NO_DATA. #### Values | _**Value**_ | _**Comment**_ | |-------------|---------------| -| **REALTIME** | This is the **default** behavior. Updates are based on information from a vehicle that is followed in real time. | -| **REALTIME_IMPRECISE** | Updates are based on information from a vehicle that was followed in real time but is imprecise. Imprecision can come from things like a bus losing connection after the start of the run, or when a vehicle is a the start of the run but start of the run is dependent on driver behavior. This value should be used when the prediction is not precise enough to show the real time indicator next to the predictions in other interfaces (ex bus stop displays) but that still have information based on real time condition. | -| **UPDATED_SCHEDULE** | Updates are based on information from schedule but updated from what is present in the static GTFS. This value should be used when changes are due to control action where the applicable schedule is different but when the vehicle has not been followed yet. | +| **PRECISE** | This is the **default** behavior. Updates are based on information from a vehicle that is followed in real time. The prediction is as accurate as the producer can provide. | +| **IMPRECISE** | Updates are based on information from a vehicle that is or was followed in real time but is now imprecise. Imprecision can come from things like a bus losing connection after the start of the run, or when a vehicle is a the start of the run but that start is dependent on driver behavior. This value should be used when the prediction is not precise enough to show the real time indicator next to the predictions in other interfaces (ex bus stop displays) but that still have information based on real time condition. | ## _enum_ ScheduleRelationship From 2534ed61adb07e9fe459860314e344c11ed5376d Mon Sep 17 00:00:00 2001 From: juanborre Date: Mon, 5 Nov 2018 08:23:21 -0500 Subject: [PATCH 12/17] Specify that IMPRECISE predictions represent a third type of real time information in terms of display besides scheduled and precise real time. --- gtfs-realtime/proto/gtfs-realtime.proto | 7 +++++++ gtfs-realtime/spec/en/reference.md | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/gtfs-realtime/proto/gtfs-realtime.proto b/gtfs-realtime/proto/gtfs-realtime.proto index 644174224..46953a67a 100644 --- a/gtfs-realtime/proto/gtfs-realtime.proto +++ b/gtfs-realtime/proto/gtfs-realtime.proto @@ -238,6 +238,13 @@ message TripUpdate { // in real time but is now imprecise. Imprecision can come from things like // a bus losing connection after the start of the run or when the prediction // is dependant on driver behaviour. + // This value should be used when the prediction is not precise enough to + // show the real time indicator next to the predictions in other interfaces + // (ex bus stop displays) but that still have information based on real time + // condition. If IMPRECISE and PRECISE information are both shown to riders, + // consumers should represent these types of information differently in the + // user interface. IMPRECISE values should not be represented in the same + // way as schedule data to the rider. IMPRECISE = 1; } optional RealTimePrecision real_time_precision = 6 [default = PRECISE]; diff --git a/gtfs-realtime/spec/en/reference.md b/gtfs-realtime/spec/en/reference.md index 6862f46ee..92b1615e5 100644 --- a/gtfs-realtime/spec/en/reference.md +++ b/gtfs-realtime/spec/en/reference.md @@ -190,7 +190,7 @@ RealTimePrecision is ignored when schedule_relationship is SKIPPED or NO_DATA. | _**Value**_ | _**Comment**_ | |-------------|---------------| | **PRECISE** | This is the **default** behavior. Updates are based on information from a vehicle that is followed in real time. The prediction is as accurate as the producer can provide. | -| **IMPRECISE** | Updates are based on information from a vehicle that is or was followed in real time but is now imprecise. Imprecision can come from things like a bus losing connection after the start of the run, or when a vehicle is a the start of the run but that start is dependent on driver behavior. This value should be used when the prediction is not precise enough to show the real time indicator next to the predictions in other interfaces (ex bus stop displays) but that still have information based on real time condition. | +| **IMPRECISE** | Updates are based on information from a vehicle that is or was followed in real time but is now imprecise. Imprecision can come from things like a bus losing connection after the start of the run, or when a vehicle is at the start of the run but that start is dependent on driver behavior. This value should be used when the prediction is not precise enough to show the real time indicator next to the predictions in other interfaces (ex bus stop displays) but that still have information based on real time condition. If IMPRECISE and PRECISE information are both shown to riders, consumers should represent these types of information differently in the user interface. IMPRECISE values should not be represented in the same way as schedule data to the rider.| ## _enum_ ScheduleRelationship From fcd33db88576845cdd2c1cda50f11df5aa5bdd4a Mon Sep 17 00:00:00 2001 From: juanborre Date: Wed, 7 Nov 2018 09:37:49 -0500 Subject: [PATCH 13/17] Update comments to suggest different representation of real time info depending on precision. --- gtfs-realtime/proto/gtfs-realtime.proto | 5 +---- gtfs-realtime/spec/en/reference.md | 4 ++-- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/gtfs-realtime/proto/gtfs-realtime.proto b/gtfs-realtime/proto/gtfs-realtime.proto index 46953a67a..f2a1e829a 100644 --- a/gtfs-realtime/proto/gtfs-realtime.proto +++ b/gtfs-realtime/proto/gtfs-realtime.proto @@ -238,10 +238,7 @@ message TripUpdate { // in real time but is now imprecise. Imprecision can come from things like // a bus losing connection after the start of the run or when the prediction // is dependant on driver behaviour. - // This value should be used when the prediction is not precise enough to - // show the real time indicator next to the predictions in other interfaces - // (ex bus stop displays) but that still have information based on real time - // condition. If IMPRECISE and PRECISE information are both shown to riders, + // If IMPRECISE and PRECISE information are both shown to riders, // consumers should represent these types of information differently in the // user interface. IMPRECISE values should not be represented in the same // way as schedule data to the rider. diff --git a/gtfs-realtime/spec/en/reference.md b/gtfs-realtime/spec/en/reference.md index 92b1615e5..6f9eacd96 100644 --- a/gtfs-realtime/spec/en/reference.md +++ b/gtfs-realtime/spec/en/reference.md @@ -182,7 +182,7 @@ The update is linked to a specific stop either through stop_sequence or stop_id, ## _enum_ RealTimePrecision Experimental field, subject to change. -RealTimePrecision represents the accuracy of the real time information provided. This allows the consumer to adjust their display of the information depending on the precision (for example with a real-time symbol). +RealTimePrecision represents the accuracy of the real time information provided. This allows the consumer to adjust their display of the real time information depending on the precision. RealTimePrecision is ignored when schedule_relationship is SKIPPED or NO_DATA. #### Values @@ -190,7 +190,7 @@ RealTimePrecision is ignored when schedule_relationship is SKIPPED or NO_DATA. | _**Value**_ | _**Comment**_ | |-------------|---------------| | **PRECISE** | This is the **default** behavior. Updates are based on information from a vehicle that is followed in real time. The prediction is as accurate as the producer can provide. | -| **IMPRECISE** | Updates are based on information from a vehicle that is or was followed in real time but is now imprecise. Imprecision can come from things like a bus losing connection after the start of the run, or when a vehicle is at the start of the run but that start is dependent on driver behavior. This value should be used when the prediction is not precise enough to show the real time indicator next to the predictions in other interfaces (ex bus stop displays) but that still have information based on real time condition. If IMPRECISE and PRECISE information are both shown to riders, consumers should represent these types of information differently in the user interface. IMPRECISE values should not be represented in the same way as schedule data to the rider.| +| **IMPRECISE** | Updates are based on information from a vehicle that is or was followed in real time but is now imprecise. Imprecision can come from things like a bus losing connection after the start of the run, or when a vehicle is at the start of the run but that start is dependent on driver behavior. If IMPRECISE and PRECISE information are both shown to riders, consumers should represent these types of information differently in the user interface. IMPRECISE values should not be represented in the same way as schedule data to the rider.| ## _enum_ ScheduleRelationship From 8bcdf123cd0ced1a1a095b060ad0aa0134fdfabf Mon Sep 17 00:00:00 2001 From: Guillaume Campagna Date: Fri, 4 Jan 2019 10:16:19 -0500 Subject: [PATCH 14/17] Update and replace precision by certainty, add UNKNOWN value --- gtfs-realtime/proto/gtfs-realtime.proto | 32 +++++++++++++------------ gtfs-realtime/spec/en/reference.md | 15 ++++++------ 2 files changed, 25 insertions(+), 22 deletions(-) diff --git a/gtfs-realtime/proto/gtfs-realtime.proto b/gtfs-realtime/proto/gtfs-realtime.proto index f2a1e829a..98df12029 100644 --- a/gtfs-realtime/proto/gtfs-realtime.proto +++ b/gtfs-realtime/proto/gtfs-realtime.proto @@ -222,29 +222,31 @@ message TripUpdate { [default = SCHEDULED]; // Experimental field, subject to change - // RealTimePrecision represents the accuracy of the + // RealTimeCertainty represents the certainty of the // real time information provided. // This allows the consumer to decide how to display the real time information // to the user depending on the precision. - // RealTimePrecision is ignored if schedule_relationship = SKIPPED or NO_DATA - enum RealTimePrecision { - // Update is based on information from a vehicle - // that is followed in real time. - // The prediction is as accurate as the producer can provide. - // This is the default. - PRECISE = 0; + // If HIGH and LOW certainty information are both shown to riders, + // consumers should represent these types of information differently in the + // user interface. LOW certainty values should not be represented in the same + // way as schedule data to the rider. + // RealTimeCertainty is ignored if schedule_relationship = SKIPPED or NO_DATA + enum RealTimeCertainty { + // Precision of the real time is unknown, default behavior + UNKOWN = 0; + + // Update is based on real time information with high certainty. + // High certainty is usually the certainty users expect when talking + // about real time information. It's used to be constrasted with LOW certainty. + HIGH = 1; // Update is based on information from a vehicle that is or was followed - // in real time but is now imprecise. Imprecision can come from things like + // in real time but is now low certainty. Lower certainty can come from things like // a bus losing connection after the start of the run or when the prediction // is dependant on driver behaviour. - // If IMPRECISE and PRECISE information are both shown to riders, - // consumers should represent these types of information differently in the - // user interface. IMPRECISE values should not be represented in the same - // way as schedule data to the rider. - IMPRECISE = 1; + LOW = 2; } - optional RealTimePrecision real_time_precision = 6 [default = PRECISE]; + optional RealTimeCertainty certainty = 6 [default = UNKNOWN]; // The extensions namespace allows 3rd-party developers to extend the // GTFS Realtime Specification in order to add and evaluate new features diff --git a/gtfs-realtime/spec/en/reference.md b/gtfs-realtime/spec/en/reference.md index aaa62768d..b36c5bbbc 100644 --- a/gtfs-realtime/spec/en/reference.md +++ b/gtfs-realtime/spec/en/reference.md @@ -177,20 +177,21 @@ The update is linked to a specific stop either through stop_sequence or stop_id, | **arrival** | [StopTimeEvent](#message-stoptimeevent) | Conditionally required | One | If schedule_relationship is empty or SCHEDULED, either arrival or departure must be provided within a StopTimeUpdate - both fields cannot be empty. arrival and departure may both be empty when schedule_relationship is SKIPPED. If schedule_relationship is NO_DATA, arrival and departure must be empty. | | **departure** | [StopTimeEvent](#message-stoptimeevent) | Conditionally required | One | If schedule_relationship is empty or SCHEDULED, either arrival or departure must be provided within a StopTimeUpdate - both fields cannot be empty. arrival and departure may both be empty when schedule_relationship is SKIPPED. If schedule_relationship is NO_DATA, arrival and departure must be empty. | | **schedule_relationship** | [ScheduleRelationship](#enum-schedulerelationship) | Optional | One | The default relationship is SCHEDULED. | -| **real_time_precision** | [RealTimePrecision](#enum-realtimeprecision) | Optional | One | The default relationship is PRECISE. | +| **certainty** | [RealTimeCertainty](#enum-realtimecertainty) | Optional | One | The default certainty is UNKOWN. | -## _enum_ RealTimePrecision +## _enum_ RealTimeCertainty -Experimental field, subject to change. -RealTimePrecision represents the accuracy of the real time information provided. This allows the consumer to adjust their display of the real time information depending on the precision. -RealTimePrecision is ignored when schedule_relationship is SKIPPED or NO_DATA. +Experimental field, subject to change +RealTimeCertainty represents the certainty of the real time information provided. This allows the consumer to decide how to display the real time information to the user depending on the precision. If HIGH and LOW certainty information are both shown to riders, consumers should represent these types of information differently in the user interface. LOW certainty values should not be represented in the same way as schedule data to the rider. +RealTimeCertainty is ignored if schedule_relationship = SKIPPED or NO_DATA #### Values | _**Value**_ | _**Comment**_ | |-------------|---------------| -| **PRECISE** | This is the **default** behavior. Updates are based on information from a vehicle that is followed in real time. The prediction is as accurate as the producer can provide. | -| **IMPRECISE** | Updates are based on information from a vehicle that is or was followed in real time but is now imprecise. Imprecision can come from things like a bus losing connection after the start of the run, or when a vehicle is at the start of the run but that start is dependent on driver behavior. If IMPRECISE and PRECISE information are both shown to riders, consumers should represent these types of information differently in the user interface. IMPRECISE values should not be represented in the same way as schedule data to the rider.| +| **UNKOWN** | Precision of the real time is unknown, default behavior | +| **HIGH** | Update is based on real time information with high certainty. High certainty is usually the certainty users expect when talking about real time information. It's used to be constrasted with LOW certainty. | +| **LOW** | Update is based on information from a vehicle that is or was followed in real time but is now low certainty. Lower certainty can come from things like a bus losing connection after the start of the run or when the prediction is dependant on driver behaviour. | ## _enum_ ScheduleRelationship From 7c5a879d0cead78c19f90737df1699307f809e48 Mon Sep 17 00:00:00 2001 From: Guillaume Campagna Date: Sat, 12 Jan 2019 15:26:32 -0500 Subject: [PATCH 15/17] Fix typo --- gtfs-realtime/proto/gtfs-realtime.proto | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gtfs-realtime/proto/gtfs-realtime.proto b/gtfs-realtime/proto/gtfs-realtime.proto index 98df12029..c3e1d0e6a 100644 --- a/gtfs-realtime/proto/gtfs-realtime.proto +++ b/gtfs-realtime/proto/gtfs-realtime.proto @@ -233,7 +233,7 @@ message TripUpdate { // RealTimeCertainty is ignored if schedule_relationship = SKIPPED or NO_DATA enum RealTimeCertainty { // Precision of the real time is unknown, default behavior - UNKOWN = 0; + UNKNOWN = 0; // Update is based on real time information with high certainty. // High certainty is usually the certainty users expect when talking From 9ddb8f65c41f434045407c591632169385077cdd Mon Sep 17 00:00:00 2001 From: Guillaume Campagna Date: Sat, 12 Jan 2019 15:27:01 -0500 Subject: [PATCH 16/17] Fix typo --- gtfs-realtime/spec/en/reference.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gtfs-realtime/spec/en/reference.md b/gtfs-realtime/spec/en/reference.md index b36c5bbbc..c50b4a54e 100644 --- a/gtfs-realtime/spec/en/reference.md +++ b/gtfs-realtime/spec/en/reference.md @@ -177,7 +177,7 @@ The update is linked to a specific stop either through stop_sequence or stop_id, | **arrival** | [StopTimeEvent](#message-stoptimeevent) | Conditionally required | One | If schedule_relationship is empty or SCHEDULED, either arrival or departure must be provided within a StopTimeUpdate - both fields cannot be empty. arrival and departure may both be empty when schedule_relationship is SKIPPED. If schedule_relationship is NO_DATA, arrival and departure must be empty. | | **departure** | [StopTimeEvent](#message-stoptimeevent) | Conditionally required | One | If schedule_relationship is empty or SCHEDULED, either arrival or departure must be provided within a StopTimeUpdate - both fields cannot be empty. arrival and departure may both be empty when schedule_relationship is SKIPPED. If schedule_relationship is NO_DATA, arrival and departure must be empty. | | **schedule_relationship** | [ScheduleRelationship](#enum-schedulerelationship) | Optional | One | The default relationship is SCHEDULED. | -| **certainty** | [RealTimeCertainty](#enum-realtimecertainty) | Optional | One | The default certainty is UNKOWN. | +| **certainty** | [RealTimeCertainty](#enum-realtimecertainty) | Optional | One | The default certainty is UNKNOWN. | ## _enum_ RealTimeCertainty @@ -189,7 +189,7 @@ RealTimeCertainty is ignored if schedule_relationship = SKIPPED or NO_DATA | _**Value**_ | _**Comment**_ | |-------------|---------------| -| **UNKOWN** | Precision of the real time is unknown, default behavior | +| **UNKNOWN** | Precision of the real time is unknown, default behavior | | **HIGH** | Update is based on real time information with high certainty. High certainty is usually the certainty users expect when talking about real time information. It's used to be constrasted with LOW certainty. | | **LOW** | Update is based on information from a vehicle that is or was followed in real time but is now low certainty. Lower certainty can come from things like a bus losing connection after the start of the run or when the prediction is dependant on driver behaviour. | From fe25123198135d752662114e3fe886d62913459f Mon Sep 17 00:00:00 2001 From: Guillaume Campagna Date: Wed, 30 Jan 2019 10:22:53 -0500 Subject: [PATCH 17/17] Rename RealTimeCertainty to PredictionCertainty --- gtfs-realtime/proto/gtfs-realtime.proto | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/gtfs-realtime/proto/gtfs-realtime.proto b/gtfs-realtime/proto/gtfs-realtime.proto index c3e1d0e6a..ce6f77198 100644 --- a/gtfs-realtime/proto/gtfs-realtime.proto +++ b/gtfs-realtime/proto/gtfs-realtime.proto @@ -222,7 +222,7 @@ message TripUpdate { [default = SCHEDULED]; // Experimental field, subject to change - // RealTimeCertainty represents the certainty of the + // PredictionCertainty represents the certainty of the // real time information provided. // This allows the consumer to decide how to display the real time information // to the user depending on the precision. @@ -230,13 +230,13 @@ message TripUpdate { // consumers should represent these types of information differently in the // user interface. LOW certainty values should not be represented in the same // way as schedule data to the rider. - // RealTimeCertainty is ignored if schedule_relationship = SKIPPED or NO_DATA - enum RealTimeCertainty { + // PredictionCertainty is ignored if schedule_relationship = SKIPPED or NO_DATA + enum PredictionCertainty { // Precision of the real time is unknown, default behavior UNKNOWN = 0; - - // Update is based on real time information with high certainty. - // High certainty is usually the certainty users expect when talking + + // Update is based on real time information with high certainty. + // High certainty is usually the certainty users expect when talking // about real time information. It's used to be constrasted with LOW certainty. HIGH = 1; @@ -246,7 +246,7 @@ message TripUpdate { // is dependant on driver behaviour. LOW = 2; } - optional RealTimeCertainty certainty = 6 [default = UNKNOWN]; + optional PredictionCertainty certainty = 6 [default = UNKNOWN]; // The extensions namespace allows 3rd-party developers to extend the // GTFS Realtime Specification in order to add and evaluate new features