Module 4 XML and Presets in JOSM

Module 4 XML and Presets in JOSM
This document is initial draft and still in reviewing phase by these
Badan Nasional Penanggulangan Bencana (BNPB)
Australia-Indonesia Facility for Disaster Reduction (AIFDRDFAT)
Humanitarian OpenStreetMap Team (HOT)
All contents and materials on this document possibly changed without
public notice.
All contents and materials on this document is licensed as Creative
Attribution Australia (CCbyA).
You are free:
- to copy, distribute, display, and perform the work
- to make derivative works
- to make commercial use of the work
You must give the original author credit.
More information about CCbyA License:
Unit 3: OSM Intermediate Level | 2
About Us
Badan Nasional Penanggulangan Bencana (BNPB)
BNPB is Indonesia’s National Disaster Management Agency. BNPB is
a non-departmental ministerial-level government agency, tasked with
providing guidance and direction to the efforts of disaster
management that includes disaster prevention, emergency response,
rehabilitation, and reconstruction in a fair and equal. National Disaster
Management Agency has the function as a policy maker and
formulator and Refugee (IDP) management to act quickly and
appropriately and effectively and efficiently; and coordinating the
implementation of disaster management activities in a planned,
integrated, and comprehensive.
Australia-Indonesia Facility for Disaster Reduction
Unit 3: OSM Intermediate Level | 3
The Australia-Indonesia Facility for Disaster Reduction (AIFDR) is a
joint initiative between the governments of Australia and Indonesia.
We work to strengthen Indonesia's ability to reduce the impact of
disasters. The Australian and Indonesian governments at a special
ceremony on 15 July 2010 launched the Australia-Indonesia facility.
The launch marks an important event in the strong relationship now
shared by both countries and their united commitment to better
prepare for and respond to natural disasters in Indonesia.
Humanitarian OpenStreetMap Team (HOT)
Free, collaborative maps are uniquely valuable to humanitarian work,
especially in places where base map data is often scarce, out of date,
or rapidly changing. OpenStreetMap is a web project to create a free
Unit 3: OSM Intermediate Level | 4
and open map of the entire world, built entirely by volunteers
surveying with GPS, digitizing aerial imagery, and collecting and
liberating existing public sources of geographic data. The
Humanitarian OpenStreetMap Team (HOT) is an initiative to apply
the principles and activities of open source and open data sharing
towards humanitarian response and economic development.
Universitas Gadjah Mada (UGM)
Universitas Gadjah Mada (internationally known as Gadjah Mada
University; Abbreviation : UGM) is an Indonesian public ivy league
research university located in Yogyakarta, Indonesia. Department of
Geodetic Engineering, Faculty of Engineering focuses on education,
research, and commmunity services related to geodesy and geomatics
engineering, including acquisition, analysis, and uses of detailed and
accurate geospatial data and large-scale maps using open source
geospatial software for disaster management.
Unit 3: OSM Intermediate Level | 5
Every day thousands of people contribute to OpenStreetMap, a project with the
lofty goal of mapping the world. Most OSM software is free and open source, and
the data is open for anyone to use. The idea is simple: if you make a map of your
town and I make a map of mine, we can share those maps on a common platform.
With enough people contributing, we can make maps and collect data throughout
the world.
Collecting Spatial Data with OSM Intermediate Level Module is step-by-step
guide designed to help anyone who wants to increase their skill for editing OSM
data. This module might look difficult, especially for those who start knowing
OSM. So, we recommend that for those people to start reading Collecting Spatial
Data with OSM Beginner Level Module first before you read this module.
This guide is made for those who want to increase their technical skill during
editing OSM data, it also shows how to do geometry validation to reduce common
mistakes that might happen during editing process.
We hope it can be useful.
Unit 3: OSM Intermediate Level | 6
About Us...........................................................................................................2
Advanced Editing...............................................................................................5
Quality Assurance............................................................................................11
Resolving Conflicts...........................................................................................19
XML and Presets in JOSM................................................................................22
Wiki OpenStreetMap.......................................................................................40
Module 1
Unit 3: OSM Intermediate Level | 7
Advanced Editing
Learning Objectives
Using edit tools in JOSM
Creating relations between objects
Welcome to the intermediate guide for spatial data collection with OpenStreetMap.
In the previous unit you learned how to draw points, lines, and shapes in JOSM; how to
open your GPS waypoints and tracks in JOSM; and how to download, edit, and upload
your changes on OpenStreetMap. In this chapter, we will describe relations, JOSM
editing tools and editing techniques in greater detail.
Note: While this chapter is not extremely advanced, it is a step higher than the previous
chapters. If you don’t feel like you fully understand the lessons leading up to this, you
may wish to practice a little bit more before continuing.
Topics covered in this chapter:
I. Advanced Editing Tools
II. Relations
1. Advanced Editing Tools
There are a few ways you can access more editing tools in JOSM. We will look
more at the default tools, some plug-ins and then keyboard editing shortcuts.
1.1 Default Drawing tools
JOSM has some additional tools to make it easier to draw lines and shapes. These
tools are found in the “Tools” menu at the top of JOSM.
Unit 3: OSM Intermediate Level | 8
In order to apply the functions in this menu, you must first select a point, line or shape in
the map window. Some of the most useful functions are described here:
● Split Way: This allows you to divide a line into two separate lines. This is useful
if you want to add different attributes to different parts of a road, such as a bridge. To use
this function, select a point in the middle of the line that you want to split, Select Split
Way from the Tools menu, and your line should be split in two.
● Combine Way: This does the opposite of Split Way. To combine two lines into a
single line, they must share a single point. To use this function, select both lines that you
want to combine. You can select more than one object by holding the SHIFT key on your
keyboard and clicking on each line. When you have selected both lines, select Combine
Way from the Tools menu.
Unit 3: OSM Intermediate Level | 9
Note that f you are combining roads that have different directions, you might get this
If the roads are connected and go in the same direction, then choose “Reverse and
Reverse Way: This will change the direction of the line. If the line
incorrectly represents a road or river that is one way, you may want to change its
direction. Unless someone has intentionally created a way to be one way you do not
usually have to worry about altering the direction because ways in OSM default to
both ways.
Simplify Way: If your line has too many points in it and you’d like to
make it simpler, this will remove some of the points from a line.
Create Circle OR Align Nodes in Circle: If you are trying to make a
circular shape, draw the circle as best you can and then select three nodes and the
function. It will help arrange your points in a circle.
Unit 3: OSM Intermediate Level | 10
Align Nodes in Line: This function will align a series of points into a
straight line. With long lines it is best to select sections of the line to straighten. Be
careful as this does have the tendency to shift the line a little.
Orthogonalize Shape: This function is very useful for drawing regular
shapes such as buildings. After you draw an area, this function will reshape it to have
square corners. This feature is most useful for other regularly shaped features, such as
tennis courts, or landuse areas. (Using the Building Plugin, which will be explained
below, might be easier).
Unglue way: This tools allows you to detach nodes that are connected.
Note that the line and node will not actually appear separate as the last screen shot
1.2 Plug-ins
A. Building Plug-in
This plug-in is by far one of the most useful tools for editing (digitizing). Install it as
with any other plugin. It will appear as an icon on the left hand toolbar. The
functionality of this tool is explained here:
The Building tool allows you to create shapes with 90 degree corners with just three
clicks. First, you trace the edge of your building and then you drag out the line to make it
a polygon.
Unit 3: OSM Intermediate Level | 11
You can also create more complicated buildings by using the merge option. Create your
building outline, select all of the polygons (press SHIFT to highlight them all) and then
hit SHIFT + J to merge the objects.
Furthermore, you can also change the default settings (size and tagging) on the menu <<
Data >> and then at bottom of the "Set building size"
If you are dealing with a similar size of building, you can change building in certain
dimensions, such as 5 x 6 meter (unit in meter). Furthermore, if you mapping same
infrastructure, such as townhouses in same area, you can edit tags on <<Advanced>> tab
that all objects are mapped into same building tools.
B. Utilsplugin2 (More Tools)
The plugin utilsplugin2 has several features that are also useful for editing.
Unit 3: OSM Intermediate Level | 12
After you install this plugin, a new menu will appear called “More Tools.”
The following tools are generally the most useful:
Add Nodes at Intersections: This tool is very helpful for adding missing nodes
in intersections of selected ways. It is good practice that roads and rivers should always
have common nodes where they intersect.
Copy Tags from Previous Selection: This function makes copying tags easier. If
you want to create many objects with the same tags, first draw the objects. Then add the
tags to one object. Click on another object and press Shift + R to copy the tags from the
previously selected object. You can do this for all objects that you want to tag. Remember
that the tags will be copied from the previously selected object, so if you click on an
untagged object and then another untagged object, you will not be able to copy any tags.
Unit 3: OSM Intermediate Level | 13
Add Source Tag: This tool simplifies adding a source tag. It remembers the
source that was specified last and adds it as remembered source tag to your objects. You
can insert the source with just one click.
Replace Geometry: This tool is great if you want to redraw a poorly shaped
object, but want to keep the history, attributes and ID number of that object. For example, if
you come across a building that is complicated and drawn in a poor fashion, then instead of
painfully changing each node, you can (2) just draw the object again (3) select the old and
new object (4) press ¨Replace Geometry¨ to transfer all the information over.
C. Utilsplugin2
Also provides a new selection menu that provides more tools:
These tools have proved to be the most useful:
Unit 3: OSM Intermediate Level | 14
Unselect Nodes: This tool allows you deselect nodes, which makes it useful for tagging
the objects selected. This tool is necessary if you have mapped several polygon objects
with similar attributes and would like to tag the objects without tagging the nodes. To do
so, select all of the objects-- polygons, ways and relations-- unselect the nodes and tag
Select Last Modified Nodes: This tool permits you to go back to the nodes that you most
recently changed. It is like undo: node style.
2. Relations
In the first unit we learned that there are three types of objects that can be drawn in
OpenStreetMap - points (nodes), lines (ways), and polygons. Lines contain numerous
points, and the line itself carries the attributes that define what it represents. Polygons are
the same as lines, except that the the line must finish where it begins in order to form a
In fact, there is one other type of object in OpenStreetMap, and these are called relations.
In the same way that a line consists of other points, a relation contains a group of other
objects, be they points, lines, or polygons. If you are looking to obtain advanced editing
skills, then understanding and knowing how to properly edit relations is important.
For example, imagine that you want to map a building that has courtyards in the center.
You would need to draw a polygon around the outside of the building, and you would
want a other polygons around the courtyards to indicate that they are not part of the
building. This is an example of a relation. The relation would contain several polygons and the attributes of the building would be attached to the relation, not the polygons.
Relations are used to represent anything that requires a collection of objects to define.
Other examples are bus routes (a collections of lines), long and complex objects (rivers or
roads), or multiple polygons that are all part of one location (like buildings in a
Unit 3: OSM Intermediate Level | 15
There are mainly four types of relations you will encounter in OSM: Multipolygons,
Routes, Boundaries and Restrictions (such as, no left turns). In this section we will go
over Multipolygons and Routes.
2.1 Editing Relations
The multipolygon above contains a polygon for the outer limits of the building and two
more to mark the inner courtyards. To create a relation from these three polygons you
need to:
1. Select all of the polygons.
2. Go to Tools ‣ Create multipolygon
3. The polygons should automatically be created as a multi-polygon.
You will then see your building as a a solid shape with the inner polygons represented
with gaps. The data behind the relation in this example is visible on OpenStreetMap: You
can see this multipologyon on OSM by going to It will appear on
OpenStreetMap like this:
2.2 Another MultiPolygon
Unit 3: OSM Intermediate Level | 16
This river is another example of a multiploygon. Effectively it is the same as the building
example, but with a greater number of members and covering a much larger area. It can
be viewed on the OpenStreetMap site here: This river contains ten ways that
are connected like a long polygon.
2.3 Linestring Relations
Relations are also very useful for creating, labeling and editing large linestrings; for
example, bus routes, hiking trails, bicycle paths, etc. These differ from multipolygons
because they are relations with members, as supposed to complex areas. A linestring
could simply be one line with multiple members, these can be tagged as such. Additional
features, such as bus stops represented by separate nodes can also be tagged as relation
Unit 3: OSM Intermediate Level | 17
1. Make sure that all of the ways in which the route runs along are appropriately tagged.
For example, highway= footway.
2. Select all of the highways or ways that the bus takes. If you would only like to select
certain parts of the way, then, sadly, you must divide the way into the section you would
like to select. This creates more work, but you can easily do it with the ¨Split Way¨ tool.
Once some or all of the ways are selected, click Edit in the relation panel. The relation
editing dialog will pop up.
3. Go to the Presets Menu and down at the bottom click ¨Public Transport¨ and then ¨Route¨
or ¨Route Master¨. Route master is the main route that a bus takes, while route is a
variant path of the bus.
4. Fill in the corresponding information about the bus route.
Unit 3: OSM Intermediate Level | 18
Relations are difficult to understand and do not have to be used often, but they are
necessary to know about. As you get more developed with your OSM skills and want to
create more complex building, river and routes, relations will be useful.
Unit 3: OSM Intermediate Level | 19
Module 2
Quality Assurance
Learning Objectives
Applying editing tips and standardization presets to ensure the quality of the
resulting data
Using validation tools in JOSM
Using online validation tool (keepright)
Contributing to OpenStreetMap is easy to learn, but difficult to master. Everybody
makes mistakes, but the system works because even when one person does something the
“wrong” way, there are always other mappers ready to help and fix errors. As you map
more and more, it will continue to get easier, and you will learn the “proper” way to do
things. In this chapter we will take a look at the JOSM validation tool, which is an
automated tool to search for errors and warnings in your data. We will also take a look at
one of the online validation tools, which can aid us further in identifying mistakes on
1. Errors and Warnings
Sometimes when you go to upload your edits you get a pop-up window like this:
Unit 3: OSM Intermediate Level | 20
This is JOSM’s way of telling you that there is suspicious data and that you might want to
review the errors and warnings before uploading to OSM.
JOSM comes with a tool that does an automated analysis of possible mistakes. This
is useful for finding errors that you may have overlooked. When you run the validation
tool, it will return two lists of problems:
Errors: These are important to fix, and therefore usually you should not ignore these.
Examples of errors include duplicated objects or overlapping lines and polygons.
Warnings: These are problems that are important to fix, but in some cases, they are
One thing to note is that if you download a large area of the map and run the
validation tool, you may get a very long list of errors and warnings. This is because the
validation tool works on the whole map-- not only the changes that you have made. So
you may see mistakes that other mappers have made, and you can fix them, or ignore
them. But the validation tool gives you the opportunity to look at the mistakes one by
Validation Tool
Let’s see how to use the validation tool:
In JOSM, download a section of the map.
If you don’t see the “Validation Results” window in the right panel, click on the blue
checkmark on the left to show it.
Unit 3: OSM Intermediate Level | 21
Ensure that nothing on the map is selected. If you run the validation tool with anything
selected, it will only validate what you have selected, and not the whole map.
Hover your mouse in the validation window and click “Validation.”
The map will change and any warnings will be circled in yellow, errors in red. In the
“Validation Results” window you will see a list of warnings and errors, if there are any.
Errors should almost always be fixed. You can zoom to an error, by right clicking on it in
the window and selecting “Zoom to Problem.” Then you can fix the mistake manually.
Some errors can be automatically fixed, such as “Duplicated nodes” errors. You can click
on the folder for these types of errors and click the “Fix” button in the window. Many
errors, however, need to be corrected manually.
Usually there are many more warnings than errors. By giving you a warning, JOSM is
telling you that it is probably a mistake, but not always. So you will need to use your
judgement to see if it is an error or not.
If you select a warning from the list and decide that it is not a problem, click “Ignore” and
it will be removed from the list.
You can re-run the validation tool at any time by clicking “Validation.”
3. Tasking Manager
Unit 3: OSM Intermediate Level | 22
HOT Tasking Manager, a tool that mappers can use to sort an area into a grid, and
work together to map an area in an organized way. Aside from being more organized, the
tasking manager is also one way to avoid conflicts, because it is impossible for more than
one person editing the same area.
One consistent challenge is coordinating field and/or remote workers to map an area
together. To help address this, HOT has developed an OpenStreetMap Tasking Tool to
make it easier for administrators to define the areas of mapping interest and to delegate
workers. The idea behind this tool is that if there is an area, let’s say a city, that we want
to map, and we have some people mapping on the ground, and some people mapping
remotely using satellite imagery, this tool will allow us to create a grid of the entire area.
Collaborators can select blocks in the grid that they plan to map, and when they finish,
they can mark that area as complete. In this way a team of many people can coordinate to
map the entire grid
To see how the tasking manager works, let’s take a closer look.
Open your Internet browser and go to You will see a page like this:
Click “Log in using your OpenStreetMap account >>”
Here you are agreeing to allow this application some access to your OpenStreetMap
account. Click “Save Changes.”
Unit 3: OSM Intermediate Level | 23
Now you will see the current list of projects. These are different places that people are
coordinating to map.
Click on one of the projects to see more information about it.
This page shows you everything you need to know about the project. On the left side of
the page is a description of the mapping project and how it is being organized. You can
click on the different tabs to get more information. On the right side is a grid showing the
area to be mapped. Red grid squares have been completed, green squares have been
Unit 3: OSM Intermediate Level | 24
completed and checked by another person, and the remaining squares still need to be
mapped or are being worked on. By clicking on the “Workflow” tab, you can get
information about how collaborators are meant to help map. By clicking on “Task,” you
can take a grid square to work on yourself.
Here you see a view of the square that you have offered to map. You can automatically
open the area up for editing with JOSM, Potlatch 2, or create a Walking Paper.
If you plan to edit with JOSM, you need to enable a JOSM plugin before you will be able
to launch the application from the Tasking Manager. To do this, open JOSM and go the
Preferences menu. Click on the “Remote Settings” tab and check the box next to “Enable
remote control.” Restart JOSM.
Unit 3: OSM Intermediate Level | 25
Go back to the Tasking Manager and choose JOSM. If you have JOSM open and you
correctly enabled the remote control, the grid area of the map you selected will
automatically be loaded into JOSM.
You may now edit the area using the instructions provided in the project information.
When you are finished, you can return to the tasking manager website and add comments
about your changes. Click “Mark task as done” to let other collaborators know that you
have finished this grid square. If you were unable to complete the task, click “Unlock it”
to make it available again for other mappers.
Unit 3: OSM Intermediate Level | 26
If you are wondering what happens when you finish an area, the grid square will turn red
on the map to indicate that is done. Someone else will then look at your work to make
sure it is good, and if they agree that you’ve completed the square well, the grid square
will turn green, meaning it is complete!
Editing Tips
In this section we will go over some common mistakes in JOSM and provide some
editing tips for making your maps great!
Some Objects Should Not Connect
When you are creating polygons and lines that are not supposed to be connected, make
sure that they are not merged together by sharing a node. For example, highway nodes
should not be snapped to buildings, because no one likes a road that leads directly into a
wall! If you want to disentangle two or more obejcts that share the same node, select the
node and press G.
But, Some Objects Should Connect
However, some objects SHOULD connect! Road intersections should always be
snapped together. If two roads do not share a common node, then the computer has
no way of knowing that the roads actually connect to each other.
Overlapping Objects
A common error is to have overlapping polygons when the objects they represent do
not overlap in real life. A building cannot overlap another building. This mistake is
commonly made with buildings and landuse polygons. For example, a polygon
drawn to represent a park outside a building should not overlap with the building.
Instead it should be drawn next to the building.
Unit 3: OSM Intermediate Level | 27
There are some exceptions to this rule, such as schools. Within a school yard you
might identify individual buildings using polygons, yet you also might want to create
a polygon around the entire school yard. In this case it is fine for the polygons to
overlap, but the rule to follow here is to make sure that the buildings are completely
inside the landuse polygon.
We all make mistakes, and as you map more you will make less mistakes! Just
remember that even if you upload data that contains mistakes, it is simple to fix your
mistakes and upload the change again. This is what is great about OSM, you can
always make it better!
Tracing Correctly
OSM can do amazing things with identifying where objects end and what labels these
objects should have; however, it needs your help in doing so. For example, if you
create a road that turns into another road without a distinct node, then JOSM will
continue labeling the road as the previous one. Therefore, it is necessary that you
make all of your roads and objects as clearly and rigid as possible.
Unit 3: OSM Intermediate Level | 28
We will conclude this section with additional tips:
Rotate object: If you hold CTRL + SHIFT and hold while sliding your mouse, then
you can rotate the selected object.
Ways that are not closed - usually a line that does not form a polygon. Common
examples are buildings where the first node does not meet the last node.
To fix this, select both nodes and go to Tools ‣ Merge Nodes to connect them.
Crossing Buildings (Overlapping Buildings) - buildings that overlap each
To fix this, move the nodes of one of the buildings outside of the other building.
Untagged Nodes or Ways - If someone draws a point or a line but forgets to give it
any tags, then it is useless, because it doesn’t mean anything.
Unit 3: OSM Intermediate Level | 29
To fix this, apply tags to the object to identify it, or delete it if it is a mistake.
End node near another way - If a line ends very close to another line but does not
connect, this raises a warning. Many times this warning is not important, but it helps
to find road intersections that are supposed to connect but do not.
Crossing ways - Lines that cross other lines without being connected will raise
warnings. Many times this is not a problem, because the crossing ways are
intentional - such as in the case of bridges, or streets and rivers that cross landuse
polygons. It is sometimes helpful, however to find errors.
Unit 3: OSM Intermediate Level | 30
OpenStreetMap depends on people correcting and editing mistakes. Editing and
validating data is important for improving maps. If you do not have time to get in the
field with a GPS or trace imagery, validating objects and attribute data is a good way to
5.Standardization Presets
OpenStreetMap allows the users to give as much informations as they can to their
map. These informations can be attached to every objects that they mapped using
presets menu that is available in OSM editor. Many times we found inconsistency in
some objects information. That’s why we should make a presets standardisation.
The presets standardisation purposes are:
1. Assuring data consistency and stability
2. Easier data search and analysis
3. As a standard in giving information using presets
4. As a benchmark if we want to make improvements or data validation
5. Maximizing the use of Internal Presets that are available in JOSM
6. Maximizing data visualisation on OpenStreetMap website
With this preset standardisation, hopefully all OSM users are willing to use this
preset when they edit their maps. One of the benefit if we use the internal preset that
is available in JOSM is the visualisation will show up on OpenStreetMap website.
You can find the list of these standard presets in the Appendix.
6. KeepRight
The Keep Right website is another useful validation tool for OpenStreetMap. Open your
web browser and head to
You can switch the site into Indonesian by choosing “id” from the dropdown box in the in
the upper right.
Unit 3: OSM Intermediate Level | 31
Click on “Pengecekan data untuk Asia” to check the OSM data in Asia. This will open up
a slippy map with errors displayed on it. You can navigate to your area of interest by
using the zoom and pan functions.
The types of errors are listed on the left of the map. You can get more details about each
error by clicking on the icons which hover above the map.
Unit 3: OSM Intermediate Level | 32
After you find territory and find out his mistake. Certainly next step is to fix the
error. First step, make sure you have selected an error/lightning (by left click on
the lightning image). After that, determine where you would fix the error,
whether on the "JOSM" or "Potlatch". Note: we recommend that the editing in
JOSM, because its editing features are more complete.
In order to fix one of the errors, you can click on the links to edit in either JOSM or
Potlatch. Note that to edit in JOSM you must have the JOSM Remote Control enabled.
Setting “Remote Control” JOSM
Unit 3: OSM Intermediate Level | 33
Before you start working with "Keepright", make sure you have enabled
"Remote Control" in JOSM. To check this, open your JOSM, then select the
menu "Edit" > "Preferences". Once the window "Preferences" appears, select
the tab "Remote Control"
Next, you will see the window like this
Unit 3: OSM Intermediate Level | 34
Image (a)
Image (b)
Check box in the left of "Enable Remote Control" is checked / enabled. In Image
(a) the "Enable Remote Control" is not activated. If not, please checklist the box,
such as Image (b). Click OK and Restart JOSM. Furthermore, you can work with
Unit 3: OSM Intermediate Level | 35
Now, open JOSM you will see that JOSM now been content with data that we
have chosen earlier on the site "KeepRright".
Make sure JOSM is open
Now OSM data from
“KeepRight” delivered to your
Immediately fix to existing errors. How do I fix and what tools are needed to fix
it??? It all depends on the type of error. If you forget, go back material on
"Advanced Editing" and "Quality Assurance"
After fixed the error, return to website "" to confirm error
has been fixed or not. If you've fixed the error, select (by left-clicking) on the top
radio button option.
Unit 3: OSM Intermediate Level | 36
Unit 3: OSM Intermediate Level | 37
Module 3
Resolving Conflicts
Learning Objectives
Explain reason conflict occur when upload OSM’s data
Resolving conflict when upload OSM’s data
Explain how to avoid conflict when upload OSM’s data
Sometimes you are working in JOSM and when you upload all of your beautiful edits you
get a nasty message complaining about a conflict.
What happened is that you downloaded a bunch of data, which included a point which we
will call Node A. Then while you were editing, somebody else also downloaded Node A,
changed it, and saved the changes back on OpenStreetMap. Now when you try to upload
your version of Node A, it is different from the one saved on OSM. Therefore JOSM
doesn’t know which version of Node A should be saved.
1. Conflicts
Sometimes, JOSM is able to figure out what to do with conflicts on its own, and it will
give you a message like this:
Unit 3: OSM Intermediate Level | 38
This means that JOSM has automatically decided that items in your local dataset will not
be uploaded to main server because they have already been deleted by another user.
In some conflicts, however, there is no easy action for JOSM to take and so it leaves the
decision up to the user to determine what the best course of action is. This means it is up
to you to resolve the conflicts.
This tells you to look at all of your conflicts in Layer 1 in the Dialog List box.
This window provides you with a warning as to whether you are likely to experience a
conflict with your edits. If you check on the server you will be able to fix the editing
issues that would arise.
This warning tells you that JOSM failed to delete a node due to it still being referenced in
a way. In order to remedy this, the user has to go back into JOSM and resolve the
conflict before uploading the data.
Unit 3: OSM Intermediate Level | 39
2. Resolve Conflict
The process of resolving a conflict is quite simple, although it can appear quite confusing
at first in JOSM. Basically, for every conflict JOSM will present you with two choices your version of an object and the one that is on the server. You need to choose whether to
keep your version, or whether the new version on the server should remain.
You might think, “of course my version is going to be better!” And maybe you’re right.
But think back to our example at the start of this chapter. Perhaps while you were busy
editing, another mapper added a lot of information to one of the nodes in your data set. If
you choose your version over their version, you will lose all of that valuable information
that they added. Hence you should consider keeping their version, or merging it with
When you get a conflict window pop-up, it is best to choose the button “Synchronize ...
only.” You may need to do this for more than one object, but it is best to resolve conflicts
one at a time.
Once you click this button, you will get a pop-up window that details your conflict. The
error message may look complicated, but it is rather simple. You will know what type of
conflict you have by the symbol
in the top tab. The conflict in this example refers to
the properties, such as the location and existence of the object. This is why the
coordinates and deleted state are listed.
Types of Conflict:
Properties: Object has been moved (coordinates) or deleted
Tags: Tags do not match
Nodes: There is a differences in the list of nodes in two ways
Members: There is a difference in the list of members in a relation
Unit 3: OSM Intermediate Level | 40
Conflicts only appear with two different edits at a time. If there are three or more
conflicts, then a chain of conflicts will pop-up. Therefore you have to choose or merge
with only two conflicts at a time. You can choose your version, the other version or, at
times, merge the two.
In this example you do not have the option of merging. Click on the first column, or My
version if you believe that your edits are correct. Click on Their version if you think
that the other edits are better.
Once you have selected which version you think is best, then click “Apply Resolution.”
A few more windows will pop up and you will be on your way toward being able to
upload your edits.
Unit 3: OSM Intermediate Level | 41
Do some more editing. Then click ‘Upload’. You will get a pop-up that says:
On your Windows menu you have a Conflict List Dialog
. This window displays a
list of conflicts. The total number of unresolved conflicts is shown in the header. You can
select or resolve a conflict by clicking on it. This is useful when you have many conflicts
to deal with.
You cannot upload your changes until this list is empty.
3. How to Avoid Conflict
Upload Frequently
To minimize the chance and number of conflicts it is important to upload your edits
regularly. Conflicts appear more frequently for those who tend to save the area they are
working on in their local server and wait a while to upload it. It is best to download the
area you are working on, edit it and then immediately upload it. The longer the time
between downloading data and uploading changes to that data, the more likely it is that
someone has edited something in the meantime.
Edit in the Area You Download
Editing in the specific area you have downloaded minimizes conflict risk. Make sure you
do not edit outside of the area that you have downloaded. You can easily see which areas
outside your download area in JOSM, because the background is made up of diagonal
lines instead of being solid black.
Unit 3: OSM Intermediate Level | 42
Unit 3: OSM Intermediate Level | 43
Module 4
XML and Presets in JOSM
Learning Objectives
Explain definition and a tag function
Explain definition and a xml function
Explain definition and a key and value function
Create presets
Input a preset file to JOSM
Apply new presets to object
By now you probably have a good understanding of how objects are drawn in JOSM,
and how you add information to these objects to describe what they are. You add
attributes to a point, line, or shape by attaching tags to it. By using the JOSM presets
menu, you can easily attach the correct tags to an object by finding the type of object you
want to create through a menu, and then filling in information in a form. In this chapter
we will review tags and presets once more, and then learn how we can create our own
presets menus to use in JOSM.
1. Tags and Presets
Remember that after you draw an object on the map in JOSM, you need to attach tags in
order to describe what it is, it’s name, and any any other attributes. For example when
you want to create a clothing shop with the name “Some Clothing Shop”, you need two
tags - one to describe the point as a clothing shop, and one to hold the name. In JOSM,
the tags are shown in the Properties window when an object is selected.
Tags consist of two parts, the key and the value. The key typically defines the type of
information you are attaching, and the value defines the specific object. Here, we have
two tags, and hence two pairs of keys and values.
Unit 3: OSM Intermediate Level | 44
name = Some Clothing Shop
shop = clothes
When we create a point with these tags, JOSM knows to display the icon like this:
And when we look at this on the website, the object looks like this:
The reason this works is because we’ve applied the appropriate tags.
Because OpenStreetMap is so open, anybody can add any tags they want to
anything. But what happens when mappers in England disagree with mappers in Japan
about the best way to tag something? For example, it is important that all schools have
the same tag describing it as a school. If some people tag schools as amenity=school but
others tag them as education=school, it is a problem. Hence, people must agree on how
to tag places.
OpenStreetMap has been around for many years now, so there is an accepted
standard for how to identify most types of locations, and those are listed on the Map
Features page on the OSM Wiki.
Unit 3: OSM Intermediate Level | 45
This web page has grown longer and longer over the years as people have sought
to map more and more things and have needed more tags to do so. It is impossible to
remember all of these tags, and quite a hassle to look them up every time you need them.
Hence, JOSM has a Presets menu which makes it much easier to apply the correct tags to
an object. With the Presets menu, we can easily find the entry for school, enter
information into a form, and not have to worry about whether the correct tag is
amenity=school or education=school or something else entirely.
Notice that when you add attributes using the presets menu, the correct tags are
automatically added in the Properties menu on the right.
JOSM comes with most of the presets that you will need already loaded, but sometimes
you may want to add your own presets to create tags for the specific type of data you are
collecting. The remainder of this chapter will explain how to create a custom Presets
2. Introduction to XML
In order to create our own Presets menu, we first need to understand a language called
XML. XML, which stands for “Extensible Mark-up Language”, is language similar to
HTML. The key difference is that XML is designed to carry data, not display it. Many
applications on the internet use XML to transmit data, including OpenStreetMap. XML
uses elements, and each element can contain child elements inside it. For example, let’s
imagine that we want to create an XML file that contains data about a restaurant menu.
We must create a root element to contain all the data about our menu. Our root element
will have an opening and a closing tag, like this:
Unit 3: OSM Intermediate Level | 46
... whatever data we want to include in our menu ...
Information is contained inside an element, and within each element there can be more
<item name=“Hamburger”>
<description>Delicious beef patty with cheddar cheese</description>
<item name=“Nasi Goreng”>
<description>Traditional Indonesian Fried Rice</description>
In this example we have placed two <item> elements within our <menu> element to
describe two different items that are contained in the menu. Each item contains two more
elements in them, <cost> and <description>. Notice also how we have written
name=”Hamburger” inside the opening <item> tag. This is called an attribute, and adds
information about the element.
XML Terminology
root element: the outermost element of an XML document, which describes what is
element: any XML object, contained by opening and closing tags, such as <item> ...
data ... </item>
Unit 3: OSM Intermediate Level | 47
tag: something contained in brackets, such as <item>. <item> is the opening tag of an
element, and </item> is the closing tag
attribute: a piece of information contained inside a tag, such as name=“Hamburger”
Using XML to hold and transmit data is great because it is easy to understand for
computers. To provide one more example, this is what the XML might look like for the
point we created in JOSM previously:
<node id="6799999167" lat="-8.7542864" lon="123.5516224" user="rukeli"
uid="923929" visible="true" version="4" changeset="8343565" timestamp="201106-04T21:50:42Z">
<tag k="name" v="Some Clothing Shop"/>
<tag k="shop" v="clothes"/>
This XML has a root element <osm> which indicates that OpenStreetMap data is
contained inside. Then it has one <node> element which is the OpenStreetMap way of
describing a point. The node has numerous attributes, including a unique id number, the
coordinates of the point, the user who created the point, and some additional information
which we will not discuss right now. Between the opening <node> tag and the closing
</node> tag there are two more elements of type <tag>. Each <tag> has an attribute k
and an attribute v. These are the keys and values that we added in JOSM. Notice that the
<tag> elements don’t have a closing </tag>. This is because they don’t have any other
elements contained within them, but instead have a forward slash indicating that it does
not require a closing tag. <tag ...attributes />
3. JOSM Presets Files
As you’ve already discovered, JOSM comes pre-loaded with a presets menu that includes
most common types of geographic options. But sometimes you want to add additional
presets for specific information that you want to collect. You can create your own presets
Unit 3: OSM Intermediate Level | 48
menu by writing it in XML, and then loading it in JOSM. First, let’s look at how we can
load additional presets menus into JOSM.
Open JOSM and open the Preferences menu by going to Edit ‣ Preferences.
Click on the third icon from the top which looks like this:
Click on the third tab labelled Tagging Presets.
Select “Buildings by Kate Chapman” and click on the right arrow button to add it to
Active presets.
Click OK.
Restart JOSM.
Create a new layer by going to File ‣ New Layer.
Create a point and make sure it is selected.
Go to the Presets menu. You should now see the presets that you added at the bottom.
Click on “Building” to see the the building presets form.
Unit 3: OSM Intermediate Level | 49
When we added these new presets through the preferences menu, what we were doing is
adding an XML file that describes how the new menu should behave. In the next
sections, we will learn how to create our own XML presets file that we can load into
4. A Sample Presets File
To understand how a presets file is written, let’s first look at the XML for one of the preloaded presets in JOSM. When you go to the presets menu and select Facilities ‣ Culture
‣ Place of Worship you will see a form like this:
The XML for this form looks like this:
Unit 3: OSM Intermediate Level | 50
href="" />
<label text="Edit Place of Worship" />
<key key="amenity" value="place_of_worship" />
<text key="name" text="Name" default="" delete_if_empty="true" />
<combo key="religion" text="Religion"
nitarian,zoroastrian" default="" delete_if_empty="true" />
<combo key="denomination" text="Denomination"
default="" delete_if_empty="true" />
<combo key="service_times" text="Service Times" values="Su 10:00,Su
10:30,Su 11:00" default="" delete_if_empty="true" />
<combo key="opening_hours" text="Opening Hours for visiting"
values="24/7,Mo-Fr 08:30-20:00,Tu-Su 08:00-15:00;Sa 08:00-12:00" default=""
delete_if_empty="true" />
This may look complex, but it is not as difficult as it may seem. Let’s walk through it
line by line.
The first line is the opening tag of our root element <item>. There are several attributes
describing the element.
name="Place of Worship"
The name of what you are creating.
The icon of the object. PNGs are the most
effective in OSM since they are compressed
low-color graphics with transparent
Unit 3: OSM Intermediate Level | 51
The types of object that this preset can be
applied to. Node means it can be applied
on a point, way means it can be applied to a
line, closedway means it can be applied to a
shape, and relation means it can be applied
to a relation, which is a type of OSM object
we have not discussed. Notice that way is
not an option here, because a place of
worship cannot be a line - it must be a point
or a shape.
The second line provides a link to the OpenStreetMap wiki page for this type of location.
<link href="" />
The third line has the tag <label> and describes what text should be shown at the top of
the form.
<label text="Edit Place of Worship" />
The fourth line describes a tag that will automatically be applied to the object when the
preset is selected. In this case, we want the object to have the tag
<key key="amenity" value="place_of_worship" />
The fifth line describes the first thing that will be shown on our form, and how to create a
tag when it is filled in. The tag is <text> which indicates that the form should have a text
box for the user to fill in. The attribute key=“name” describes what key should be used
when the tag is created. The value will be whatever the user enters in the text box. The
attribute text=“Name” describes what should be written on the form next to the text box.
The final attribute indicates that no tag should be created if the text box is left empty.
<text key="name" text="Name" default="" delete_if_empty="true" />
The lines after this are similar, but instead of text boxes, dropdown boxes are created
where the user can select from different options. The tag used for this is <combo>
The final line of the XML is the closing tag </item>
5. Creating Your Own Presets File
Now follow along as we create our own presets file. We will create an example presets
menu which will allow us to tag buildings or points according to the type of utilities
access that they have available. For this, let’s invent some new tags:
Unit 3: OSM Intermediate Level | 52
Possible Values
well, municipal, yes, no
Does the household have access to
water? well indicates it has access to
well water. municipal indicates it has
pipes running to it. If we want to be
less descriptive, we can select yes or
no to indicate if the building has water
yes, no
Does the household have electrical
landline, mobile, yes, no
Does the hosuehold have phone
access? landline indicates that there is
a hard phone line in the house. mobile
indicates that the household has a
mobile phone. If we want to be less
descriptive, we can use yes or no
landline, mobile, yes, no
Same values as for phone, this will
indicate if the household has internet
When the preset we create is selected, we will also automatically add the tag
building=yes, and we will create a tag with the key name that the user can fill in with
using a text box.
Now look at the possible tags we have described in the table above. What is the
best way to represent each of these on the form? For name, we want to create a text box,
because the user can fill in any name that they want for this tag. For utility:water,
utility:phone, and utility:internet, there are four possible values that the user can select
from on our form, so the best way to add this is with a combo box - that is, a dropdown
menu where the user can select one of the options. The tag utility:electrical only has
two possible values, yes or no, so the best way to show this on our form is with a
checkbox, although we could use a dropdown box if we wanted as well. When we are
finished our form should look like this:
Unit 3: OSM Intermediate Level | 53
Open a text editor and follow along as we create the XML for this preset. A simple and
common editor to use on Windows is called Notepad. DO NOT use a word processing
program like Microsoft Word.
First, we need to create a root element in our XML so that JOSM knows it is a presets
Next let’s create an element called <group>. This is not actually necessary because we
are only creating one preset, but it will demonstrate how we can create submenus with
many different options on our presets menu. Don’t forget to add the closing tags
</group> and </presets> to your elements.
Unit 3: OSM Intermediate Level | 54
Now we can create an item on our menu. We want to create an <item> element inside of
the group element. Add the following text:
<item name="Household">
Inside the <item> element we will add the text box, combo boxes, and check box that we
want on our form. Add the following inside your <item> element:
<item name="Household">
<key key="building" value="yes"/>
<text key="name" text="Name" default="" delete_if_empty="true"
<combo key="utility:water" text="Water Access"
values="well, municipal, yes, no" default=""
delete_if_empty="true" />
<check key="utility:electrical" text="Electricity Access" />
<combo key="utility:phone" text="Phone Access"
values="landline, mobile, yes, no"
display_values="Landline Phone, Mobile Phone, Yes, No" />
<combo key="utility:internet" text="Internet Access"
values="landline, mobile, yes, no"
display_values="Landline Access, Mobile Internet Access, Yes,
No" />
When you are finished your file will look like this:
Unit 3: OSM Intermediate Level | 55
Much of this is similar to what you saw previously. Let’s analyze it. Inside the <item>
element we have created six more elements:
1. <key>
2. <text>
3. <combo>
4. <check>
5. <combo>
6. <combo>
Can you guess what each of these elements do? They create different items on our
presets form in JOSM. The first line, <key key="building" value="yes"/>, does not
display anything on our form, but tells JOSM to automatically apply the tag building=yes
to our object when this preset is selected.
The second line, <text key="name" text="Name" default=""
delete_if_empty="true" />, creates a text field with the key name, as we saw when we
looked at the presets XML in the previous section.
We have three <combo> elements and each elements has several attributes. key
indicates what key should be created for the tag. text indicates what text should be
Unit 3: OSM Intermediate Level | 56
displayed on our form. values are the possible values that the user can select in the
dropdown box. And we’ve added something new - the attribute display_values, which
let’s us show different text in the dropdown boxes than the values that will be created.
This is useful if we want the form to be more descriptive about the the options a user can
select, or if we want the display values to be in a different language from English.
Lastly, we’ve added one new element, a checkbox. The code for this is simple,
<check key="utility:electrical" text="Electricity Access" />. This simple creates a check
box on our form. When it is selected, JOSM will add a tag to our object that says
Finally, let’s save the XML file so that we can load it into JOSM. In Notepad, go to File
‣ Save.
Type in household_access.xml as the filename.
In the box that says “Save as type:” be sure to select “All Files”, because we don’t want
to save the file as a text document, but rather as an XML document.
Click Save
6. Try It!
Now let’s open our presets file in JOSM and see how it looks!
Open the Preferences in JOSM and go to Tagging Presets, as you did previously.
On the right side next to Active presets click on the + button.
Type “Household Presets” into the Name field.
Next to URL / File, open the xml file that you just created.
Click OK, and OK again to save your preferences.
Restart JOSM.
Create a new layer and add a point.
Go to the presets menu. You should see the menu that you just created!
Unit 3: OSM Intermediate Level | 57
Unit 3: OSM Intermediate Level | 58
Module 5
Using Private Datastore
Learning Objectives
Explain the private data store function
Explain the data type can be published and the data is private
Install the plug-inprivate data store into JOSM
Using the plug-inprivate data store in the shorting of public data and private
Access the online datastore
OpenStreetMap data is open and available to anyone who would like to access it.
However, there may be times when you want to use OpenStreetMap to collect data, but
you would like to keep some attributes stored in a private database. For this, HOT has
developed an additional tool for JOSM known as the SDS (Separate Data Store).
The SDS allows you to create maps and add data into JOSM the same as always, but
when you upload your edits, public data will be saved to the OpenStreetMap database,
and private data will be saved separately to the HOT Datastore.
How the SDS Plugin works with JOSM
Data uploaded to the private HOT Datastore is only accessible to people who
have an account at This chapter is designed for people who already
have an account and desire to store private geospatial information, such as household
income, personal health care data, or the location of gold mines. If you do not have a
HOT Datastore account or if you want to set up your own private datastore server please
contact Kate Chapman (
Unit 3: OSM Intermediate Level | 59
1. Installing the SDS plugin
This plug-in allows private data to be streamlined into the private data store. The newest
version of JOSM is required for the SDS plugin to run. (If you do not have a recent
version of JOSM, download and install it from If you
cannot install the latest version, go to the Appendix to see how you can install this plug-in
by source).
Open the preferences menu in JOSM and go to the plugins tab.
Click “Download List” to ensure that all available plugins are
In the search box, type “sds”.
Check the box next to the plugin to activate it. You will need to
restart JOSM.
If JOSM is open, restart it.
Installing SDS Plugin by Source
If you are unable to find the “sds” plugin on the Preferences menu, you may need to
install it manually as described here:
Download the sds plugin by going to and clicking on
Click on the Start Menu and type “%APPDATA%” into the
search box. Click on the folder named “Roaming.”
Unit 3: OSM Intermediate Level | 60
In the window that opens, double-click on “JOSM” to open the
JOSM program files.
Double-click on the “plugins” folder to open it.
Move the sds.jar file into this folder.
2. Using the Plugin
Editing the map works just the same as before. The only difference is that when you
upload changes, some tags will be automatically saved on the private datastore, and the
rest will be saved directly onto OpenStreetMap.
After installing the plugin, the first time you download data you
will be asked for your HOT datastore username and password.
Unit 3: OSM Intermediate Level | 61
In order to use the plugin, you need to enter your username and
password. To save them, check the box next to “Save user and password.”
The private datastore is now working. When you upload
changes, the usual tags will be saved to OSM, and special private tags will be saved
to the datastore.
3. How It Works
How does the plugin know which data you want to store on OpenStreetMap and which
data you want to store publicly? Quite simply, it knows because of the tags. Normal tags
go to OpenStreetMap, as always, but you can use new tags with a special prefix that will
be sent to the private datastore. By default, any tag that begins with the prefix “hot:” will
go to the private datastore. If you open the Preferences menu you will see a new tab on
the bottom for SDS plugin options:
Unit 3: OSM Intermediate Level | 62
There are some basic settings here. By default the server URL is set to the HOT
datastore, and your username and password can be saved here as well. The line labelled
“SDS tag prefix” contains the prefix that will cause tags to be saved on the private
datastore. By default it is “hot:”
When you create or edit an object on the map, you can apply tags like this:
In this case, the first two tags will be saved on OSM. The third tag, because it
has the prefix hot: will be saved on the private datastore.
You will most likely collaborate with others when using the private datastore, so
you will have a standard list of tags to use for the specific data your are collecting. These
tags can then be made into a presets menu, which will provide an easy-to-use form for
adding both public and private data.
4. Access the Datastore Online
Just like, you can access the online datastore directly, by
visiting and logging in with your username and password.
Unit 3: OSM Intermediate Level | 63
4.1 Private Data Store Users
There is 2 types of Data Store users. They are Admin who can add new projects or
users onto SDS and Personal are regular users who joined on some project that using
SDS. This is the screenshoot :
4.2 Figure of Using Private Data Store and JOSM
Unit 3: OSM Intermediate Level | 64
4.3 Editing Data Store Online
You can edit your data in SDS online. These are the steps :
Open this site h
Username : (Personal)
Password : osmidpersonal
Clik tag search
Add 'String' which is a name when we saved the sds tag and click search
Unit 3: OSM Intermediate Level | 65
You only can edit the objects attribute that has saved in JOSM but if you want to
delete objects you must to use JOSM.
Click Save Tags
4.4 Add data on Data Store Online
You can directly add your data on Data Store. These are the steps :
Click Map Search and Load OSM Geometries
Unit 3: OSM Intermediate Level | 66
After that add/edit information about object that chosen by you
Unit 3: OSM Intermediate Level | 67
After you finish click Save tags
Unit 3: OSM Intermediate Level | 68
4.5 Add and Edit User on Private Data Store
Open this site :
Username : (admin)
Password : osmidceria
Click user administration
Click Add New User
Unit 3: OSM Intermediate Level | 69
Click Save if you finished
Edit Users
Click user administration
Unit 3: OSM Intermediate Level | 70
Click "Eye Symbol" in the left box
Click Edit User
Unit 3: OSM Intermediate Level | 71
4.6 Add Project on Private Data Store
Click Project
Click Create New Project
Next you have to write Tag Fields Definition in JavaScript Object Notatioan (JSON)
language. You have to translate Extensible Mark-up Language (XML) language at Preset
that you want to use into JSON language.
Let's see the difference between XML Preset and JSON
Unit 3: OSM Intermediate Level | 72
1. If your preset use ELEMENT COMBO, MULTISELECT or CHECK KEY it must
converted with format
{"type":"select","tag":"YOUR KEY","en":"YOUR COLOUMN TABLE
NAME","option":["VALUES 1","VALUES 2", "DST.."]},
Example (first is XML, second is JSON)
2. If your preset use ELEMENT TEXT, it must converted with format
{"type":"text","tag":"YOUR KEY","en":" YOUR COLUMN TABLE NAME"},
Example (first is XML, second is JSON)
Unit 3: OSM Intermediate Level | 73
Write your tag definition into JSON language at the available row of Tag Field Definition
Click Create Project if your finish
You can upload your presets in your project to the row of Preset File
If you click Project on right corner, you can see your Project. Click **View
Table** to see the data. If there is any ERROR, it possibly there is mistake at
your JSON tag definition! If it doesn't you will see a table like this :
Unit 3: OSM Intermediate Level | 74
You also can download the table in the CSV format or Excel format.
5. General Questions
How to save our data?
To save your private data the steps are similar like upload your changes to OSM.
Remember to always use right prefix (in this case is :hot) with your private tag to make
sure that they will be saved on your private database and would not be published.
How much users can use the same account? How if I would like to add users?
There is no limit for users account. At the moment users access organized by HOT
How much data that I can save in my private server?
A lot of Data
Is there any easy way to search certain private data?
When you login to the you will have a choice to do some tag search.
This is possible to you to search certain tag.
Unit 3: OSM Intermediate Level | 75
Module 6
Wiki OpenStreetMap
Learning Objectives
Explain the definition of wiki openstreetmap
Create account in OSM wiki
Editing OSM wiki
Explain conventions and guides/rules in making a wiki page
Create a new page in wiki
Uploading file and photo/image
Translate and revise wiki
View changelog
OpenStreetMap is based around a community of mappers working together. Because
of this it is necessary to have a way to communicate with each other-- whether it be to
organize social mapping events, to discuss different projects related to OSM and/or to
create standards for mapping processes. The key avenue for mappers to do this is through
the OpenStreetMap wiki, a website where users can create different web pages about
different topics and in different languages. To see the OSM wiki, visit
Unit 3: OSM Intermediate Level | 76
Definision of Wiki OpenStreetMap
A wiki is a website where any user can add pages and edit existing pages. It is
based on the same principle as OpenStreetMap- the only difference is that with OSM
users are editing maps, while wiki users are editing text. The most famous wiki is
Wikipedia (, an online encyclopedia that covers almost every
topic imaginable.
The OpenStreetMap wiki contains information about everything related to OSM.
When someone is working on a project that uses OSM, they create a wiki page so that
other people can read about their project. The wiki contains help for users wanting to
learn more about OSM, for common standards on how to make maps and on how to tag
objects on the map, as well as many other OSM things. You have already seen at least
one of the OSM wiki pages, which describes all of the most common features that you
can add to the map, and how they are commonly tagged. This is the Map Features page:
In this chapter we will learn how to add and edit pages on the OSM wiki. We will learn
the guidlines for contributing, the special markup language for creating a wiki page, and
helpful ways for improving the wiki, such as translating important pages.
The Wiki and Signing Up
Go to to see the main wiki page. You’ll see a lot of
things here, and many links to other pages on the wiki. In the left column are links to
some of the main pages. At the top of the page are a list of all the languages in which you
can view this page. If it’s available, you can switch the page to your language. Try
exploring some of the links on the page and see the kind of information available on the
Unit 3: OSM Intermediate Level | 77
You don’t need to have an account in order to view the OSM wiki, but you will need to
create an account if you want to edit or add pages. Note that this is not the same as your
OpenStreetMap account. You need to create a new account, although you can use the
same name on the wiki as you did when signing up for OpenStreetMap.
To create a new account, click on “Log in / create account” in the upper right corner of
the website.
If you already have an account you can login on this page. Otherwise click on “Create an
Fill in the form with the username you want to create, your password twice, your email
address, and your real name. In the CAPTCHA box at the top you need to type the two
words that are shown in the box. This is a security prevention to ensure that you are
human, and not a computer.
When you have filled in all the fields click “Create account.”
Now you will be automatically logged in, and you will see your username and other links
available in the upper right corner of the website.
3. Edit Wiki
Unit 3: OSM Intermediate Level | 78
Let’s start out by editing our user page. Every user has a page on the wiki. These pages
are commonly used to provide information about yourself, your location, for
interpersonal communication, and for creating test pages and drafts. This is a great place
for us to start, and learn the basics of editing a wiki page.
Go to your user page by clicking on your username in the upper right corner. My
username is “MapJeff”, so I will click on this.
Right now the page is empty. Click on “edit this page” to add something to it.
We can type anything into the editor to add information to the page. For example, let’s
add some basic information and a description. You can add your own information, but
here is an example.
When you have added some text, enter a summary of your changes in the box next to
“Summary” and click “Save Page.” The page will look something like this:
This is great because I have successfully saved my text to the page, but it is no good
because it not formatted in a good way. In order to make it look nice, we need to learn
some of the basic wiki formatting techniques. Click “Edit” at the top of the page, and
let’s make some more changes to our page.
Unit 3: OSM Intermediate Level | 79
If you understood the previous chapter on XML, you will remember that we used
elements which have opening tags and closing tags. We will do something similar on the
wiki, using special characters to surround the text we want to appear a certain way.
The wiki doesn’t automatically put new lines in unless we ask it to, so we need to put the
tag <br> at the end of each of our lines in the first section. This will cause a line break to
Then, we want the words “About Me” to appear highlighted since it is the heading of a
section. To do this we can surround it like this:
= = About Me = =
Now our code looks like this:
And after we save it the page will look nicely formatted:
Unit 3: OSM Intermediate Level | 80
Practice formatting your text in different ways. A small hint: the buttons above the text
box will automatically insert different types of formatting code into your text!
Once you have saved your page, it will be viewable by anyone on the internet. The
following link goes to my page, but if you replace my username with yours, it will go to
your user page.
4. The Format of Writing Wiki
In this section we will discuss many of the different ways you can format your
information on a wiki page and the appropriate codes to use to create different elements.
It’s a good idea to practice before trying to create an official wiki page that you want
others to see, so first let’s create a sub-page under your user page where you can play
around and practice editing.
You can create any new wiki page by typing in the link to the page that you want and then
creating a new page. For now, let’s create a new subpage that we can use to practice our
wiki editing. Open your web browser to the following address, replacing “MapJeff” with
your own username.
This will take us to an empty page that we can edit.
Now let’s look at how to format our text. Feel free to use your test page to try things out.
Basic Formatting
Surrounding text with two apostrophes (') will
display this text in italic.
''italic text''
italic text
Surrounding text with three apostrophes (')
will display this text in bold.
'''bold text'''
bold text
Surrounding text with five apostrophes (') will
display this text in bold italic.
'''''bold and italic text'''''
bold and italic text
Four dashes in a row will create a horizontal
line. This should be used sparingly.
Unit 3: OSM Intermediate Level | 81
Special Formatting
Example wiki source
A pair of '<nowiki>' and '</nowiki>' disables the
wiki-syntax in the enclosed text.
'''bold text'''
bold text
<nowiki>'''bold text'''</nowiki>
'''bold text'''
Surround your text with '<!-- ', ' -->' and the enclosed
text will not display on the wiki-page (a comment).
Comment! <!-- this is a
comment which will not be
shown -->
Headings and Subheadings
A section starts with a header consisting of a line beginning and ending with two
or more consecutive equal signs (=). The number of equal signs indicates the nesting
level of sections.
When you create sections and subsection headings in your wiki page, the page
will automatically have a table of contents section created at the top of the page.
Example wiki source
= = = Header 2 = = =
Header 2
= = = = Header 3 = = = =
Header 3
= = = = = Header 4 = = = = =
Header 4
It’s easy to create a bullet list. In order to make an item in a list, you simply need
to use a star (*) as the first character on one or more consecutive lines.
To create an ordered list, you simply use number signs (#) instead of stars (*).
You can create nested lists by using a combination of stars and number signs.
Nested lists display as lists with different levels of indentation. When nesting lists you
may mix bullet lists and numbered lists on each level.
Unit 3: OSM Intermediate Level | 82
Example wiki source
* Item in a bullet list
Item in a bullet list
* Another item
# Item in a numbered list
# Another item
Another item
Item in a numbered list
Another item
* This list has
This list has
*# two levels.
two levels.
*# Numbers on the second level, and
Numbers on the second level, and
* bullets on the first level
bullets on the first level
Links within the OpenStreetMap wiki are quite simple. Simply surround the
name of the wiki page you want to link to with double brackets [[wiki-link]]. You could
add different text for the link by adding a pipe symbol (|) and the text will appear as the
link text. If you want a special language version of a wiki page, you should prefix the
page name with the two-letter language code and a colon (:). For example, to link to the
German version of a page, you would use [[de:wiki-link]].
If you want to link to an article on Wikipedia, prefix the name of the article with
“wikipedia:” For example, [[wikipedia:article-name]]. If you want to link to a wikipedia
article in another langauge, you can add the language code like this:
Finally, if you want to create an external link, simply type the URL and it will
display as a link. If you want to change the link text, you can use one set of brackets to
change the text which links to your URL [external-link link-text].
Example wiki source
[[Map Features]]
Map Features
[[Map Features | different text but links to same]]
different text but links to same
Unit 3: OSM Intermediate Level | 83
[[wikipedia:OpenStreetMap | different text]]
different text
[ different text]
different text
Tables are probably the trickiest thing to create in a wiki, but easy once you
understand how it works. First, you need to understand that a table is really a grid that
has some number of rows and some number of columns, and one type of information is
contained horizontally in rows and another type vertically in columns.
A basic table needs the following parts:
A line with the first two characters '{|' indicating the begin of a table.
An optional line with the first two characters '|+' for the caption of the
One or more table rows, beginning with '|-' and usually no other content
● After each table row one or more lines with table cells and their
text/content. A table cell has as first character a pipe symbol (|) and the second
character cannot be either plus (+) or minus (-) because these two are reserved for
caption and table row respectively.
● A line with the first two characters '|}' indicating the end of a table.
It is good practise and increases readability to use a space as second/third character, thus
avoiding any ambiguity.
Example wiki source
{| align="center"
|+ table caption
|- align="center"
| This
| is a
|- align="center"
Unit 3: OSM Intermediate Level | 84
| table
{| border="1"
|- align="center"
| This is a table
{| align="center"
|- align="center"
| within
|} another table
Play around with all these different techniques for formatting your wiki. If you want an
example of all of these things, try viewing the test page I created here:
Compare the wiki text to the way it is formatted when you are viewing it.
You can find more information on editing at
5. Creating a New Page in Wiki
You can create any wiki page the same way that you have created your user page.
However, before you run off creating pages to your heart’s content, it is important to
understand some guidelines for how to best contribute. Some key things to keep in mind
Before Creating a Page
Don’t Duplicate. When you want to create a new wiki page, do a comprehensive search
of the wiki to ensure that someone else hasn’t already created a page about the same
topic. You can search for existing pages using the search box in the upper right.
If a page that you want to create already exists, but you think it could be better, you
should improve it, instead of creating an entirely new page.
Choose a descriptive name, capitalize new words, and don’t use spaces or dashes. The
Map Features page for example, is named Map_Features, making the link:
Unit 3: OSM Intermediate Level | 85
When Structuring a Page
Divide your page into sections and subsections.
Create an “Introduction” section at the top of the page to give a brief explanation of the
Format different parts of your pages as tables or lists, when appropriate. (We will discuss
formatting more in the next section)
When in doubt, look at other pages on the wiki for inspiration about how to format
things. Remember that you can look at the code for any page by clicking on the edit tab
and seeing how other users format their text.
6. Upload File and Photo/Image
To add or insert files or images on Wikimedia pages, first we have to upload a
file or image to the Wikipedia website. Here are the steps:
1. Uploading files or images to the Wikipedia website.
Open website.
Make sure you are logged in.
Then click “Upload file” which is in the left side of the screen, under the
Tools menu.
After Upload file page opened, click “Choose File” at Source file name. Find
the file that will be uploaded from your computer.
Unit 3: OSM Intermediate Level | 86
Terms file to upload:
 Maximum file/image size: 70 MB
 Permitted file/image type: doc, pdf, odt, odp (for file) dan png, gif, jpg,
jpeg, svg (for image).
After choosing the file, click “Upload file” at the bottom of the page.
Then it will show a page like this:
Unit 3: OSM Intermediate Level | 87
Example of file upload.
Example of image upload.
Your file/image uploaded successfully! However, this file/image has not been
on your page.
2. Insert file / image on the Wikipedia page.
Look the file/image name that you uploaded before, example:
File:Mapping jakarta.JPG and File:Pemetaan dengan OSM.pdf.
To insert a file / image on your page, you have to go to the page that you
want to modify and then click “Edit”.
Copy the name of file/image you have uploaded into the editing box, as
shown below:
Unit 3: OSM Intermediate Level | 88
Then click “Save page” under the editing box.
The result will look like this:
7. Translating Pages
One very useful thing that can be done on the wiki is to translate important pages
into your language. As you’ve already seen, many wiki pages have links at the top where
you can switch languages. However, this is only available for pages that have been
translated, and that include a special tag at the top - {{Languages|page_name}}
Unit 3: OSM Intermediate Level | 89
When developing the OpenStreetMap community in your country, it is very
useful for key wiki pages to be translated into your language. Adding translated pages is
easy, as we will see here.
The names of pages are always created in English, but different versions of the
same page can be created by adding a language code into the URL. For example, the
Map Features page is at
If you want the Spanish version of this page, it is available at
If a page exists that you want to translate, you simply visit the URL with your
language code and a colon (:) preceding the page name. For example, if we wanted to
translate this page into Indonesian, we would visit
Then we click “Edit” to create this page.
The easiest way to add a translation is to go to a page in English, click “Edit”,
and copy all of the wiki text to your Clipboard. Then edit the page in your own language,
pasting in the original English text and translating it into your language. This will allow
you to keep all of the original formatting and links correctly, but translate the English text
into your own language.
8. How to View Changelog
You may want keep an eye on pages that you have edited yourself, or that you
have an interest in. To do this, you can add specific pages to your “Watchlist,” which
keeps a record of recent changes to pages, so that you will know when others have edited
To add a page to your watchlist, click on the star at the top of the page section:
Then, you can view your watchlist by clicking on “My Watchlist” at the top of the page:
Unit 3: OSM Intermediate Level | 90
On the “My Watchlist” page you choose to show changes to your watched pages within
the past hours, or days, or since you started watching the page.
Unit 3: OSM Intermediate Level | 91
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF