To reproduce: 1. open openstreetmap.org 2. In the search field, enter "Pinneberg, Bahnhof" and click "Go" 3. Observe that the train station shown on the map is not in Pinneberg, but in Wedel, a different town 21km south of Pinneberg. Interestingly, searching for "Bahnhof Pinneberg" gives the correct result. |
The search engine on openstreetmap.org works with some fixed phrases to search for specific objects. You can search for Bahnhof Pinneberg, Bahnhof in Pinneberg or Bahnhof bei Pinneberg to find Pinneberg station. Even Pinneberg Bahnhof works but not if you separate the two terms with a comma. Note that you might have to click on Mehr Treffer to get the desired feature shown. answered 03 Apr '22, 21:16 TZorn Thanks for your answer. Of course I could stop using a comma in OSM queries which would solve this issue for me. However, there are two more aspects to this: a) When the search engine cannot find what I am looking for, then answering with a train station in a completely different city is highly confusing and can lead to substantial real-world problems for instance when the user uses the result for planning a journey. It would be much better when the search engine would tell the user that it could not find "Pinneberg, Bahnhof". b) using comma to separate different levels in a hierarchy is pretty common. I highly doubt that I am the only person doing this. Google Maps has no problem with this. Maybe it would be worthwhile to add support for this to OSM as well?
(10 Apr '22, 23:07)
_Bj
https://www.openstreetmap.org/ is originally not a map application users are supposed to use. The search is run by https://nominatim.openstreetmap.org/ to verify the data structure. You should see if actual apps using OSM data (including: OSMAnd, Organic Maps, Qwant Maps, Arcane Maos, Mapy.cz, Magic Earth, or even Apple Maps) can provide the search result you need. They are allowed to use different search engines, and add other data from sources incomaptible with this database (you can add add-ons yourself too, eg OpenAddresses in OSMAnd). You can also search the location in another app (eg Acastus Photon, or even Google), then open the result position in the map app you want to use.
(11 Apr '22, 16:50)
Kovoschiz
The result shown for your query was obviously not what you had looked for but it was not wrong. The result was not the "Bahnhof Pinneberg" but an object (a bicycle rental station actually) called "Bahnhof" which is located within "Kreis Pinneberg". A comma might separate hierarchical items and the search engine Nominatim generally supports this use (e.g. you could have searched for "Bahnhof in Pinneberg, Schleswig-Holstein, Deutschland"). But station and city are not different levels of a hierarchy. Nominatim builds a geographical hierarchy (country, state, county, ...) from OSM data but station is an attribute of an object outside this hierarchy.
(12 Apr '22, 13:45)
TZorn
1
When you search for "Pinneberg, Bahnhof" Nominatim first returns the bicycle rental (an object named "Bahnhof" in "Kreis Pinneberg"), secondly a mail box with reference "Bahnhof" in "Kreis Pinneberg", and only on third rank your desired Pinneberg station (order of results is also influenced from where you start on the map so you might see a different order). Nominatim does not have any (or at least no advanced) logic built in predicting what the most likely result is a user is looking for. You need to scroll further down the result list or try some of the other search methods pointed out by Kovoschiz. (2/2)
(12 Apr '22, 13:46)
TZorn
|