I've built a tool for mappers to match things in OSM with Wikidata and add the appropriate wikidata tag to OSM.
Users can search for a administrative area or city, then pick an area to analyse. It works best if mappers pick areas they're familiar with.
The matcher can take a few minutes to run. It grabs items from Wikidata and figures out a target set of tags and keys to search for. Then it downloads OSM data and looks for matches. The matching is based on tags and names, currently the wikipedia tags aren't considered.
Map data is from the OSM Overpass API. Large (more than 1,000 sq km) or dense areas might fail with a timeout error.
The results are cached in the system and are available here:
https://osm.wikidata.link/places
Once the matching process is complete the mapper is given a tabbed page with the results. The five tabs are:
Match candidates - things on OSM that might be considered for tagging Already tagged - matches that are already tagged in OSM No match - items from Wikidata with no match found in OSM Wikidata query - the query used to find Wikidata items Overpass query - the Overpass query to find OSM objects in this area
To start tagging the mapper is able to login to OSM via OAuth. Tick boxes will appear next to the likely matches, the mapper can tick the box next to the matches they want to upload, then add a change comment and upload them using their own OSM account. Uploads within an area are combined into a single changeset.
If the mapper sees an obviously incorrect match they can use the 'report bad match' option to warn other mappers and provide feedback that I can use to improve the algorithm.
This tools doesn't add any new objects to OSM. The only change it makes is adding a wikidata tag to existing things.
My approach is to aim for a one-to-one mapping between Wikidata and OSM. If there are two or more things in OSM that look like a Wikidata item then it isn't a good match. This means for example that most road and rail bridges won't be tagged because they are represented as two OSM ways. I might change this at some point.
There are occasional duplicates in Wikidata, this tool should spot them and refuse to add wikidata tags until the Wikidata duplicate is resolved.
The bug/todo list is here: https://github.com/EdwardBetts/osm-wikidata/issues
Any ideas or suggestions are welcome.