Segments
In the Overture transportation theme, features with their type
property set to segment
represent paths repeatedly traversed by people or objects. For example, a segment may represent a major highway, an abandoned subway line, or a ferry route.
Because of their many possible uses, the segment type
is further organized by its subtype
, class
, and subclass
properties. Currently, the Overture transportation theme supports three segment subtypes:
Subtype | Description | % Of Total Segment Length in Overture |
---|---|---|
road | Roads and footpaths | ~97% |
rail | Any transit system in which vehicles ride on metal rails | ~3% |
water | Shipping lanes and ferry routes | <1% |
Although allowed segment classes and their interpretations differ across subtypes, segments share a number of common properties (for road subtype-specific property concepts, please refer to the road document):
Geometry
A segment's geometry approximates the physical centerline of the section of path it models. For roads, information regarding the width of this path is captured in the width_rules
road-specific property.
Granularity
Occasionally, a real-world feature admits different representations at different granularities. For example, a dual carriageway may be modeled as one segment, or two parallel segments.
Segments support modeling the transportation network at a range of granularities. For example, a single segment can represent:
- A bidirectional street including all of its sidewalks
- A Single sidewalk
- Two parallel subway tracks
- A one-way street
- One direction of a dual carriageway
Class
The class
property of a segment specifies its general purpose of use within its subtype. Unlike many segment properties, a segment's class
property does not support geometric scoping (linear referencing). Consequently, whenever a linear range of real-world road or rail makes a class transition (for example, between secondary and residential roads), the Overture transportation segmentation algorithm will generate a segment split.
Currently, only roads and railways have the class
property. Within these subtypes, every segment has a class. If the class
property is missing from a segment's source dataset, the class
for that segment will be given default value unknown
, indicating the class is undetermined and may be updated in a later release.
Like many aspects of Overture transportation schema, class
is heavily inspired by OpenStreetMap. In this
case, it is similar to, but not the same as, OSM's highway=*
and railway=*
tags.
Flags
A segment's flags (road_flags
for roads, rail_flags
for rails) are a set of named flag values indicating the presence or absence of simple physical characteristics.
For example, a road segment with road_flags = [is_link, is_under_construction]
is a link segment that is physically under construction.
Like many segment properties, the road_flags
/rail_flags
property supports geometric scoping. Consequently, the applicable flags may vary along different sub-ranges of a road segment's geometry.
Here's an example of how classes, subclasses, and flags are modeled in the Overture schema:
class: footway
subclass_rules:
- value: sidewalk
between: [0, 0.6]
- value: crosswalk
between: [0.6, 1.0]
road_flags:
- values: [is_bridge]
between: [0.2, 0.3]
- values: [is_under_construction]
between: [0.3, 0.5]
class: service
subclass_rules:
- value: driveway
between: [0, 0.5]
class: primary
subclass: link
subclass_rules:
- value: link