Relation

From OpenStreetMap Wiki
Jump to: navigation, search
Available languages
Mf Relation.svg

A relation is one of the core data elements that consists of one or more tags and also an ordered list of one or more nodes, ways and/or relations as members which is used to define logical or geographic relationships between other elements. A member of a relation can optionally have a role which describe the part that a particular feature plays within a relation.

Usage

Relations are used to model logical (and usually local) or geographic relationships between objects. They are not designed to hold loosely associated but widely spread items. It would be inappropriate, for instance, to use a relation to group 'All footpaths in East Anglia'.

Size

It is recommended to use not more than about 300 members per relation. If you have to handle more than that amount of members, create several relations and combine them with a Super-Relation.
Reason: The more members are stuffed into a single relation, the harder it is to handle, the easier it breaks, the easier conflicts can show up and the more resources it consumes at database and server.

Note : "super-relations" is a good concept on paper but none of the many OSM software applications is working with them.

Roles

A role is an optional textual field describing the function of a member of the relation. For example, in North America, role : east indicates that a way would be posted as East on the directional plate of a route numbering shield. Or, multipolygon relation, role : inner and role : outer are used to specify whether a way forms the inner or outer part of that polygon.

Types of relation Mf Relation.svg

Main article: Types of relation There are many types of relation including:

  • Relation:route is used to describe routes of many types, including major numbered roads like E26, A1, M6, I 80, US 53; or hiking routes, cycle routes and bus routes.
  • Relation:multipolygon, used for defining larger Areas such as river banks and administrative boundaries.
  • Relation:boundary to exclusively define administrative boundaries
  • Relation:restriction to describe a restrictions such as 'no left turn', 'no U-turn' etc.

Examples

Multipolygon

In the multipolygon relation, the role : inner and role : outer roles are used to specify whether a member way forms the inner or outer part of that polygon enclosing an area. For example, an inner way could define an island in a lake (which mapped as relation).

Bus route

A bus route might have a relation with type=route, route=bus and ref=* and operator=* tags. The ways over which the bus travels would be members, along with bus stop nodes. The ways would have role : forward or role : backward roles, depending on whether the buses operate in the direction of the way, or the opposite way (or the role might be left blank, meaning the bus route uses the way in both directions).

Turn bans

See Relation:restriction.

Tools

Navigation on Relations

Please list routing apps here, that are able to follow a relation route (like for pilgrimages)

  • No app known yet.

See also

Elements
Node · Way · Area · Relation (members and roles) · Tag (key and value)