From OpenStreetMap Wiki
Jump to navigation Jump to search
Logo. 要素 : 道路
One example for 要素 : 道路






全世界的公路都使用不同的分级方式以及不同的分级表述。OpenStreetMap试图使用同一分级系统适应全部分级情况。由于发源地原因,该分级方式采用英式方式,导致美国州际公路以及德国的高速公路(Autobahn)被标记为对应的英国等级“Motorway”。公路标签使用提供了关于如何使用本地分级情况解释道路等级以及更加广泛的信息。Highway:International equivalence提供了在不同国家或地区的制图指南。


查看Highway:International equivalenceRecommended Tagging Scheme By CountryOSM tags for routing/Access-Restrictions获得更多信息。



总的来说,道路是基于在道路网络中的重要性被分级的。级别有highway=trunkhighway=primaryhighway=secondaryhighway=tertiaryhighway=unclassified,以及连接路 - highway=trunk_linkhighway=primary_linkhighway=tertiary_linkhighway=unclassified有些特殊,因为它的名字十分具有迷惑性(这不是给未分级道路所设的标签)并且没有对应的连接路。

Note that road of given type is expected to have similar importance in different part of road, but may have drastically different quality. highway=primary will have drastic differences in quality between Siberia and Germany.

Motorways are tagged with highway=motorway and highway=motorway_link and are special as they are legally defined (sign posted) which usually excludes slow traffic and at grade intersections and implies some minimal road quality is required, not just a high importance.

Roads of importance not qualifying them for any of groups above, with residences along its side (or sides) should be tagged highway=residential.

Service roads (roads which exist to provide access for trash collection or parking, and campground roads) should be tagged with highway=service.

living_street=* are a special case of road, usually variant of a residential roads.

highway=track is used for roads used to access roads and fields, and not falling into any of groups above.

Roads for which the classification is not known should be temporarily tagged with highway=road until they are properly surveyed.


highway=pedestrian for pedestrian roads, often pedestrianized roads (roads which have been converted to pedestrian walkways either by physical barriers or by signage).

highway=cycleway, highway=footway, highway=bridleway imply a particular kind of traffic.

highway=path needs tags to designate what traffic is legally allowed or may be appropriate. Use access=*, bicycle=*, foot=* and other access tags.


The following tags are all optional – please do not be intimidated as they are very rarely all populated by the initial mapper. If you are mapping a new area then you may wish to limit yourself to capturing the road geometry, junctions, the road classification and road names. You, or someone else, may later add additional information.


highway=construction is used to mark road under construction and not yet open to traffic, with construction=* specifying type. Note that it may range from construction=motorway to construction=cycleway. Roads undergoing reconstruction, with long term closure, are often tagged with highway=construction. Using lanes=*, access=*, maxspeed=* and other relevant tags to mark the temporary conditions due to the road works is also feasible and preferable if road is partially open. In both cases - revisit the situation when the construction is complete.

Similarly highway=proposed + proposed=* is used for proposed roads.

This topic is covered at Comparison of life cycle concepts#<key> = <status> + <status> = <value>.


Use the name=* and/or the ref=* for each section of the road (way) which has a name or reference. If a stretch of highway has multiple reference numbers, they should be semicolon-delimited. (examples: ref=I 39;US 51, ref=US 51;WI 54). If a road has two names, the less common one can be put in alt_name=*; in addition, where a road is now much more generally known by its reference (for example the 'A1' in the UK), but that it also has a current legal name for historical reasons if it probably better to leave the name field blank and put the name in alt_name which means that it is much less likely to be rendered. A previous name which is no longer used but may be of interest for historical mapping can be put in old_name=*.


maxspeed=*, maxheight=*, maxwidth=* and maxweight=* can be used to add detail about a road. Maxspeed generally applies to all public roads. Maxheight and maxwidth often apply to a road going under a bridge and maxweight to a road going over a bridge. Note that each tag should be associated with the way to which the restriction applies and can either be attached to the way itself or to a node along the way.

Use foot=no if pedestrians are not allowed and bicycle=no if bicycles are not allowed. If only buses are allowed then access=no together with bus=yes would be appropriate. The hov=* tag can be used to indicate the minimum number of people required in a vehicle to use the facility. See the access article for a much more detailed description of how to describe other restrictions relating to use of the road or path.


The surface=* tag can be used to identify the surface covering of the carriageway. For unpaved roads the relative quality of road, and in particular tracks can be indicated by the tracktype=* tag, with values ranging from grade1 (the best) to grade5 (the worst). width=* tag may be used to indicate the width of the carriageway in meters. The traffic_calming=* tag can be used to indicate either that a section of road is traffic-calmed or the position of an actual feature. This is normally only used for narrow roads. If the road is lit then it is useful to add lit=yes and lit=no if not. For the most detail one can add individual lamp posts using highway=street_lamp.


Parking parallel or perpendicular to the street can be mapped with parking:lane=* and parking:condition=*.




The number of lanes available to general motorised traffic should be given using lanes=*. For a detailed description of what kind of lanes should be counted, see the main article. If the number of lanes is not equal in each direction for a two way road then use lanes:forward=* or lanes:backward=* to indicate the number of lanes in one of the directions in addition to the total number of lanes. The key lanes:forward=* hereby refers to lanes which direction is equal to the direction of the OSM way, and lanes:backward=* to the opposite direction.

For lanes available only to public service vehicles such as buses (or taxi) in one direction use lanes:bus:forward=1, lanes:taxi:backward=1 or similar.

Layout and individual properties of lanes


The properties of individual lanes can be tagged with the lanes suffix to any other meaningful key. For example maxspeed=80 means a speed limit of 80 km/h on all lanes, while maxspeed:lanes=100|80 means a speed limit of 100 km/h on the left lane and 80 km/h on the right lane.

Turning lanes can be indicated with the tag turn:lanes=*, for example turn:lanes=left;through|right

Cycle lanes and tracks

The tag cycleway=* can be used to describe any cycle lanes constructed within the carriageway or cycle tracks running parallel to the carriageway.


sidewalk=* is used to give information about footways (also called pavements/sidewalks) which may, or may not be associated with the highway.

Crossing points and barriers

crossing=* can be used to indicate a place where there facilities are provided to assist people crossing the road. The tag should be added to a node at a suitable point along the road, with crossing=* being available to describe the type of crossing using one of the following values: traffic_signals, uncontrolled, island or unmarked. Additionally, the foot=*, bicycle=*, horse=* tags can be used to indicate which modes can legally use the crossing. The supervised=yes tag can be used to indicate that the crossing is supervised at busy times.

Where usage of a highway is restricted by some physical barrier this can be indicated by the addition of a node tagged with barrier=* with a suitable value (for example: border_control, cycle_barrier, cattle_grid, gate, bollard, stile, toll_booth or turnstile). An access=* tag can be added to provide information about which modes of transport are affected by the barrier. For a toll-booth the fee=* tag can be used for provide more information.

Where a railway crosses a road at grade use railway=level_crossing, and use railway=crossing where a path crosses a railway.

For a place where a river or stream crosses a road or path without a bridge use ford=*. For a narrow watercourse indicated using a single way, a node should be used. For a wide river denoted by the area waterway=riverbank, the 'ford' tag should be applied to the way spanning the full length of the road as it crosses the river.


Bus stops along the route should be tagged with highway=bus_stop or using the newer public_transport=platform which should be positioned to the side of the carriageway where passengers wait. A tram running within the main carriageway should be tagged with railway=tram on the same way as the road. If the tram runs into a separate right-of-way to the side of the carriageway or within the central reservation then create a separate way also tagged using railway=tram.


Ways on bridges and in tunnels should be indicated by splitting the way where the bridge begins and ends, and marking the middle way as bridge=yes/viaduct or tunnel=yes. There is some debate about how to name bridge and tunnel segments along a road. One approach is to use bridge:name=* and tunnel:name=* another is to use the proposed Bridge/tunnel relation and include the name of the bridge within that relation. For mapping bridges, see man_made=bridge.

The layer=* tag should generally be used on one of the ways that cross using a bridge or tunnel. A bridge will commonly be tagged with layer=1 and a tunnel with layer=-1 although where the junction is more complex more layers are required. Where a road is above or lower than ground level a section may be tagged with embankment=* or cutting=*.


A Carriageway (Am.: roadway) consists of a width of road on which a vehicle is not restricted by any physical barriers or separation to move laterally.

  • A road consisting of one carriageway (bidirectional or one-way) is mapped using a linear OSM-way.
  • A road consisting of more than one carriageway is mapped using a separate OSM-way for each of these carriageways. Typically these are one-ways as dual carriageways.



A simple junction between a number of roads can be formed using a shared node. If the junction has traffic signals tag the node with highway=traffic_signals. Mini-roundabouts, indicated by paint on the road, are described as a node tagged with highway=mini_roundabout. Larger roundabouts which probably have grass or planting in the middle as described as a circular way tagged with junction=roundabout. A roundabout on a major road may include bridges and should therefore be split into a number of ways, with each element tagged with junction=roundabout. Larger interchanges are normally constructed using multiple highway elements and appropriate associated bridge and layer tags.



Some junctions have turn restrictions which need to be modeled for routing services to operate correctly.