Skip to main content

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:

SubtypeDescription% Of Total Segment Length in Overture
roadRoads and footpaths~97%
railAny transit system in which vehicles ride on metal rails~3%
waterShipping 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