Skip to main content

Infrastructure

The base theme's infrastructure feature type contains built-environment features derived from OpenStreetMap: bridges, airports, communication towers, power lines, piers, barriers — and the transit features described on this page. Infrastructure features can carry Point, LineString, Polygon, or MultiPolygon geometries, and are classified with a subtype and class derived from OSM tags.

Transit features

The places theme deliberately excludes intermediate waypoints — a place must be a destination, so bus stops, train platforms, and similar features are not places. They are not part of the transportation theme either, which contains only the road network itself (segments and connectors). Instead, they live here, in the infrastructure type under the transit subtype.

The transit subtype covers both transit stops and the parking and access features around them:

LOAD httpfs; -- noqa
-- Access the data on AWS in this example
SET s3_region='us-west-2';

-- Count transit features in the base theme's infrastructure type by class
SELECT
class,
count(*) AS feature_count
FROM read_parquet('s3://overturemaps-us-west-2/release/2026-07-22.0/theme=base/type=infrastructure/*')
WHERE subtype = 'transit'
GROUP BY class
ORDER BY feature_count DESC;

Results from the July 2026 release:

classfeature count
parking6,665,988
parking_space4,780,513
bus_stop4,097,754
stop_position1,378,033
bicycle_parking900,081
platform521,589
parking_entrance270,848
bicycle_rental92,944
railway_station85,319
bus_station65,734
motorcycle_parking45,633
ferry_terminal38,722
railway_halt34,528
subway_station18,101

To pull individual transit features for an area of interest, filter on subtype and class with a bounding box. This example uses central Rome:

LOAD httpfs; -- noqa
-- Access the data on AWS in this example
SET s3_region='us-west-2';

-- Pull individual transit features for an area of interest (central Rome).
-- The geometry column is a native geometry type in current releases;
-- LOAD spatial if you want to transform it (e.g. ST_AsGeoJSON(geometry)).
SELECT
id,
names.primary AS name,
class,
subtype,
geometry
FROM read_parquet('s3://overturemaps-us-west-2/release/2026-07-22.0/theme=base/type=infrastructure/*')
WHERE subtype = 'transit'
AND class IN ('bus_stop', 'bus_station', 'platform', 'stop_position',
'railway_station', 'railway_halt', 'ferry_terminal', 'subway_station')
AND bbox.xmin BETWEEN 12.46 AND 12.48
AND bbox.ymin BETWEEN 41.89 AND 41.91
LIMIT 100;

Note: the geometry column is already a native geometry type in current releases — no ST_GeomFromWKB conversion is needed. Load the DuckDB spatial extension if you want to transform it (for example, ST_AsGeoJSON(geometry)).

One entity, multiple themes

Some real-world things legitimately appear in more than one Overture theme, represented differently in each. Mountains are a good example. The places theme contains mountain features as destinations — provider-sourced records with names, categories (geographic_entities > land_feature > mountain), a confidence score, and a GERS-matched identity:

LOAD httpfs; -- noqa
-- Access the data on AWS in this example
SET s3_region='us-west-2';

-- Count places with a primary taxonomy category of 'mountain'.
-- On releases before December 2025, use categories.primary instead of taxonomy.primary.
SELECT count(*) AS places_mountains
FROM read_parquet('s3://overturemaps-us-west-2/release/2026-07-22.0/theme=places/type=place/*')
WHERE taxonomy.primary = 'mountain';
places_mountains
125,458

The base theme's land type contains mountains as physical features — OSM-derived geometries classified by landform:

LOAD httpfs; -- noqa
-- Access the data on AWS in this example
SET s3_region='us-west-2';

-- Count mountain landforms in the base theme's land type by class
SELECT
class,
count(*) AS base_land_features
FROM read_parquet('s3://overturemaps-us-west-2/release/2026-07-22.0/theme=base/type=land/*')
WHERE class IN ('peak', 'mountain_range', 'ridge', 'saddle', 'volcano')
GROUP BY class
ORDER BY base_land_features DESC;
classbase_land_features
peak1,085,246
ridge255,191
saddle78,321
mountain_range7,533
volcano5,853

Neither copy is redundant: use the places record when you need a named, categorized destination with a stable GERS ID; use the base land feature when you need the OSM-derived physical representation. The same pattern applies to other entities that are both destinations and physical or network features, so when a feature seems "missing" from one theme, it's worth checking whether another theme carries it by design. See the places guide for how the places theme defines what it includes.