Proposal:Key:is sidepath

is_sidepath
Proposal status: Proposed (under way)
Proposed by: Chris66 (initial draft), Supaplex030 (further development)
Tagging: is_sidepath=*, is_sidepath:of=*, is_sidepath:of:name=*, is_sidepath:of:ref=*
Applies to:
Definition: To indicate whether a way (in particular a cycle way or foot path) is attendant to/part of a road or runs independent without any relationship to a road.
Statistics:
Draft started: 2015-08-23
RFC start: 2022-12-02

Proposal

is_sidepath=* is proposed as an additional tag on ways (in particular cycle ways or foot paths) to indicate whether the way is related/attendant to a road (i.e. adjacent and parallel to a road) or whether it runs independently/isolated without any relationship to a road.

Furthermore, is_sidepath:of=*, is_sidepath:of:name=* and is_sidepath:of:ref=* are proposed as an extended set of sub-tags to allow to explicitly tag important road attributes on the sidepath itself.

Rationale

Roadside paths and ways can be mapped separately in OSM. Those separate geometries cannot be identified as part of the road, or only with the significant effort of using geometric processing. Most applications cannot afford such complex calculations.

However, the information whether a path is attendant to a road or not is important for many use cases and can offer various advantages:

Improved rendering:

  • Depending on the map style, roadside paths can be shown differently (e.g. thicker, thinner or not at all, with or without a name etc).
  • Due to the over-wide representation of generalised rendered roads, their sidepaths are sometimes hidden, which can be more easily prevented with a clear sidepath attribution.

Improved routing:

  • Routing directions can be significantly improved by adopting road attributes like the road name (e.g. "Follow the cycle path along XY Road"). Sidepaths are usually tagged without a name=* in OSM, which means that the name is lost for most applications otherwise. Deriving such road attributes geometrically is usually too complex and not possible reliably in many edge cases.
  • Routing profiles can easily involve road classifications in the route calculation (e.g. avoid major roads, prefer minor roads).

Improved data analysis:

  • Analyses e.g. for evaluating the quality of footway or cycle path networks require the ability to identify separately mapped roadside paths.

So far, there is no approved concept in OSM to record such sidepath situations. However, some applications already use this tagging to benefit from the mentioned advantages (see below). While there are alternative approaches to this issue in OSM, they are not practical for large-scale use for different reasons (see section on alternative concepts and it's limitations).

Tagging

Add is_sidepath=* to a way tagged with highway=* (in particular highway=cycleway, highway=footway or highway=path) using one of the following values:

  • yes: The way is related/attendant to a road, i.e. it runs adjacent and parallel to a road.
  • no: The way is isolated/independent and has no relationship to a road.

On sidewalks mapped as footway=sidewalk, is_sidepath=yes is not necessary, as this is already implied for sidewalks. Nevertheless, using the extended tagging to adopt street attributes is still useful (see below).

This tagging should not be used on a road itself. However, it can be useful to use this tagging on other types of ways beyond the named situations, e.g. highway=bridleway or highway=bus_guideway.


An extended set of sub-tags can be used to provide access to relational street attributes, i.e. attributes that specify more precisely what (class of) street the way is located next to:

  • is_sidepath:of=*: The road classification, e.g. primary or residential. This is the highway=* value the road line is tagged with.
  • is_sidepath:of:name=*: The name=* of the road.
  • is_sidepath:of:ref=*: The ref=* (reference number or code) of the road.

It's not recommended to adopt other road attributes, as these are either tagged at the separate way itself (e.g. surface=*, lit=*) or are less relevant for use cases (e.g. maxspeed=* on the road). Note, that adopting such attributes means duplicating information, which we are trying to avoid in OSM, as this can lead to data inconsistency. Since the adopted road attributes are indirect "pointers" and the three main attributes mentioned above can offer significant benefits for applications and barely change over time, this seems acceptable for them.

A road can have multiple sidepaths, with the sidepath attributes each pointing to the same road as the "main roadway" (see examples below).

Call for Discussion:
During the RFC process for this proposal, I would particularly like to get opinions from other mappers on the advantages and disadvantages of these additional attributes. Please leave your thoughts on the discussion page.

Examples

Typical examples for different types of ways and situations

All examples assume that the shown path is mapped separately.

Cycle track along a main road near Morpeth, UK (OSM):

highway=cycleway
is_sidepath=yes
is_sidepath:of=secondary
is_sidepath:of:name=Whorral Bank
is_sidepath:of:ref=B1337

A meandering sidewalk along 12th Avenue in Hanford, California (OSM):

highway=footway
footway=sidewalk (implies is_sidepath=yes)
is_sidepath:of=tertiary
is_sidepath:of:name=12th Avenue

A sidewalk located directly at the edge of the road:

highway=footway
footway=sidewalk (implies is_sidepath=yes)
is_sidepath:of=residential

Cycleway along and adjacent to a street in Wroclaw, Poland (OSM):

highway=cycleway
is_sidepath=yes
is_sidepath:of=tertiary
is_sidepath:of:name=wybrzeże Stanisława Wyspiańskiego


There is also a footway (but not a sidewalk in the strict sense), separated by trees, thats a sidepath of the same road (OSM):

highway=footway
is_sidepath=yes
is_sidepath:of=tertiary
is_sidepath:of:name=wybrzeże Stanisława Wyspiańskiego

Footway delimited by a (functionally determined) wider green strip in Gratkorn, Austria (OSM):

highway=footway
is_sidepath=yes (footway=sidewalk might be possible alternatively)
is_sidepath:of=tertiary
is_sidepath:of:name=Harter Straße

An isolated cycle and foot path without any relationship to a road (OSM):

highway=path
bicycle=designated
foot=designated
segregated=no
is_sidepath=no

Edge Cases: When it's a sidepath and when it's not?

It is not always clear, if a way should be categorized as a "sidepath" of a road or not. Ways that run parallel to a road can sometimes be directly adjacent to the road, sometimes run somewhat away from the road. Sometimes they are far apart from the road so that they can be interpreted as a independent path. In other cases, a way may run in the surroundings of a road, but has no direct relation to it (because there is something between the way and the road) or the way does not run parallel to the road, which also makes it difficult to distinguish.

To help categorization in such edge cases, there are some criteria that characterize a sidepath (is_sidepath=yes) and that can taken into account:

  • Path or path segment runs along and parallel to a road ("XY Road").
  • The path is located close to the road, so that the road and it's traffic are clearly perceptible on the path.
  • When using the path, you would say you are moving "along XY Road".

In case of doubt, consider to not use this tagging at all.

Two examples that might help to distinguish:

The path runs on an elevation parallel to a road. Although there is a wide green strip with shrubs and trees between the path and the road, the road as well as the traffic on the road is clearly perceptible. If a navigation system instructs to move along the road, it is obvious to the user which road is meant.

Therefore, it is rather a sidepath:
is_sidepath=yes

The path runs parallel to a motorway, which is elevated at some distance and behind a noise barrier. As the path continues, there is a dense row of trees in between (there is an access road to the path on the ramp visible in the picture). The road traffic is hardly perceptible on the path, rather the path is characterised by the adjacent vegetation in the further course.

Therefore, it is rather not a sidepath:
is_sidepath=no

Illustrations: How to use sidepath tagging at intersections?

At intersections, sidepaths of different roads can join each other. In such situations it is not always clear to which road a sidepath belongs or wether a path is a sidepath or not. The following schematic illustrations show how the sidepath tagging can be used and which reference attributes a sidepath should adopt in different situations. The different colours indicate the relationship between the highway centerlines and "their" sidepaths.

Carriageway       Crossing       Highway centerline
Sidepath tagged with relationship to a specific street (red, green, blue)
Sidepath tagged without relationship to a specific street
Other way (no sidepath)

To keep the examples simple, we do not specify the type of way (eg. sidewalk vs. path for bicycle and foot traffic). The examples above handle those cases and show when is_sidepath=yes is implicit for sidewalks.

At simple intersections, the sidepaths and crossing ways can each be related to a street. Ways linking between different sidewalks (light gray path at the bottom and middle) usually are no sidepaths.
At large intersections sidepaths of several streets are merging sometimes. No clear relationship can be defined for the merged path segments. They are sidepaths (is_sidepath=yes), but can't get a is_sidepath:of:name=* reference. However, use the classification of the "highest" adjoining street as value for is_sidepath:of=*.
Ways along roundabouts adopt the attributes of the roundabout. The sidepaths along the joining roads adopt the attributes of the joining roads.
A way can change from a sidepath to a non-sidepath if it no longer continues along the road. If the name, class or reference of a adjacent road changes, the adopted attributes of the sidepath also change.
A way can change from a sidepath to a non-sidepath if the road ends but the way continues. Road links are no sidepaths.

Current usage

By mappers

This tagging emerged in 2014 and was initially used by some individual mappers in Germany for some years. Since the beginning of 2021, this tagging has seen a strong increase in use after it was mentioned on some community channels and wiki pages and is now used by several users mainly in Europe so far.

By applications

Alternative concepts and it's limitations

  • cycleway=sidepath is an alternative tagging method, also footway=sidepath and path=sidepath are suggested. However, there may be a conflict between footway=sidepath and footway=sidewalk, because sidewalk refers to a specific part of the road that (depending on the definition) might not apply to every sidepath. Moreover, cycleway=*, footway=* and path=* are already used by mappers to distinguish between different types of ways (e.g. footway=crossing/sidewalk/access_aisle/link..., cycleway=crossing/lane/track/link... path=crossing/desire/hiking/climbing_access/link...) of which some may also be sidepaths. It therefore seems necessary to use a distinct tag to classify sidepaths.


  • Street relations are another proposed method that allows to identify paths attendant to a street. However, this requires more effort for data recording and maintenance. Editing relations is a major hurdle for many mappers and is only supported by a few editors. Experience shows that such relations are not maintained properly. In contrast, the use of a tagging schema is much simpler.


  • The area:highway=* schema could be helpful with grouping ways that are part of the same "street corridor", but for physically separated ways where the area:highway=* areas have no shared edges, this approach is limited.

Features/Pages affected

External discussions

Comments

Please comment on the discussion page.

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