Tag:restriction=no_entry
restriction = no_entry |
Description |
---|
Forbids the entry into a two-way street |
Group: Restrictions |
Used on these elements |
Requires |
Useful combination |
|
See also |
Status: in use |
Tools for this tag |
|
Denotes whether one is able to enter a road from one side or not without the road being an actual one-way road (i.e. one can turn around in the street, only entering it from one side is forbidden).
Rationale
Though the "No entry" sign is usually combined with one-way roads, it doesn't directly sets up a one-way road in many countries and merely tells vehicular traffic that they can't enter the road from that side (they're informally called "false one-way streets" or "faux one-ways" for that reason).[1] restriction=no_entry is an easy and straightforward way to set up no-entry restrictions on OSM without resorting to various hacks (see #Alternatives below).
Usage
Create a turn relation and select the ways you can't enter the road from with from, the way you can't enter with to and the node at the intersection with via. Unlike most other turn restriction, restriction=no_entry can take multiple from members. It still is limited to only one to member, though.
If the no entry doesn't apply to every mode of traffic, add it to except=* (e.g. except=bicycle). If this restriction applies to only certain traffic modes, add a suffix of the vehicular mode to restriction=* (e.g. restriction:hgv=* for heavy goods vehicles).
Optionally, add a traffic_sign=* to the relation.
Support
Support for restriction=no_entry isn't universal and there are varying states of support between each tool:
Routers:
- All three routing engines on OSM (Grasshopper, OSRM, Valhalla) can evaluate no_entry with the correct behaviour
Editors:
- iD:
- JOSM:
- Unable to select restriction=no_entry and restriction=no_exit in turn restriction template, requiring the user to manually enter it[2]
- Throws (false positive) errors at multiple from members even though the documentation mentions that this is legal for no_entry.[3][4]
- Doesn't display a "no entry" sign when it does for other turn restrictions.
Alternatives
Because of limited support compared to restriction=no_left_turn, only_right_turn, etc., overlap in usage and general disputes, there are alternatives to restriction=no_entry:
Using multiple turn restrictions:
- Split a no_entry into multiple turn restrictions with the appropriate restriction type, each with only one from member.
- Keep in mind that this is unweildy to set up with amount of turn restrictions (easier prone to errors).
Using oneway=*:
- For any non-one-way road (de jure and de facto): Split a small portion of the road (around one metre or up to the next footway crossing) and tag it as oneway=yes and whichever exceptions apply. The intend is to minimise routing errors (in that the router forbids you to go backwards even though you can) for reasonable users as many as possible (indeed, this can be seen as a variation for tagging for the router).
- oneway=yes might be more accurate for a de jure non-one-way road (missing out the one-way sign) if the drivers have to turn into a single direction on side roads anyway (de facto oneway road). This can be seen as tagging for the renderer since only roads with oneway=yes are rendered with arrows.
Using vehicle + *:forward=*/*:backward=* tags:
- Same limitation as oneway=* with no rendering support.
- Might be more useful if a street cannot be entered from both sides except for certain vehicles (such as buses - think of a short Transit Mall).
See also
- restriction=no_exit for the opposite scenario i.e. a road one can enter but not leave at that intersection.
- oneway=*