Note that “unusual and not documented” does not mean “wrong” - many should be simply documented.
Some may be fixable remotely:
clear typos (shop=suupermarket)
written in language other than English but with clear mapping to local language (for example shop selling meat in Polish is “mięsny”, so shop=mięsny is clearly shop=butcher)
too specialized tags (shop=coal is better tagged as shop=fuel fuel=coal, shop=office_furniture as shop=furniture furniture=office, shop=indian_spices as shop=spicescuisine=indian)
very clear duplicates (shop=hypermarket vs shop=supermarket)
shop with website, maybe even linked in OSM object, that allows establishing proper value of shop tag - it is also worth adding website tag
in some cases something is clearly not a shop (shop=factory_producing_widgets is likely man_made=works)
needed and valid shop value that should be documented at OSM wiki
Some may require resurvey, if one is luckily in your area you can check it. Or you can create a note and wait for local mapper to resurvey it.
Contacting original mapper may make sense.
Remember, it is better to not edit than break data in case of tagflidling - create note if unclear or unsure.
Let me know if this list is useful but outdated (I will setup refreshing it in such case) or pointless/problematic (I can delete it if it is causing more problems than benefits).
Some improvements can be made to this list… Mayvbe mark cases with nearby notes opened already so these can be skipped for now? And mark cases where website link is available so these can be processed first?
Cases on "entries from list of suspicious ones: " list can get explanations why this values are treated as invalid. Maybe more.
(helping here is useful as it allows to reduce number of not needed and pointless top-level shop values, on 2023-08-14 we had 11 215 distinct shop values, vast majority bogus, broken or not needed. Reviewing such lists also allows us to spot missing shop values, problems with documentation and presets. Repeated appearance of shop value may indicate that wiki or presets should be improved. Maybe iD translation is bad or requires additional aliases for easier search? Maybe OSM wiki would benefit from translating it to local language or being more clear?)
(I can also generate such listing for other areas, let me know if someone is interested)
Hi @Mateusz_Konieczny, I appreciate you sharing these unusual shop values.
I’ve already looked over this list, and I believe I can fix certain tags, such warung, hero, and sogo pusat_perbelanjaan.
Hero and Sogo is the name of the supermarket in Indonesia; “warung” means “small convenience” and “pusat perbelanjaan” means “supermarket” in Bahasa. Perhaps I’ll try to fix the others.
Good luck, sounds similar to case of shop=mięsny in Poland!
Though I cannot judge is cases you mention are very obvious and clear - if case is not fully clear then asking original mapper/checking website of shop/opening note would be a good idea.
I plan to rerun list update, but feel free to ask for manual update.
are you interested especially in some specific part of Indonesia? Turns out that there are so many shops mapped there that Overpass query very often fails (today it failed so many times that update has not managed to complete)
I plan to scan only one of parts of Indonesia for start.
No, I don’t. I’m just checking in a random part of Indonesia. but you can try Java Island such as West Java or Central Java, a lot of mappers doing mapping in this area
Then, I downloaded the entire result as a CSV file. Open it by using Excel, then copy-paste the entire column as a simple plaintext file. Then, process it by using this python script.
from collections import Counter
file = open('shoptag_plaintext','r')
c = Counter()
nya = []
while True:
l = file.readline()
nya.append(l)
if not l:
break;
file.close()
c = Counter(nya)
for i in c.most_common():
print(i[0].strip(),i[1])
import requests
from collections import Counter
import xml.etree.ElementTree as ET
file = open('driver','r')
c = Counter()
nya = []
while True:
l = file.readline()
nya.append(l)
if not l:
break;
file.close()
c = Counter(nya)
for i in c.most_common()[::-1]:
isDone = False
nya = i[0].strip()
uri = f"https://wiki.openstreetmap.org/w/api.php?action=query&titles=Tag:shop%3D{nya}&format=xml"
response = requests.get(uri)
if response.status_code == 200:
xml_data = response.content
root = ET.fromstring(xml_data)
for z in root:
for j in z:
for k in j:
if k.tag == "page" and not isDone:
for ke,va in k.attrib.items():
if ke == "_idx" and va == "-1":
print(f"{nya} | {i[1]} | Undocumented")
else:
print(f"[{nya}](https://wiki.openstreetmap.org/wiki/Tag:shop%3D{nya}) | {i[1]} | Documented")
isDone = True
break