From OpenStreetMap Wiki
Jump to navigation Jump to search

Основной целью этого плагина было добавление тегов Wikipedia-tags в OpenStreetMap и перевод названий с помощью интервики-ссылок, но части этого инструмента так же могут использоватся и для других целей. Этот инструмент работает в три приёма, смотри ниже.

Screenshot (URL)



Посмотрите на пример который работает с улицами Дрездена.

  • Слева находится таблица, которая генерируется по данным википедии инструментом CatScan. Он проходит по категориям и подкатегориям в википедии. Пользователь может менять языковой раздел википедии, название категории, глубину поиска. Так же там есть поле, которым включается использование ссылок на другие языковые разделы википедии.
  • Справа на странице находится часть работающая с OpenStreetMap, она использует код Query-to-map. Здесь указывается, какие объекты скрипт будет искать в OpenStreetMap, что бы сопоставить их со статьями из википедии. Пользователь может указать BBOX (его можно получить из Maperitive), комбинацию тега и значения (возможно использовать “*”), и типы данных.

При использовании типов "points", "lines", "areas" запрос будет делаться к базе данных toolserver, будет скачиватся всё в области, это относительно медленно. При использовании типов "node", "way", "relation" запрос будет делаться к Overpass API, будет скачиватся только необходимые обьекты, поэтому это быстрее, особенно для больших обьектов. Если в поле будет введено "no", то скрипт обратится напрямую к Nominatim, это намного быстрее.

Скрипт будет использовать этот параметр для поиска обьекта в OSM, для которого параметр name совпадает со статьёй в википедии, найденной на левой части страницы. Части названия статьи википедии в скобках будет проигнорирована. The script will use this parameter to find in the next step matching OSM objects where additionally the name-parameter is matching with the Wikipedia article name founded on the left side. (Parts of the Wikipedia article name in brackets will be ignored.)

В результате пользователь получает таблицу из 3 колонок:

  • Wikipedia-articles: Is a link to Wikipedia-article
  • Interwikilinks: Shows the user how many interwikilinks has this article, is interesting if this links are used to generate “name:language”-Tags for OSM.
  • OpenStreetMap: Is a link osm-add-tags tool see below.


Этот скрипт ищет обьекты по заданым параметрам. В основном, параметры задаются скриптом index.php (так же возможно использовать этот скрипт для OpenStreetMap и безотносительно к википедии).


  • key, value, types and BBOX: (see above) to specify complex OSM-objects.
  • name: to find at best exactly the right complex OSM-object. Если этот параметр: "*", то пользователь получит список всех обьектов, и заодно обьектов без названия. Этот пример выдаёт список всех ресторанов города и показывает есть ли там тег smoking, или нет. Some restaurants in this example have no name so they are on the end of the list as "node...".
  • without-tag: define a key that is missing on the object of search. Useful to find e.g. restaurants without opening hours or so. (coming soon...)
  • addtags: different Tags to add to specified objects. Tags written as “key=value”, different tags are separated by “|”

As result the user gets one single object or a list with objects.

This list has links to JOSM/Plugins/RemoteControl with addtags-parameter for JOSM in latest version must run. So it use a local server to control JOSM.

Behind the objects the user can see its size (diagonal length in seconds of degree)

The script works with the toolserver database which is normally used for mapnik, so possibly it is not synchronous or has curious effects. The script finds the nodes, ways and relation numbers in the database and calculates small bounding boxes around each object.

If the result is empty the script asks Nominatim but the users need to be carefully with the results because there is no key-value proving and it gives only the first result back.


Screenshot of user interface in JOSM (selected objects in red)

For details see: JOSM/Plugins/RemoteControl

With the help of remote control JOSM downloads the area around the defined objects and selects them. In the following dialog box the user can modify selection and tags before applying the changes.

It's helpful to use OSM-tiles (JOSM menue: Imagery) as overview in background.

Future Plans

The idea is to use this Wikipedia-tags later inside the Wikipedia embedded map to highlighting the OSM objects that match to the wikipedia article. So especially complex line and area objects (streets, rivers, districts,...) would be interesting for that. Multilingual maps will profit the translations by interwikilinks, especially city-objects (nodes) should have priority.

The concept behind the tool is also keep the server-side script without graphical map-interface, so it's very easy for other programmers to modify the script and bring there ideas inside the project.

Source Code


See also

  • WIWOSM - uses wikipedia=* to display vector map at Wikipedia sites using OSM data