Counterintuitive keys and values

From OpenStreetMap Wiki
(Redirected from Counterintuitive key names)
Jump to navigation Jump to search

In some cases in OSM tagging, the literal meaning of the word chosen for a key (or value) mismatches the intention of the tag.

Some of these tags are highly used, and highly used OSM tags are deprecated extremely rarely for multiple reasons. And narrowing definition of what widely used tag means is basically impossible.

This page provides examples of commonly used keys which may be counterintuitive when used for certain features.


Meaning more generic than expected from key name

Typically natural

A typical beach, hill, wetland, scree, bare rock, dune is of a natural origin. As result tags used to describe them often use natural=*. But for example some beaches are 100% man made. There is no separate main tag used for them, but still natural=beach.

Makes more sense in the context of a specific tagging scheme

  • floor:material=* - is not for material of a floor, it refers to material of ceilings
  • building:material=* - refers to material of facade, not material of building

Other examples

  • highway=path - Usually the English word "highway" refers to public roads wide enough for 2-track vehicles (e.g. cars), but this tag is only for paths which are too narrow for 2-track vehicles.
  • highway=track - Used for certain types of minor or rough roads, including ones without visible tire tracks or even ones that are paved.
  • sport=cricket_nets - a special case of a cricket pitch surrounded by nets in which batting is practised, not a separate sport
  • passenger_lines=* "Despite the "passenger" in the name all kinds of tracks connecting the same railway stations or junction should be counted with no regard to the train services running on it."
  • amenity=prep_school – as in test prep, not a college prep or preparatory school as is commonly understood by this term in American and British English
  • retreat=* - is for refuges, not retreat centres
  • highway=emergency_access_point - does not have to be associated with a highway and doesn't have anything to do with allowing access for emergency vehicles to a particular property (UK English meaning of emergency access point).

More clear in UK

Early usage of tags was developed within the UK and both tag names & initial meanings tended to reflect both widespread UK usage and implicit knowledge. For some particular keys and tags this has been a source of confusion for non-UK mappers ever since. Apart from examples listed below, a few other tags which have been re-interpreted as a result of the initial meaning being unfamiliar, include (with likely initial meaning): landuse=forest – a conifer plantation; landuse=recreation_ground – a grassy area devoted to sports; landuse=farm – agricultural land; highway=footway – any footway, path or trail only intended for pedestrians. Of these landuse=farm caused so much confusion a concerted effort was made to replace the usage with two unambiguous tags.

Multiple meanings

While word "highway" is typically understood as a "main road, especially multi-lane one"[1] it has also more general meaning "any public or private road or other public way on land".[2]

Unclassified highways

Distinct from highway=road, the most unspecific tag for a road, highway=unclassified may appear to have the same purpose. The meaning of highway=unclassified is made clear from knowing roads in the UK are sorted into and referred to by classes, with those otherwise without class being unclassified.[3][4]

Tag changed meaning

  • historic=wayside_shrine (on a modern one) - used for any wayside religious shrine, whether or not it is "historic".
  • historic=wayside_cross (on a modern one) - sometimes used for any wayside cross, whether or not it is "historic". There is a potential alternative in form of man_made=cross.

historic=wayside_shrine, historic=wayside_cross were intended for tagging old shrines and old crosses. But introducing them was done without proposing a tagging scheme for modern crosses and modern shrines. As result tags changed meaning and are used for any shrine and any cross, including those that are neither historic nor wayside.

For crosses there is also man_made=cross but with lower usage and support.

For shrines, no-one proposed new tag for shrines that are not qualifying for amenity=place_of_worship and are modern rather than historic.

While this may seem justified to people, who understand "historic" as signifying something, that has been, but is no longer, or something, that has been existing for a very long time, it is not difficult to conceive of wayside_crosses or wayside_shrines of newer date as continuing a tradition, that by itself is old, a.k.a. historic, and that might be just enough, to merit the key historic.

crossing=uncontrolled is for controlled crossings that aren't controlled using pedestrian signals. Uncontrolled crossings are tagged crossing=unmarked, but some uncontrolled crossings have been tagged crossing=uncontrolled due to real-world terminology.

Special case in more generic scheme

entrance=* seems a fitting tag for building entrances. Sadly, in some cases it ends with confusing results - such as entrance=exit.

landuse key used where it is not about land use

  • landuse=logging - it is also not used for all land used for logging, but only for recently logged forest
  • landuse=reservoir - Is used to mark water area of reservoir and does not include surrounding land used by reservoir that may include embankments, pump stations and other not flooded areas
  • landuse=flowerbed - land use term typically is used to refer to areas much larger than flowerbed. Nevertheless this tag become standard one for this feature.


landuse=grass - Used for areas of grass, especially mown/managed grass ("lawns"), which may be within a different "landuse" such as a railway right-of-way, a residential area, a park, etc.

The tag landuse=grass was proposed in January 2009 as "Area of grass, typically within a park, forest or" "Within publicly accessible land there are areas set aside as grassy areas. They can be mown regularly by the local council or kept as grass by rabbits or deer. These should be tagged as landuse=grass and rendered as green areas." This proposal was not developed further, but many mappers started using the tag for lawns and other mown or managed grassy areas, for which there was no more specific tag, and sometimes for any area of grass: for example, in the Netherlands many areas of meadow and pasture were imported as landuse=grass.


landuse=forest - Commonly used for any area of trees, and does not imply a particular landuse.

Forest tagging is tricky, see Forest page for more detail. But it is commonly used to mark tree-covered areas, not for tagging areas with forestry land use.

Overly generic tag

castle_type=manor - manors are not castles at all, but someone created tagging scheme that tried to fit everything as subtag of historic=castle

healthcare:speciality=homeopathy - homeopathy is a pseudomedicine, not stronger than placebo effect and without plausible way to work. It is also tagged as a healthcare. Note that in many countries homeopathy is often actually treated as healthcare and some people even believe in this. The same applies to other alternative "medical" methods

Ignored existing conflicting tagging scheme

Whoever invented name:signed=*, name:etymology=*, name:etymology:wikidata=*, name:etymology:wikipedia=*, name:left=*, name:right=*, and name:pronunciation=* ignored that tags of name:something construction are for language codes (such as name:pl=*), as result this tag will require special handling in places supporting language keys in a generic way. (See this guide to subkey ordering for more exceptions.)

gem is the ISO 639 code for all Germanic languages, but name:gem=* is specifically for the name in the Transylvanian Saxon dialect of German.


TODO: research and describe origin of use of landuse=grass, natural=water for man made ones.

natural=water for man made water bodies comes from the original proposal Proposed features/Water details.


Reasons for this differ. In general, the reason is that OpenStreetMap tags are the result of a long-term grassroots development of independent proposals and employing the freedom of tagging, without centralised planning. In some cases issues were not predicted or expected by people who started using given tag.


In many cases the risk of confusion is a known problem, but solving it would create an even bigger confusion. Partially because new scheme would fail in other case, partially because mappers would remember old scheme and many would continue to use it.

The OpenStreetMap community is also in general more opposed to automatic edits than some other similar communities - see Automated Edits code of conduct for requirements that must be passed by an automatic edit to be considered as acceptable.

Proposal process may be used to deprecate tags, including tags that are often used but it is typically meet with opposition.

For example Proposed features/landcover was promoted by some people to deprecate many landuse=* and natural=* tags to a different key, but this proposal was controversial and without clear support. As result landuse=* and natural=* all continue to be used and landcover=* is sometimes also used to express the same.

See also