-
Notifications
You must be signed in to change notification settings - Fork 62
2021 09 23 Specification Update and Specification Extension Subgroups
September 23, 2021, 1:00-2:00pm EDT
Review and discussed proposed changes to how road events are represented in the specification (Issue #203, PR #209). Review and discuss other pull requests.
Sign-in and Welcome PR #209 – RoadEvent refactor Other PR Updates & Discussion Outstanding Issues for Next Cycle Wrap-Up and Next Steps
Data Modeling Best Practices: First Normal Form – Don’t comingle objects/features
Efficiency: Exchange only the data needed
Scalability
- Normalized data is easier to scale
- Enables other types of road events (e.g. restrictions)
- Compartmentalization eases maintenance
- Describe the core details that are shared by all specific types of road events (such as work zones and detours) by a RoadEventCoreDetails object, which is used by all types of road events. These details were extracted from the all-encompassing RoadEvent.
- Define a WorkZoneRoadEvent object for work zone road events.
- Define a DetourRoadEvent object for detour road events.
- Modify the RoadEventFeature to allow the ‘properties’ property to be either the WorkZoneRoadEvent or DetourRoadEvent object.
- Remove the all-encompassing RoadEvent.
- Move the ‘location_method’ property from the RoadEventDataSource object to the WorkZoneRoadEvent object.
New work-zone example
"id": "71234",
"type": "Feature",
"properties": {
“core_details”: {
"data_source_id": "1",
"event_type": "work-zone",
"road_names": [
"I-80, I-35"
],
"direction": "northbound",
"description": "Single direction work zone",
"creation_date": "2009-12-31T18:01:01Z",
"update_date": "2009-12-31T18:01:01Z"
},
"beginning_milepost": 125.2,
"ending_milepost": 126.3,
"beginning_accuracy": "estimated",
"ending_accuracy": "estimated",
"start_date": "2010-01-01T01:00:00Z",
"end_date": "2010-01-02T01:00:00Z",
"start_date_accuracy": "estimated",
"end_date_accuracy": "estimated",
"event_status": "active",
"vehicle_impact": "some-lanes-closed",
"reduced_speed_limit": 55,
}
New detour example
"id": “67890-detour2",
"type": "Feature",
"properties": {
“core_details”: {
"data_source_id": "1",
"event_type": “detour",
"relationship": {
“parents": [
"67890“
],
“first”:[
"67890-detour1“
],
“next”:[
"67890-detour3"
]
},
"road_names": [
“US 69"
],
"direction": "northbound",
"description": "Detour for road event 67890, second segment.",
"creation_date": "2009-12-15T14:01:01Z",
"update_date": "2010-01-01T01:03:01Z"
},
"beginning_cross_street": "NE 126th Avenue",
"ending_cross_street": "IA 210",
"beginning_accuracy": "estimated",
"ending_accuracy": "estimated",
"start_date": "2010-01-01T01:03:01Z",
"end_date": "2010-06-30T01:00:00Z",
"start_date_accuracy": "verified",
"end_date_accuracy": "estimated",
"event_status": "active",
}
Vehicle_impact property is NOT an element of a Detour event, was previously a required property of a RoadEvent
Craig Moore: What was the logic on not moving more fields over? Cross street, milepost, accuracies related to those locations
- Derald: I thought about this from a restrictions event - if we had to describe a road event that went beneath a bridge that had a low clearance, we could segment only a bit of the road before and after the bridge. Core details are minimum content necessary to locate and identify a road. Geometry is in the feature event, but other road attributes such as the road name and direction of travel were the main relevant properties needed to describe all road events. Beginning/ending accuracy are specific to a work zone that begins and ends, not how linear events are described in GIS world.
- Craig: Spatially if a feature doesn't align with the beginning and ending cross streets (could be a bigger extent than the feature itself), but is that actually a problem for data consumers to process? Compared to the geospatial feature that it's describing? That may need to be clarified in the specification.
- Derald: It was in my mind that segmentation begin and end at intersections and mileposts, but that's not how the specification actually works. Segmentation occurs whenever a property changes, not just at intersections - beginning and ending cross streets might not be relevant to all event types.
- Craig: The overall concept is great, but we can dig deeper into which fields need to move across. Start/end date?
- Derald: We didn't add start/end dates because restrictions are often persistent, so they're linear event but not a temporal event. Start/end date don't help describe a restriction or other persistent features
- Craig: Consumers need a required field and need to know when to act on it (will be present in every record). I agree now about cross street and milepost
Eric: As a consumer, the most important component is the geometry itself. Cross streets are important context, but we only use it for correcting
Jacob: This comes to do with the definition of cross streets, which may not exactly match the geometry of the road event, but be close by. In that case, it could go in the core with a clearer description of "nearest" or "last" cross street, but might not be defined as such right now
Derald: Anytime a name changes, you have to segment the road with a name and direction. If we ever get to the point of publishing named roads, you wouldn't need those start/end dates for persistent characteristics.
- Craig: If we're talking the core details of an event, then there should be dates. Talking only about roads this makes sense, nothing about the temporal definition.
- Jacob: We decided that the core details are the core details of a road event. To represent just a road we would want another event
- Craig: If that's the case, adding the temporal piece is important.
- Jacob: For a restriction event, start/end date of a low clearance isn't defined. You could make one, but they don't have defined end dates.
- Craig: That goes back to whether we want to focus on the road, or changes to the road. That's a bigger discussion. Describing my jurisdiction's road network is a big deal
- Derald: We've discussed this as maximizing the extensibility of the specification. This specification provides that and enables that publication. Are we crossing the line between temporal and linear events? Yes, I think it's good because we draw more folks into the spec. I don't think this is used to describe the network at its core, but that model could be influenced by what we do here.
- Craig: That brings us into a fundamental clash with other folks describing road networks. Bringing in people is good, but we need to be careful where we draw the line.
Ross: this will be useless if we go beyond the work zone/temporary events. This will never get done. We need to be a lot stronger about what our mission is, because we're already into scope creep and we're only in our 3rd year.
- Derald: If we can leverage the specification to improve safety or enhance efficient travel, there's social benefit there. We need to be concerned about scope creep, but that's why we're having these discussions.
Faisal: This becomes a resources issue for us, requiring additional info. I'm worried that it will scare people out of the effort.
- Craig: Opening up to a permanent restriction moves the spec toward describing the road network in its default state. Start/end date as a required field pre-empts how far the spec can go.
- Craig: Another of other events fit into that temporal box (like a marathon). We assume the AV is loaded with the default state of the roadway, and this represents changes to the default state.
- Faisal: 511 already has roadway network information there.
Ross: There's nothing preventing creating a restrictions data exchange that don't need to be in here or vice versa. The value here is for work zone data,
Jacob: I'm in support of adding start/end date to the core details and keeping WZDx focused on temporary road events
- Ross: Being able to define an end date is a great way to define temporary ness
Nate: Do people have thoughts on how additional events could be integrated in parallel?
- Derald: There's been a lot of good work, and if we can leverage it to save lives in other places, then we should take that opportunity. If we can look at the work zone spec, tweak it to make things safer/better, then why stop that?
- Craig: The core details open up the extensibility. You could make it work for New York's case, but then you bump into other people's space and muddies our mission/vision
Nate: Going back to GTFS, there are many extensions that have emerged that maybe don't muddy GTFS. Allow sharing other information that's relevant to transit but isn't the schedule, arrival times. I'm receptive to Derald's point. If there's a way to share corollary things without muddying how we share core things, then we should try.
- Dave: I liked the core elements that are required to make a work zone data event. That's kinda where we started
- Craig: It boxes us to not describe everything on the road.
- Derald: It does inhibit other people using the spec.
- Presented at July subgroup meeting using MPH
- Following more discussion among co-chairs, change units to km/h instead of MPH to follow other standards and industry usage
- Rename reduced_speed_limit property to reduced_speed_limit_kph
- Still clarifies that reduced_speed_limit_kph only needs to be supplied if speed limit within road event is lower than the posted speed limit.
The following changes were made to the LaneType enumerated type:
- Rename lane to general
- Remove right-turning-lane and left-turning-lane
- Remove right-exit-lane and left-exit-lane
- Add exit-lane
- Remove right-exit-ramp and left-exit-ramp
- Add exit-ramp
- Remove right-entrance-ramp and left-exit-ramp
- Add entrance-ramp
- Add entrance-lane
- Add parking
- Add median
Implemented as previously discussed
- Rename LaneRestrictionUnit enumerated type to UnitOfMeasurement, which allows more general use
- Rename the RoadRestriction enumerated type to RestrictionType which is more semantic
- Rename the LaneRestriction object to Restriction which allows more general use
- Remove the lane_restriction_ prefix from the properties of the Restriction object
- Change “units” (on Restriction object) to be singular “unit”
- Change the restrictions array on the RoadEvent object to be a list of the Restriction object rather than a list of the RestrictionType (the key change from this PR: road events can now have restrictions with a value and unit)
After previous meeting determined GPS device should be required for verification
Changes include:
- Depreciate location_verify_method
- Redefine SpatialVerification enumeration to clarify verified should use a GPS enabled device
Other discussion
- Change begin/end accuracy to Boolean
- Verification is still missing a frequency (i.e. a manually collected GPS reading vs continuous reporting) but may be addressed with a future field
- #125 – Mobile work zones
- #184 – Require
update_date
on theRoadEvent
object - Both discussed at July subgroup meeting
- #189 – Remove unneeded values from
EventStatus
enumerated type - #194 – Clarify geometry requirements
- #197 – Refactor relationship object
- #201 – Replace beginning_accuracy and ending_accuracy with positional_accuracy
- #207 – Use UUIDs for feature IDs
Action items before next meeting:
- Participate in discussion on pull requests on GitHub and add comments, suggested edits, and any other feedback.
- Join the Work Zone Data Working Group meeting on November 2nd, 12:00-2:30pm EDT
- Email [email protected] if you have not received an invite.
Name | Organization |
---|---|
Dave Craig* | General Motors |
Eric Kolb** | |
Jingwei Xu* | HERE Technologies |
Jacob Brady* | IBI Group |
Skylar Knickerbocker* | Iowa State University |
Derald Dudley** | USDOT Bureau of Transportation Statistics |
Adam Carreon | Arizona DOT |
Marty Lauber | Arizona DOT |
Mahsa Ettefagh | Booz Allen Hamilton |
Jenny Ghasy | |
Jeremy Agulnek | HAAS Alert |
Pete Krikelis | Hill and Smith |
James Cullins | Hillsborough County |
William Twaite | Hillsborough County |
Michelle Boucher | IBI Group |
Ross Sheckler | iCone |
Sinclair Stolle | Iowa DOT |
Brandon Saylor | Kentucky Transportation Cabinet |
Alexander Lemka | Maricopa County DOT |
Faisal Saleem | Maricopa County DOT |
Neil Boudreau | Massachusetts DOT |
Chris Brookes | Michigan DOT |
Meredith Nelson | Michigan DOT |
Timothy Fiato | New York State DOT |
Chris Parker | Pennsylvania Turnpike |
Devorah Henderson | Qlynx |
Eneliko Mulokozi | Regional Transportation Commission of Southern Nevada |
John Copple | Sanborn Map Company |
Craig Moore | Seattle DOT |
Jianming Ma | Texas DOT |
Rob Hoyler | TomTom |
Jaime Hutton | TomTom |
Yaw Adu-Gyamfi | University of Missouri |
Yang Chang | University of Wisconsin-Madison |
Jeff Purdy | USDOT Federal Highway Administration |
Hadrian Merced | USDOT Volpe Center |
Mark Mockett | USDOT Volpe Center |
Chuck Felice | Utah DOT |
Pier Castonguay | Ver-Mac |
David Rush | Virginia DOT |
Tom Stidham | Washington State DOT |
Erin Schwark | Wisconsin DOT |
Gopal Raju | |
Tom Shlarman |
* Co-chair of Specification Update Subgroup
** Co-chair of Specification Extension Subgroup
Wiki
Work Zone Data Working Group [Archive]
- 2020-08-05: WZDWG semi-annual meeting: minutes, recording
- 2020-02-05: WZDWG semi-annual meeting: minutes, recording
- 2019-12-12: WZDWG semi-annual meeting: minutes, recording
- 2019-07-25: WZDWG kick-off meeting: minutes, recording
Specification Update Subgroup [Archive]
Technical Assistance Subgroup [Archive]
- 2021-02-09: WZDx Technical Assistance Meeting #2: minutes, recording
- 2020-11-19: WZDx Technical Assistance Subgroup Meeting #1 (kickoff): minutes, recording
- 2020-04-06: Technical Assistance Subgroup meeting #1: minutes, recording
Technical Assistance Subgroup Archive
Worker Presence Subgroup