OSM
Generated by scripts/gen-format-pages.py from docs/data/format-metadata/, FILE_FORMATS.csv and docs/formats-master.csv. Do not edit by hand: change the source, then run the script.
OpenStreetMap XML / OpenStudio Model Preview.
At a glance
| Purpose | Two unrelated formats share this extension: an OpenStudio building energy model and OpenStreetMap XML map data. |
| Extensions | .osm |
| Poka parser | poka-osm |
| Viewer | poka-tree-viewer |
| Depth tier | Parser with a shared viewer (see Depth tiers) |
| Breadth tier | B3 Core (see Breadth tiers) |
How much Poka reads
B3 Core. Only the main content type or types are decoded (for example geometry but not materials, layers or annotations, or only one version family). The list of gaps is substantial.
Confidence: high (the reviewer read the code and a test that proves the claim). Basis: Reviewed 2026-10-16: parsers/poka-osm/src/lib.rs, geometry.rs, main.rs, tests/samples.rs and geometry.rs; corpus OpenStudio models of versions 3.0, 3.1, 3.5, 3.6, 3.6.1 and 3.10 plus one small OpenStreetMap XML file (test.osm). One entry covers two unrelated formats: the OpenStudio Model branch is roughly B2 to B3, the OpenStreetMap XML branch is B4 (statistics only); the tier is a judgement across both.
What Poka does not read
- OpenStudio: every object is shown in a raw tree with generic Field N labels (no OpenStudio field names); only Handle and Name are labelled
- OpenStudio: constructions, materials, schedules, loads, HVAC loops and plant are shown as raw field lists, not interpreted
- OpenStudio: the 3D view draws only Surface, SubSurface, ShadingSurface and InteriorPartitionSurface; zones, spaces and HVAC are not drawn
- OpenStudio: the tree is capped at 6000 nodes, taking the most common classes first, so large models are cut off (flagged as truncated)
- OpenStreetMap XML: no map or geometry; only bounds, element counts, the 20 most common tag keys, way types and 50 named features; individual nodes, ways and relations (and their member references) are not shown
- OpenStreetMap XML: only the OSM XML form; .osm.pbf has its own crate
- OpenStreetMap XML: only one small sample in the corpus
Background
OpenStudio is a suite of free and open-source tools for building energy analysis around EnergyPlus, first released by the National Renewable Energy Laboratory (NREL) in April 2008. Its model file is IDF-like text whose classes all start with OS:. OpenStreetMap was started by Steve Coast in 2004. Its XML format has an osm root holding node, way and relation elements; the OpenStreetMap wiki documents it for API version 0.6. Poka decides by content: an XML document with an osm root is OpenStreetMap, text with OS: objects is OpenStudio. An OpenStudio model is shown as a tree of objects with its surfaces drawn in 3D; OpenStreetMap data as a tree of nodes, ways and relations.
Versions
| Version | Identifier | Poka | Note |
|---|---|---|---|
| OpenStudio Model | OS:Version |
Read | |
| OpenStreetMap XML 0.6 | <osm version="0.6"> |
Read |
Derived and related formats
- OpenStreetMap XML with a double extension (
.osm.xml): Alias of poka-osm in its plugin.json.
Libraries
Libraries Poka uses or has assessed for this format, with the status, licence and language the registry records.
- roxmltree (used; MIT OR Apache-2.0; Rust)
- osmpbf (PBF, not XML) (candidate; Apache-2.0; Rust; https://github.com/b-r-u/osmpbf)
- libosmium (candidate; BSL-1.0; C++; https://github.com/osmcode/libosmium)
- OpenStudio (candidate; BSD-style (LICENSE.md); C++; https://github.com/NatLabRockies/OpenStudio) — for OpenStudio .osm
Software that uses it
- OpenStudio (NREL)