Proposed features/Relation:tmc

From OpenStreetMap Wiki
Jump to navigation Jump to search
Proposal status: Proposed (under way)
Proposed by: MHohmann
Tagging: type=tmc
Applies to: relation
Definition: TMC traffic guidance information

Rendered as: No particular rendering
Drafted on: 2014-01-12
RFC start: 2014-02-01

Goal of this proposal is to find a simple, useful, understandable and easily maintainable mapping scheme for TMC location codes. These codes allow a connection between TMC traffic guidance messages and OSM objects, so that OSM based navigation systems can calculate their routes under consideration of traffic messages.


TMC is a widely used system to broadcast messages on traffic distortions, road works or closures, abnormal weather conditions, dangerous road conditions and similar things via radio channels. These messages can be received by various devices, either freely or as a paid service, and then used to aid in navigation or warn drivers from otherwise unexpected conditions. The location of these events is encoded by the use of location code lists, which contain a number of fixed locations, such as motorway junctions or service areas, and assign them a fixed location code. This code and the relations between identify those objects and the roads connecting them. The objective of this proposal is to map these locations to the corresponding roads and intersections.


Routing based on traffic guidance systems is a very helpful feature, as it assists the driver to avoid traffic distortions, guides him around closed roads and warn from potential hazards. A common standard for traffic guidance, which is used in many countries, is TMC. It can be received in several countries for free, and in others as a paid service. Many commercial / proprietary navigation units feature the use of TMC for routing. The locations broadcast in TMC messages are encoded using location code tables, which contain information about the geographic coordinates of road features and their relation. In order to decode a message, the navigation unit needs to use the same location code table in order to find the geographic coordinates of a road feature, and then deduce which road is affected. This can be difficult for a number of reasons:

  • A matching needs to be performed between the data in the location code table, such as coordinates and street names, and inaccuracies / deviations between the map and the location code table may cause matching failures.
  • In some countries the location code tables are not freely available raw form, and are thus unavailable to most non-profit projects. However, distribution in integrated form within a map may be possible.

In order to make the TMC location codes available and more usable mainly to FOSS projects it is desirable to integrate them into a free and open map. These codes have a direct relation to real world locations, and even uniquely identify these locations.


In order to keep the tagging of present OSM features such as highways simple, this proposal does not include any new tags on those already mapped features. Mappers who are not familiar with TMC will therefore not be disturbed by any new and unknown tags. Instead all information on TMC is to be included using newly created relations with type=tmc:*. These relations should contain the relevant OSM features which are affected by a TMC message, and are designed as simple and understandable as possible. This design has another advantage. If some time in the future TMC should become obsolete and not used / broadcast anymore, all TMC related features can be cleanly removed from the OSM database without affecting any other features. This makes sure that TMC mapping will not produce and unmaintainable waste.


In order to keep the proposal as simple as possible and the mapping workload low, it has been split into four different stages. Each stage comprises a simple tagging scheme, which will add further information and refine the tagging from the previous proposals. Further, each stage will add an additional benefit and increase the usability of the TMC data. The stages are organized in separate proposals which are discussed and voted on separately. As soon as one stage has passed the proposal process, it can already be used for mapping, and tested in practice. Experience gained can then influence the remaining proposals, or even alter the complete four-stage strategy if later stages turn out useless or involved. The four stages are organized as follows.

TMC Points

In the first stage TMC point locations should be mapped, each of them using one TMC relation in OSM. Every point in the TMC tables contains its approximate geographical coordinates and a type code, which makes it very easy to find the corresponding OSM features and thus easy to map these objects. TMC points can be either isolated points, which are not connected to the road network, intermediate points along a single road such as bridges or tunnels, or junctions between several roads. The objective of this stage is mainly to map points which are associated to TMC roads, and to connect them to OSM nodes on the corresponding roads.

Benefit: With TMC points connected to OSM nodes on the corresponding roads a router can easily find all TMC points which are passed on the calculated route or part of the routing graph, and filter TMC messages accordingly before providing them to the driver. Certain messaged such as road closures or blockages may also cause the router to avoid the corresponding points and trigger a new route calculation based on this information.

TMC Links

In addition to the first stage, TMC points which are on the same road should now be connected with TMC link relations. These are route relations which start and end at neighbouring TMC points and contain all road segments in between. Once TMC points are already in the OSM database, this can even be done in a semi-automated process: an algorithm can find a likely route between two TMC points, pick the corresponding OSM ways, create a TMC relation with appropriate tags and present it to a human mapper for approval or correction.

Benefit: Compared to relations containing only OSM nodes, links / route relations are more robust to errors and can be checked automatically for continuity and consistence. If a node containing a TMC point location gets deleted, the router will not be able to see that the corresponding TMC point is part of the calculated route. But if a way on a route gets deleted or is missing in the relation, the router will still apply road restrictions from TMC messages to most of the route, and take the appropriate actions. Further, the information provided by TMC links allows to find also complicated routes in the road network, which an automated algorithm does not find correctly.

TMC Areas

TMC areas are groups of TMC points, segments, roads and smaller areas which can mark administrative, meteorological, metropolitan or other types areas. With those areas it is possible to issue, e.g., weather or hazard warnings, which affect larger regions and not just single points or roads. The objective of this stage is to create relations for TMC areas, which in turn contain all features to which a warning will apply.

Benefit: With TMC areas as part of the OSM map, routers can easily find regions to which a TMC message applies and present those messages to the end user which apply to areas on his route. If necessary, these areas can be avoided by the routing algorithm.

TMC Ramps

Certain TMC messages apply to motorway / segregated highway ramps, entrances or exits. They may apply either to all of these features present at a junction or intersection, or only to a specific one. The objective of this stage is to map ramps and create TMC relations for them.

Benefit: Mapping the location of ramps in connection with the corresponding TMC message codes allows a router to precisely find the ramp to which a message applies, and use this information for routing. With this final stage also messages on blocked or closed ramps can be correctly interpreted and taken into consideration.


The TMC location code information can be used, for example, for the following types of services:

  • Routing using traffic distortion messages (for both online and offline routers).
  • OSM based maps showing traffic distortions and road constructions.

Connection to other proposals

There also exists an older proposal for mapping TMC locations (only in German): DE:Proposed features/New TMC scheme. It differs from this one, since it proposes to tag TMC information as new tags on ways, while this proposal instead introduces new relations and does not add any new tags to existing OSM objects.


Please use the discussion page for comments on the overall tagging scheme and the discussion pages on the subpages for the individual proposal stages.