From 96b9d98ea9ae761aed3492379842478a01fae231 Mon Sep 17 00:00:00 2001 From: Mitch Vars Date: Mon, 11 Mar 2024 15:12:53 -0500 Subject: [PATCH 1/3] Clarify designated_period_except definition --- curbs/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/curbs/README.md b/curbs/README.md index d732085c..98b88295 100644 --- a/curbs/README.md +++ b/curbs/README.md @@ -466,7 +466,7 @@ A Time Span is represented as a JSON object whose fields are as follows: | `time_of_day_start` | "HH:MM" string | Optional | The 24-hour local time that this Time Span starts to apply (_inclusive_, see [Range Boundaries](/general-information.md#range-boundaries)), in the local timezone. If unspecified, this Time Span starts at midnight. | | `time_of_day_end` | "HH:MM" string | Optional | The 24-hour local time that this Time Span stops applying (_exclusive_, see [Range Boundaries](/general-information.md#range-boundaries)), in the local timezone. This is not inclusive, so for instance if `time_of_day_end` is `"17:00"`, this Time Span goes up to 5PM but does not include it. If unspecified, this Time Span ends at midnight. | | `designated_period` | String | Optional | A string representing an arbitrarily-named, externally-defined period of time. Any values MAY be specified but the following known values SHOULD be used when possible: | -| `designated_period_except` | `Boolean` | `Optional` | If specified and `true`, this Time Span applies at all times not matching the named designated period. (e.g., if `designated_period` is `snow emergency` and `designated_period_except` is `true`, this Time Span does not apply on snow days). | +| `designated_period_except` | Boolean | Optional | If specified and `true`, all fields in this Time Span are describing a period in which the assocated rule does not apply. (e.g., if `designated_period` is `snow emergency` and `designated_period_except` is `true`, this Time Span does not apply on snow days. If `days_of_week` is `['sun']`, the Time Span does not apply on Sundays.) | **Note about `start_date` and `end_date` in _Time Span_:** these fields are optional but useful for defining policies that will be used once and won't be reused later, like around a specific, temporary event. If used, they are only applicable in any connected Curb Zone during their overlapping time frames. From fd6aa684dec9bd52c76e377ab6f9079aa42c6f72 Mon Sep 17 00:00:00 2001 From: Michael Schnuerle <1285077+schnuerle@users.noreply.github.com> Date: Tue, 28 May 2024 09:31:45 -0400 Subject: [PATCH 2/3] Clarifying rule does not apply for exception time spans. Co-authored-by: Matt Davis --- curbs/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/curbs/README.md b/curbs/README.md index 98b88295..906eb2e7 100644 --- a/curbs/README.md +++ b/curbs/README.md @@ -466,7 +466,7 @@ A Time Span is represented as a JSON object whose fields are as follows: | `time_of_day_start` | "HH:MM" string | Optional | The 24-hour local time that this Time Span starts to apply (_inclusive_, see [Range Boundaries](/general-information.md#range-boundaries)), in the local timezone. If unspecified, this Time Span starts at midnight. | | `time_of_day_end` | "HH:MM" string | Optional | The 24-hour local time that this Time Span stops applying (_exclusive_, see [Range Boundaries](/general-information.md#range-boundaries)), in the local timezone. This is not inclusive, so for instance if `time_of_day_end` is `"17:00"`, this Time Span goes up to 5PM but does not include it. If unspecified, this Time Span ends at midnight. | | `designated_period` | String | Optional | A string representing an arbitrarily-named, externally-defined period of time. Any values MAY be specified but the following known values SHOULD be used when possible: | -| `designated_period_except` | Boolean | Optional | If specified and `true`, all fields in this Time Span are describing a period in which the assocated rule does not apply. (e.g., if `designated_period` is `snow emergency` and `designated_period_except` is `true`, this Time Span does not apply on snow days. If `days_of_week` is `['sun']`, the Time Span does not apply on Sundays.) | +| `designated_period_except` | Boolean | Optional | If specified and `true`, all fields in this Time Span are describing a period in which the assocated rule does not apply. (e.g., if `designated_period` is `snow emergency` and `designated_period_except` is `true`, the rule does not apply on snow days. If `days_of_week` is `['sun']`, the rule does not apply on Sundays.) | **Note about `start_date` and `end_date` in _Time Span_:** these fields are optional but useful for defining policies that will be used once and won't be reused later, like around a specific, temporary event. If used, they are only applicable in any connected Curb Zone during their overlapping time frames. From f3089bd809b25892a10801d4e6263b58893d30c1 Mon Sep 17 00:00:00 2001 From: Michael Schnuerle <1285077+schnuerle@users.noreply.github.com> Date: Tue, 19 Nov 2024 11:21:18 -0500 Subject: [PATCH 3/3] Adding user_classes_except optional field for #124 --- curbs/README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/curbs/README.md b/curbs/README.md index 906eb2e7..41ed4cca 100644 --- a/curbs/README.md +++ b/curbs/README.md @@ -358,6 +358,7 @@ It is a JSON object with the following fields: | `no_return` | Integer | Optional | The length of time (in units of `no_return_unit`) that a user must vacate a Curb Zone before being allowed to return for another stay. Defaults to 0. May not be applicable for all [activities](#activities). | | `no_return_unit` | Enum | Optional | The [Unit of Time](/general-information.md#unit-of-time-enum) associated with the `no_return` value. Defaults to "minute". | | `user_classes` | Array of [user class](#user-classes) Strings | Optional | If specified, this regulation only applies to users matching the [user classes](#user-classes) contained within. If not specified, this regulation applies to everyone. The order of `user_classes` is not relevant, but a vehicle using a curb with this rule must match all `user_classes` contained in the array. | +| `user_classes_except` | Array of [user class](#user-classes) Strings | Optional | If specified, this regulation applies only to users who do **not** match any of the [user classes](#user-classes) contained within. The order of `user_classes` is not relevant, but a vehicle using a curb with this rule must match all `user_classes` contained in the array. This field takes precidence over `user_classes` when present. | | `rate` | Array of [Rates](#rate) | Optional | The cost of using this Curb Zone when this regulation applies. Rates are repeated to allow for prices that change over time. For instance, a regulation may have a price of $1 for the first hour but $2 for every subsequent hour. The complete set of the [Rates](#rate) array must span **from** `start_minutes` = `0` or `null` **to** `end_minutes` = `max_stay` without overlap of effective minutes (i.e. the range created by rate `start_minutes` and `end_minutes`). If a "negative" [activity](#activities) is used, this array should be empty. May not be applicable for all [activity](#activities). | [Top][toc] @@ -466,7 +467,7 @@ A Time Span is represented as a JSON object whose fields are as follows: | `time_of_day_start` | "HH:MM" string | Optional | The 24-hour local time that this Time Span starts to apply (_inclusive_, see [Range Boundaries](/general-information.md#range-boundaries)), in the local timezone. If unspecified, this Time Span starts at midnight. | | `time_of_day_end` | "HH:MM" string | Optional | The 24-hour local time that this Time Span stops applying (_exclusive_, see [Range Boundaries](/general-information.md#range-boundaries)), in the local timezone. This is not inclusive, so for instance if `time_of_day_end` is `"17:00"`, this Time Span goes up to 5PM but does not include it. If unspecified, this Time Span ends at midnight. | | `designated_period` | String | Optional | A string representing an arbitrarily-named, externally-defined period of time. Any values MAY be specified but the following known values SHOULD be used when possible: | -| `designated_period_except` | Boolean | Optional | If specified and `true`, all fields in this Time Span are describing a period in which the assocated rule does not apply. (e.g., if `designated_period` is `snow emergency` and `designated_period_except` is `true`, the rule does not apply on snow days. If `days_of_week` is `['sun']`, the rule does not apply on Sundays.) | +| `designated_period_except` | Boolean | Optional | If specified and `true`, all fields in this Time Span are describing a period in which the assocated rule does not apply. (e.g., if `designated_period` is `snow emergency` and `designated_period_except` is `true`, the rule does not apply on snow days. If `days_of_week` is `['sun']`, the rule does not apply on Sundays.) This field takes precidence over `designated_period` when present. | **Note about `start_date` and `end_date` in _Time Span_:** these fields are optional but useful for defining policies that will be used once and won't be reused later, like around a specific, temporary event. If used, they are only applicable in any connected Curb Zone during their overlapping time frames.