What it is

Community-mapped indoor floor plans of real public buildings — shopping malls, libraries, museums, market halls, railway stations and airports — published in OpenStreetMap under the Simple Indoor Tagging (SIT) schema and queried live via the Overpass API. This is the project's ungated, free public-space geometry source: unlike every other floorplan corpus we hold (residential resplan / zind / structured3d / 3d-front, office s3dis, gated CAD archcad-400k), OSM Indoor covers the exact venue types — malls, museums, libraries, markets, transit — with no registration and no subscription.

Verified specs (Overpass, 2026-07-14)

Probed on Les Champs Libres, Rennes (public library + science museum), a canonical SIT showcase, bbox (48.104, -1.680, 48.106, -1.674):

  • Roomsway["indoor"~"room|area|corridor"], closed polygons with a level tag; 24 usable cells across 4 levels (-2, 0, 0.5, 1), one hall ~341 m². name / room (e.g. toilets, corridor, named halls) present.
  • Doorsnode["door"] / node["entrance"]; 80 in that bbox (54 snapped onto the nearest wall as navigable openings).
  • Walls — some venues tag way["indoor"="wall"] explicitly; we derive walls geometrically (shared edges between adjacent rooms + per-room perimeter) as in the other converters, so explicit walls aren't required.
  • Windowsrarely mapped indoors; window count is usually 0. When present they load as material="glass" boundaries.
  • Heights — from the building's height / building:levels tags when present, else a CEILING_HEIGHT_M default (3.5 m public-building); level=0.5 mezzanines are ranked into contiguous floor_levels and stacked in 3D.
  • CRS — WGS84 lat/lon, projected to local metres (equirectangular about the bbox centre) before load (source_unit="m").

Acquisition & storage

Status: available — fetched live, not S3-mirrored. No download step: the converter notebooks/floorplans/converters/07_osm_indoor.ipynb queries Overpass for a venue bbox, projects to metres, converts rooms→cells + walls + doors + (glass) windows, and loads into the IP-040 PostGIS schema via gis.loader.load_site (dry-run unless APPLY=True, per-level heights). Verified end-to-end against live OSM 2026-07-14 (24 cells / 4 levels / 53 walls / 54 doors, clean validation).

Optional S3 snapshot (per the datasets contract, for reproducibility): cache the raw Overpass JSON to s3://monad-knowledge/datasets/osm-indoor/<slug>.json plus a _manifest.json so a venue's geometry is pinned even if the live OSM data changes. Not required for one-off imports.

Licence caveat: ODbL is attribution + share-alike — any published map/figure derived from this geometry must credit "© OpenStreetMap contributors".

Why it matters here

  • Closes the public-space gap with real venues. The placement-oracle (c-placement-oracle) and all coverage×footfall crowd work run on residential + one office set; OSM supplies real malls / stations / libraries / museums / markets — the venue diversity the AP-placement and CSI-counting claims need to generalise beyond flats and offices.
  • Multi-level + 3D-ready. SIT level tags give true multi-floor structure; heights extrude to POLYHEDRALSURFACE Z prisms for Sionna CSI ray-tracing and 3D jupedsim.
  • Furnishable & simulatable. Once in PostGIS the venues feed the gis/furnish grammar placer → jupedsim crowds → Sionna CSI like every other corpus.
  • Complements the gated real public-building CAD (archcad-400k) and the real-scan calibration bundle (indoor-scene-scans) with free, named, ready-to-import public venues.