Map Translation Interface

From OpenStreetMap Wiki
Jump to navigation Jump to search

There's a huge community of translators on the web. OpenStreetMap can work with them directly.

Wikipedia, Global Voices, Meedan, and many more working on content translation. Ubuntu, Fedora, OpenOffice, and many many more working on software translation. Just a few weeks before SotM, the Open Translation Tools conference was held in Amsterdam :) (

Translators are used to a certain kind of interface, typically lists of phrases to translate. We can build an interface more welcoming for translators, and tap into this huge community. They want to simply translate, not add new data to the map .. and as OSM grows, we're going to need to offer multiple interfaces to appeal to different types of contributors.

What's envisioned is a simple app, with a slippy map. Zoom/pan to the area of interest, select the types of things you want to translate, and submit. The app generates a list, with the name of the object, the localised names in the languages you're interested in, and a small inset static map for reference. Add your translations, submit. The app gets authorization through OAuth, and submits your changeset.

Kinds of Placename Translations

Not all map features need translating in the same way. For now, let's assume that only the 'name' tag will be translated, since that is about the only place where freeform natural language is used. (Possibly 'note', 'FIXME' and other things like parking restrictions could also contain natural language, but they are not normally rendered on maps.)

Now, there are different kinds of names. There are those which are descriptive, such as 'Town hall' or 'London Zoo', which can always be translated. Then there are names which are purely proper names, such as 'Rome' or 'Brazil'. These may or may not have equivalents in different languages. Many names are in between these two poles, such as Paris's Arc de Triomphe, which may be rendered in English as the Triumphal Arch (taking it as a description to be translated), or kept in the original French (taking it as a proper name). Many languages simply use different character sets. Finally, some things like street names are rarely translated, even if they carry a meaning. In London is Bread Street, but it wouldn't be expected to see it on a Spanish tourist guide as 'Calle del Pan'.

Any translation interface should accommodate these different levels of translatability. One way might be to record two different kind of translations: one being an equivalent name for a well-known place, and the other kind a translation of the meaning of a string. The web interface would have a tickbox to distinguish the two kinds.


The regular API can be used of course .. but possible local extension to the API that focuses on just receiving new translations. This could be helpful for translations that are predominantly transliterations, for instance from Japanese to Romaji to fill missing name:en tags in Japan. Similar programs exist in Hangul and Chinese, and possibly others. Alternatively, this could be covered by specialized import tools, or guidelines.