curblr / curblr-spec

An open, linear-referenced data standard for curb regulations
https://curblr.org/
Other
72 stars 15 forks source link

Add field for status? #16

Closed emilyeros closed 4 years ago

emilyeros commented 4 years ago

Apis Tech suggested that it may be useful to include an optional field for status (potential values: active, planned, proposed). This is useful internally for tracking requests as they move from planning into public works. It is also useful externally for showing where potential changes would occur (e.g. future carsharing or food truck permit locations).

(Note: this is similar to how several cities (including SF) share their road centerlines - you can see proposed streets under the SF Bay, which could be infill in the future)

emilyeros commented 4 years ago

For feedback: does this need an additional effectiveDateFrom and effectiveDateTo property as an optional field for planned/proposed curb regulations?

Example: "properties": { "location": { "shstRefId": "324af8ba918d9a2921b1fe6f9723d729", "shstLocationStart": 51, "shstLocationEnd": 55, "sideOfStreet": "right", "objectId": "87580", "derivedFrom": ["sign_452", "sign_204"], "marker": "sign", "streetName": "92nd St", "status": { "stage": "planned", "effectiveDates": [ "from": "2020-02-20" ] } }

Field name Importance Type Description Example
status Optional enum (string) Values: active, planned, proposed Indicates whether this curb regulation currently exists (active), is planned or scheduled to take place in the future (planned), or is proposed for consideration (proposed). If not specified, a regulation will be assumed to be active; it is not necessary to include this location property for active regulations, though there may be instances where users wish to specify status for extra clarity. planned
status.effectiveDates Optional array For curb regulations that are planned or proposed, this property can be used to indicate when the regulation will/would be in place. This property describes a specific date range (or multiple date ranges) that define a fixed span of time or an annual period
status.effectiveDates.from string (MM-DD or YYYY-MM-DD) The beginning date of a time period. This is either a full date or a month and day that will define the timespan on an annual basis 2018-08-02 or 04-01
status.effectiveDates.to string (MMDD or YYYY-MM-DD) The ending date of a time period. This is either a full date or a month and day that will define the timespan on an annual basis 2018-08-05 or 11-30
emilyeros commented 4 years ago

Addressed in https://github.com/sharedstreets/curblr/pull/21