Proposal:Deprecating crossing ref
| Deprecating crossing ref | |
|---|---|
| Proposal status: | Draft (under way) |
| Proposed by: | Pietervdvn |
| Tagging: | crossing_ref=*
|
| Statistics: |
|
| Draft started: | 2026-01-03 |
Proposal
This proposal aims to deprecate crossing_ref=* except in the UK.
Instead, we should use crossing_markings=*, eventually combined with traffic_signals=*, lit=* and various other tags.
Existing elements should be retagged mechanically and editor software should warn for the usage of these tags (outside UK) The relevant wiki pages should be updated.
Rationale
Crossings over highways have become quite a mess over the years. This proposal is an attempt to partially solve this.
In the UK, there are several types of crossings with motorized traffic, each having specific, legally required elements such as the marking on the road, warning lights, traffic signals. In the early days of OSM (anno 2008), a UK-specific tagging scheme was derived: crossing_ref=* which has values named after animals (often called the crossing zoo). This tagging scheme got exported to other countries, but this gives rise to many problems:
crossing_ref=zebragot widely adopted worldwide as this marking type is broadly used. It is however always unclear what exactlycrossing_ref=zebraimplies - some contributors use this as synonym forcrossing:markings=zebrawhile others use this to imply the presence of other elements, such as traffic signs with the pedestrian crossing-icon. Due to the unclear interpretation of the individual contributors, we cannot know if havingcrossing_ref=zebraimplies having a traffic sign! In some countries, the presence of a traffic sign makes the difference between having priority or no priority as pedestrian...- Other countries are less strict, e.g. a certain type of marking can be used in several situations
- Other, more flexible tagging schemes (such as
crossing:markings=*) have been created in the meantime, giving rise to more confusion and duplicate (and sometimes even conflicting) data - The other animals are sometimes (accidentally) picked even though they don't make sense in different countries
- An actual crossing might not be in line with the legally defined crossing type - e.g. the painted pattern might be wrong, the traffic lights (or warning lights) might have been removed due to an accident, the traffic sign might or might not be installed ...). This would result in having to define 'handicaps' on the animal types anyway, boiling down to reinventing tags such as
crossing:markings=*anyway... - The animals are culture-specific and not well-understood by the global audience. I still don't know the difference between a pelican-crossing and a toucan-crossing. I can look this up for the UK, but this is even weirder in some other countries.
In practice, there is (except in the UK) no need to keep using crossing_ref=*. Rather, using this tagging scheme is actually confusing for the community and deteriates data quality.
Various national communities all over the world already did attempts to retag away from this tag, as is visible in the taginfo history graph. This proposal merely officializes this.
National breakdowns
| Country | Count | Zebra count | Zebra doubletag with crossing:markings percentage |
|---|---|---|---|
| Global | 471K | ||
| GB | 63K | N/A | |
| ES | 48K | 98% | 100% |
| BR | 41K | 99.92 % | 12% |
| DE | 41K | 78% (12% pelican, 9% toucan) | 27% |
| IT | 41K | 97.5% | 23% |
| PL | 39K | 97% | 18% |
| SK | 19K | 99.8% | 29% |
| AT | 18K | 97% | 34% |
| US | 18K | 80%, also see below | 26% |
| NL | 12K | 100% | 100% |
| TW | 12K | 99.7% | 13% |
| JP | 9K | ||
| NO | 8K | ||
| CH | 8K | ||
| LU | 7K | ||
| CZ | 7K | ||
| UA | 6K | ||
| RS | 5K | ||
| PH | 5K | ||
| PT | 4K | ||
| PS | 4K | ||
| RO | 4K | ||
| HR | 3K | ||
| VE | 3K | ||
| CN | 3K | ||
| GR | 2K | ||
| ZA | 2K | ||
| AL | 2K | ||
| SE | 2K | ||
| SI | 2K | ||
| MA | 2K | ||
| CA | 2K | ||
| FR | 2K | ||
| ME | 2K | ||
| BY | 2K | ||
| FI | 1K | ||
| LT | 1K |
Unlisted countries are < 1K
The situation in the US
US specific values only see marginal usage: the hawk has 431 uses ; rrfb has only 33 uses, the pedestrian scramble has only 88. Furthermore, it seems that most of them are doubletagged. A spot check also learned that a significant percentage is of low quality (e.g. having "note=planned" (!), not having an overhead flashing light even though 'hawk' implies this)... The wiki page already states that the "recommended tagging is using crossing:markings=*". This proposal would officialize this and actively deprecate crossing_ref for the US as well.
However, the US has around 14K uses of crossing_ref=zebra. It is semantically unclear what this tag implies more then just crossing:markings=zebra and can be mechanically retagged.
The US also has around 1.1K 'pelican'-tags and around 400 standard tags - even though this last category seems to be undocumented on the wiki.
Tagging
Use highway=crossing + crossing:markings=* + crossing:signals=* + flashing_lights=* instead. This has less room for interpration and is more flexible.
Features/Pages affected
Wiki
- Key:crossing_ref will be downgraded to be national tags for only UK and US. The table with UK-crossing types would be moved/fused with the table in [[Crossings in the United Kingdom|Crossings in the UK], which'll also receive an 'implied tags' section.
The US has a table for specific values as well; yet those could probably be retagged and dropped.
- Tag:crossing_ref=zebra will be downgraded to a UK-only tagging scheme and be actively deprecated in the rest of the world.
- Key:crossing will only mention Key:crossing_ref as being a UK-specific thing and actively discourage this tagging elsewhere
Editing software
iD and JOSM will be requested to:
- not propose the crossing_ref field, except in the UK - give a validation warning on this tag (except in the UK)
An "automatic upgrade" system should not yet be considered. An proper, mechanical edit would be better.
Retagging
I propose that national communities (esp Spain and the Netherlands) that added crossing:markings=zebra on every element that also carries crossing_ref=zebra, delete the latter tag. It does not carry any more information but rather carries confusion about other aspects!
External discussions
Many discussions and proposals have preceded this one, such as:
- Pietervdvns overview of the mess
- SomeoneElse's diary entry about the many tagging schemes in existence
- wideshot discussion on the community about various other related topics, which also served as a first round of feedback
- Also see the proposal which this proposal builds on top of
And many older, slightly related discussions:
- crossing=zebra, a possible synonym
Comments
Please comment on the discussion page.