From OpenStreetMap Wiki
< JOSM‎ | Plugins
Jump to navigation Jump to search

The road signs plugin offers a dialog for selection of traffic signs from a list of presets. With simple clicks you can create combinations of signs and generate tagging suggestions. There are currently presets for Belgium, Germany, Poland, Slovakia and Spain.

How to install / launch

Road Sign Plugin - Screenshot
Road Sign Plugin - Screenshot

See this page for basic installation instructions. Once JOSM has restarted, make sure you have the properties dialog open and some objects are selected. Then there should be a small button in the upper right corner of the properties window that launches the dialog.


Click on a sign in the left area to add it to the selection. Recommended supplementary sign are shown on the right and can be added to the main sign by left click. (Note: The gray/disabled sign are selectable as well. Use at your own risk and check the results.)

When selecting very common signs and sign combinations, it should be safe to accept the tagging suggestion. However you still need to take care of some basic things like adding the right highway=* tag (if not set by the plugin) and choosing proper direction of the way for incline=* and oneway=*.


If you like to improve an existing preset or create and maintain a sign preset for your country, you can open a ticket on JOSM trac and attach the files or contact the author directly.

How to install a custom preset

Add the following entry in the advanced preferences:


(The value can be either "simple" or "list" type.) The custom preset should be loaded automatically after a restart.

Images can be placed in the same folder as the preset .xml file. Alternatively, you can also specify a path for icons:


Preset Format

The presets are defined in an XML file format. An example would be the preset for Germany which makes use of most of the features listed below.

Some values can contain parameters like $foo, that will be replaced by the value of the parameter named foo.

The <sign> element
Attribute Description
ref Short official designation of the sign that can be used for the traffic_sign=* tag. (accepts parameters)
id Unique identifier. (If missing, equals ref. Either id or ref must be present.)
icon Icon image name. (If missing, id or ref is used as image name. In this case ':' and '.' characters are converted to underscore '_'.)
name Name of the sign. (required)
long_name Long (e.g. official) name of the sign.
traffic_sign_tag Value that should be used for traffic_sign=* tag (if different from ref).
help Some notes to guide the user.
wiki Page in the osm wiki.
deprecated Set to yes if authorities have decided to no longer install signs of this kind. (But old signs may still be there and need to be recorded.)
useful (optional) The user can choose to show only a selection of the most useful signs. By default, a sign with <tag> information is treated as useful. This can be overridden by setting this attribute. Possible values: true, false.
The <tag> element

Some tags can be named (ident=*) and modified by other subsequent tags. If this finally results in an empty value (""), then the tag is skipped altogether. Note that the default value of a named tag is only used if there are no appending tags. E.g. access=no becomes access=delivery and not access=no;delivery.

static tags:

Attribute Description
key The key text. (accepts parameters)
value The value text. (accepts parameters)

named tags:

Attribute Description
key The key text.
value The default value text. If the final evaluation of the value results in an empty string, the tag is dropped.
ident Name a tag so it can later be changed by other tags.

modifying tags (appending):

Attribute Description
tag_ref Name of the tag to be changed.
append_value Append a string to the value of the tag. The default value of the identified tag is dropped (unless there is no modifying tag appending a value).

modifying tags (condition):

Attribute Description
tag_ref Name of the tag to be changed.
condition The condition to add. (K=V becomes K:cond=V.)
The <parameter> element
Attribute Description
ident identifier to get the value of this parameter (required)
input input type (currently textfield and combo are possible values) (required)
prefix text to put before the input area
suffix text to put after the input area
field_width for text fields: the width of the field (number of characters)
default default value (required)
The <supplementary> element

(list of recommended additional signs)

Attribute Description
id The id of the supplementary sign.


Suggestions for better tagging and additional signs / sign combinations are welcome. Please leave a note on the discussion page. Major requests and usual bugs can be posted at the JOSM bug tracker.


Inspired by:

  • Verkehrszeichen Tool by Sebastian Hohmann. Basically, this plugin is a port to Java and the JOSM (plugin) system.

Related sites: