Yeah, fair, if these aren’t shops, they aren’t vending machines either.
I think my main misgiving with using a generic value to represent these on the shop key is that, unlike many of OSM’s other top-level tags, shop still provides a nice hierarchy:
if an object has a shop key – you know it’s a place you can buy stuff
you can then look at shop=value to know what the category of stuff you can buy
and you potentially can look at more detailed keys to understand more specifics about what’s being sold in very specific cases.
This means if you are a data consumer rendering icons in your map for business on your maps – you can do nice custom icons for shop=greengrocershop=pet_store and shop=alcohol, but for anything with a shop value you don’t handle – you can just render a nice generic shopping bag icon (Obviously it’s not perfect, a shopping bag icon on a shop=funeral_directors might not be the most appropriate – but it’s much better than the total lack of hierarchy in many other top-level keys).
shop=booth would break the hierarchy, where as a data consumer, now you either need a special case when shop == booth – to look at vending to know whats being sold or exclude shop=booth entirely.
I don’t really have a strong opinion on if these things should be represented by shop=<category of thing they sell> or not – though if we don’t go that route I’d be much inclined to introduce amenity=road_stand with vending (or something like that) over starting to break the existing pretty good shop tag hierarchy.
I generally agree with your argumentation and yes, it would not be good to break an existing and useful hierarchy. On the other hand we do already have shop=mall, wholesale or kiosk going in the same direction as booth or road_stand.
Anyhow I proposes shop=booth/road_stand mainly to keep it in line with other objects selling goods, although in real life no one would call a roadsite stand a shop imho. I would not have any objection to go for
I’m less interested in the specific shop and payment tags since they are based the particular shop. I would suggest adding “honesty_box” to something like self-service or making it its own tag. This would make it simpler to tag other establishments with a similar honor system. Such as training programs and shops run by charities who expect payment based on income level.
IMO, those stands are as much of a shop, as vending machines.
Those are not tagged with shop=*, but with amenity=vending_machine and vending=*. Ideally, one would combine those under a single umbrella term, and could specify whether it is automated or not.
This might be a new proposal though and I do not know how people would feel about this. Thoughts?
Alternatively, amenity=vending_booth and vending=* could be a good option.
We have had amenity=road_stand + vending=* so far, but amenity=vending_booth is also fine with me and would even be a good supplement to the existing amenity=vending_machine tag … .