Key:level

level
Description
Zero-based floor number of a feature (where 0 is the ground level and -1 is the basement). 
Group: Buildings
Used on these elements
Useful combination
Status: de facto

The level=* key indicates the floor level where a feature (such as an amenity or shop) is located in a building. See Simple Indoor Tagging for further information.

Use level:ref=* to specify the marked floor number for multistory buildings and structures (room numbering, elevator buttons, parkade levels) where this differs from the level value.

Highways (and other ways) can be also tagged with level=* when they are essentially bound to a floor of a building complex (such as multilevel parking buildings, railway stations or airports).

For typical street, waterway or railway crossings over bridges or tunnels, layer=* should be used instead. Roads or other ways passing through buildings should be marked with tunnel=building_passage; they should be only marked with level if there is a strong relation to the corresponding level of the building.

Values

The value of the level=* is numerical and used to denote the vertical order of the floors. Usually, level=0 is the ground floor, level=1 the floor above it and basement floors start with level=-1. However, if a building sits at an uneven elevation, the numbers begin at the lowest exposed floor for consistency with the Simple 3D Buildings specification's building:levels=* key. For example, a shop located in a shopping mall's fully underground basement would be tagged level=-1, whereas an entrance to a house's walk-out basement would be tagged level=0.

A building may skip certain level numbers, such as floor 13 in Western countries or floors 4 and 14 in Chinese-speaking countries. Tag the surrounding building with, e.g., non_existent_levels=13 to prevent data consumers from miscounting features on floors above the skipped level.

Ground floor number

This key's zero-based numbering scheme is consistent with the floor numbering system used in many countries including the United Kingdom. However, it differs from the one-based numbering scheme used in many other countries for both wayfinding and addressing. There are also countries where both systems are in everyday use. Moreover, idiosyncratic numbering systems are used in individual buildings throughout the world, especially in large, complex buildings such as shopping malls, hospitals, and airports.

In general, the level=* key ignores these distinctions in favor of the zero-based numbering scheme, because the level=* key was originally envisioned as a machine-readable key for 3D building rendering. Data consumers that support the Simple Indoor Tagging require values to be numeric and consecutive, even for basements and mezzanines that in reality are known by unpredictable mnemonics such as "B", "B1", "G", "M", and "2M".

level=* values are largely zero-based even in many regions where the one-based numbering system is prevalent in everyday life. However, mappers overwhelmingly skip 0 in Kazakhstan, Korea, and Mongolia, beyond any rate that could be explained by mappers treating 0 as an implicit default value:

level=* usage in one-based countries as of March 2022
CountryHigh occurrence indicates zero-based usageHigh occurrence indicates one-based usage
00 (%)-1-1 (%)11 (%)BB (%)GG (%)
Belarus 1,69525.48%1,99630.01%1,59824.02%00.00%00.00%
Canada 9,80146.69%2,0249.64%5,82727.76%00.00%00.00%
Chile 15218.29%465.54%31037.30%00.00%00.00%
China 3,61825.06%1,68011.64%3,88026.87%00.00%30.00%
Colombia 26310.70%1,56863.79%30112.25%00.00%00.00%
Ecuador 18628.88%456.99%22635.09%00.00%00.00%
Finland 3,23234.10%7427.83%3,14933.23%00.00%00.00%
Japan 21,43741.76%3,8967.59%11,43022.27%00.00%00.00%
Kazakhstan 448.71%316.14%33766.73%00.00%00.00%
Moldova 13144.71%72.39%5117.41%00.00%00.00%
Mongolia 126.59%21.10%7139.01%00.00%00.00%
North Korea 21.43%2215.71%9567.86%00.00%00.00%
Norway 1,98830.64%96314.84%1,58124.36%00.00%00.00%
Peru 75630.14%1254.98%96838.60%00.00%00.00%
Russia 9,08424.89%5,45514.95%10,61129.08%10.00%00.00%
South Korea 2464.88%3667.26%2,49749.52%00.00%00.00%
Taiwan 1,08118.64%67811.69%1,85431.97%00.00%00.00%
Ukraine 3,46844.36%7499.58%2,13127.26%00.00%00.00%
United States 41,53740.65%7,4327.27%26,59826.03%40.00%250.00%

Regardless of each country's local tagging convention, inexperienced mappers unaware of the convention may occasionally tag level=* based on the one-based system.[1] Some one-based tagging may have also been introduced because of a previous version of this article. Data consumers may be able to account for some discrepancies in floor numbering. For example, if some features inside a building have a level=* value greater than the building's building:levels=* value and none of the features in the building is tagged level=0, then a data consumer could decrement all the level=* values by one.

Level designations

Main article: Key:level:ref
Main article: Key:addr:floor

When a building uses non-numeric or otherwise non-standard floor designations, tag the individual features on a floor with level:ref=*, ideally in addition to level=* to prevent mishandling by data consumers. For example, the Siam Paragon mall in Bangkok consists of the following floors: B, G, M, 1, 2, 3, 4, 4A, and 5.[2]. A shop on level 4A can then be tagged with level:ref=4A.

Tagging shops exclusively with level:ref=* can be problematic because a data consumer cannot reliably determine the relative vertical order of each floor in the building. To consolidate this information, the Simple Indoor Tagging scheme suggests creating an outline for each level, tagged with indoor=level, adding both level=* and level:ref=* to it. This also works the other way round - if only level=* is defined on the individual shops.

There is also an ongoing discussion on usage of fractional values, e.g. level=0.5 or level=1.5 for mezzanine floors and staircases. See the proposals for more examples.

Multiple values

Level range: level=-1;0 room=yes is a room which goes over (spans) two levels. It's the same room that is accessible on both levels. Often there are doors to each one. If a room is repeated on multiple levels, (it's a different room on another level but has identical dimensions and position in the building,) draw a separate element for each room or use repeat_on=*.

Similarly a staircase could be tagged with level=-1;0 meaning that it connects those two levels.

Use a minus sign to specify a range of positive numbers with no missing values. e.g. The elevator of a 32 storey highrise with two basement levels: level=-2;-1; 0-31 This shows connectivity to multiple levels for indoor navigation.

Examples

A typical elevator in the United States (level=-2;-1;0;0.5;1-13), (level:ref=B2;B;1;M;2-14)
Button labellevel=*level:ref=*
14 1314
If the building skips 13,
add non_existent_levels=12 to the building.
12 1112
3 23
2 12
M 0.5M
☆1 01
B -1B
B2 -2B2

See also

  • layer=* - Used to mark the vertical relationship between two crossing or overlapping features, e.g. bridges and tunnels at highway or railway junctions.
  • building:levels=* - The number of above ground levels in a building (if there's only the ground level, this is 1), not including the levels in the roof (use roof:levels to state the number of roof levels).
  • addr:floor=* - The floor an apartment/flat is located.
  • repeat_on=* - For features that repeat on several levels / floors where similar copies of a feature can be found at the same position.
  • tunnel=building_passage - A passage through a building, normally as an archway or overhang.
  • Indoor Mapping
  • level:ref=* - For the marked floor number where this differs from the level value.

References

This article is issued from Openstreetmap. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.