This page describes tags for basic 3D attributes of buildings. For proposition of advanced 3D tagging see F3DB.

The following tagging methods are results of the 2nd 3D Workshop Garching, where most 3D developers agreed on supporting a unified subset of tags in their programs. Basically we describe the volume of a building using two types of areas. Building outlines for the most general area of a complex building and building parts, to describe esp. parts with different height or other attributes.

Contents

Building outline

Two building:part areas within a building area

The building outline is a closed way or multipolygon tagged with building=*. It represents the area of land covered by the union of all parts of the building. The outline is also referred to as the building footprint.

Building attributes (e.g., address, name, overall height, operator, etc.) must be tagged on the building outline.

The building outline provides backward compatibility for 2-D rendering software, such as Mapnik, and other data consumers not interested in 3D modelling. 2-D renderers ignore the building:part=* tags described in the following sections.

Building parts

Buildings with differing physical characteristics (e.g. heights) are modeled with the building:part=* tag. The value of the building:part=* tag is usually yes, but it can be any building=* value.

Cover the whole outline with building:part=* areas, tagged with their respective height and other attributes. These areas may overlap each other or may be disjunct, depending on the building. (But while 2D footprints can and often need to overlap, avoid overlapping 3D volumes – especially if the volumes have common faces.) This method uses parts to cover the building outline without using relations.

As above, but use building:part=yes only for those parts which differ from the overall building. This may not be supported by all renderers.

Building relation

A relation tagged with type=building groups building outline and all building parts together. It is highly recommended to use the relation if there is at least one building part. Otherwise an application has to fall back to search for building parts only within the area of the building outline. See also ProposedRoofLines#Building_Relation for proposals of further details.

Tags for buildings outlines and parts

The following tags can be used on both building outlines and building parts.

Note that when min_height is used, height is still defined as the distance from the ground to the top of the structure. So "bridge" with 3 meters height, where bottom part of the bridge is positioned 10 meters above ground level will have min_height=10, height=13.

Roof

You can characterize the building roof using a catalogue of well known roof types. Additional roof shapes may be introduced later (S3DB_Proposals), including advanced approaches for manual modelling (e.g., ProposedRoofLines or parts of OSM-4D/Roof_table).