Hi all,
Some of you might remember my earlier proposal for vending=ski_pass (original RFC thread) and the more recent follow-up discussion about how to tag ski pass vending machines. The feedback was clear: don’t create narrow vending=* values for every ticket type. Fair point.
So I went back to the drawing board, and the result is a broader proposal:
The idea is simple and has two parts:
1. Introduce vending=tickets
We already have shop=ticket for staffed ticket shops. It makes sense to have vending=tickets as its counterpart for machines. This is not meant to replace the existing specific values (vending=public_transport_tickets, vending=parking_tickets, etc.) - those remain perfectly fine for their domains. The new value fills the gap for machines that sell ticket types not covered by those, or that sell a mix of ticket types.
2. Use the tickets:* namespace
The tickets:* namespace is already well established on shop=ticket - Taginfo shows 74 distinct keys with tickets:public_transport alone at ~2,800 uses. Even tickets:ski_pass already has 7 uses in the wild.
The proposal encourages using these same keys on vending=tickets machines. So a ski pass vending machine becomes:
amenity=vending_machine
vending=tickets
tickets:ski_pass=yes
And a Swiss machine that sells both ski passes and public transport tickets? Just stack them:
amenity=vending_machine
vending=tickets
tickets:ski_pass=yes
tickets:public_transport=yes
No need to pick one vending=* value over another. No semicolons. Clean and composable.
What this proposal is NOT
For those who remember KartenKarsten’s 2015 Ticket type draft - this is deliberately much narrower. No deprecations, no renaming shop=ticket to shop=tickets, no exhaustive ticket type taxonomy. Just vending=tickets + the tickets:* namespace that already grew organically over the past decade.
The ski pass angle
My original motivation was tagging ski pass vending machines, which are popping up at resorts everywhere and currently have no good tagging option. vending=public_transport_tickets doesn’t fit (resort lifts aren’t public transport), vending=admission_tickets is a stretch, and inventing vending=ski_pass was rightly called out as non-scalable. The vending=tickets + tickets:ski_pass=yes pattern solves this cleanly while being useful for far more than just ski passes.
Full proposal with examples, tagging details, and impact analysis is on the wiki:
Proposal:Vending=tickets - OpenStreetMap Wiki
Looking forward to your feedback. Please comment on the wiki discussion page or here on the forum.
Cheers,
AlesKubr