﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
17043	[PATCH] cuisine and diet enhancements	naoliv	team	"Per https://wiki.openstreetmap.org/wiki/Key:cuisine#Cuisine_.28type_of_food.29 we shouldn't be offering a `vegetarian` value for `cuisine`.

The patch below removes `vegetarian` from `cuisine`, updates some values (from top 100 taginfo values (> 300 uses)) and sort them (to better locate/include/remove values if needed).

Comparing with the current preset we are adding:

* african
* arab
* argentinian
* bagel
* balkan
* bavarian
* brazilian
* cake
* caribbean
* curry
* danish
* ethiopian
* indonesian
* lebanese
* moroccan
* pancake
* pasta
* peruvian
* polish
* portuguese
* russian
* sausage
* tapas

Also adds a new `Diet` preset (without a proper icon, however):
[[Image(https://i.imgur.com/1emIUZE.png)]]

[[Image(https://i.imgur.com/gqo0xUq.png)]]

And links it in Restaurant, Fast Food and Cafe. For example:

[[Image(https://i.imgur.com/MKcdU8E.png)]]


{{{
#!patch
diff --git a/data/defaultpresets.xml b/data/defaultpresets.xml
index 23b13a97b..3060eac38 100644
--- a/data/defaultpresets.xml
+++ b/data/defaultpresets.xml
@@ -161,7 +161,7 @@
         <reference ref=""oh_wheelchair"" />
     </chunk>
     <chunk id=""cuisine"">
-    <multiselect key=""cuisine"" text=""Cuisine"" values=""italian;chinese;pizza;burger;greek;german;indian;regional;kebab;turkish;asian;thai;mexican;japanese;french;sandwich;coffee_shop;sushi;steak_house;fish_and_chips;chicken;american;ice_cream;international;seafood;spanish;vietnamese;fish;noodle;barbecue;vegetarian;korean;donut;mediterranean;friture;crepe"" values_searchable=""true"" />
+        <multiselect key=""cuisine"" text=""Cuisine"" values=""african;american;arab;argentinian;asian;bagel;balkan;barbecue;bavarian;brazilian;burger;cake;caribbean;chicken;chinese;coffee_shop;crepe;curry;danish;donut;ethiopian;fish;fish_and_chips;french;friture;german;greek;ice_cream;indian;indonesian;international;italian;japanese;kebab;korean;lebanese;mediterranean;mexican;moroccan;noodle;pancake;pasta;peruvian;pizza;polish;portuguese;regional;russian;sandwich;sausage;seafood;spanish;steak_house;sushi;tapas;thai;turkish;vietnamese"" values_searchable=""true"" />
     </chunk>
     <chunk id=""internet"">
         <combo key=""internet_access"" text=""Internet access"" values=""yes,wlan,wired,terminal,no"" />
@@ -4518,6 +4518,7 @@
             <check key=""outdoor_seating"" text=""Outdoor seating"" />
             <combo key=""takeaway"" text=""Takeaway"" values=""yes,no,only"" />
             <combo key=""delivery"" text=""Delivery"" values=""yes,no,only,Mo-Su 12:00-22:00"" />
+            <preset_link preset_name=""Diet"" />
             <reference ref=""oh_wheelchair"" />
             <combo key=""stars"" text=""Stars"" values=""1,2,3,4,5,6,7"" />
             <space />
@@ -4545,6 +4546,7 @@
             <check key=""outdoor_seating"" text=""Outdoor seating"" />
             <combo key=""takeaway"" text=""Takeaway"" values=""yes,no,only"" />
             <combo key=""delivery"" text=""Delivery"" values=""yes,no,only,Mo-Su 12:00-22:00"" />
+            <preset_link preset_name=""Diet"" />
             <reference ref=""oh_wheelchair"" />
             <space />
             <reference ref=""internet_smoking"" />
@@ -4596,6 +4598,7 @@
             <check key=""outdoor_seating"" text=""Outdoor seating"" />
             <combo key=""takeaway"" text=""Takeaway"" values=""yes,no,only"" />
             <combo key=""delivery"" text=""Delivery"" values=""yes,no,only,Mo-Su 12:00-22:00"" />
+            <preset_link preset_name=""Diet"" />
             <reference ref=""oh_wheelchair"" />
             <space />
             <reference ref=""internet_smoking"" />
@@ -4699,6 +4702,31 @@
             <space />
             <reference ref=""link_contact_address_payment"" />
         </item> <!-- Bar -->
+        <separator/>
+        <item name=""Diet"" type=""node,closedway,multipolygon"" preset_name_label=""true"">
+            <link href=""https://wiki.openstreetmap.org/wiki/Key:diet""
+                  cs.href=""https://wiki.openstreetmap.org/wiki/Cs:Key:diet""
+                  de.href=""https://wiki.openstreetmap.org/wiki/DE:Key:diet""
+                  fr.href=""https://wiki.openstreetmap.org/wiki/FR:Key:diet""
+                  it.href=""https://wiki.openstreetmap.org/wiki/IT:Key:diet""
+                  ja.href=""https://wiki.openstreetmap.org/wiki/JA:Key:diet""
+                  pl.href=""https://wiki.openstreetmap.org/wiki/Pl:Key:diet"" />
+            <space />
+            <combo key=""diet:vegetarian"" text=""Vegetarian"" values=""yes,only,no"" values_sort=""false""/>
+            <combo key=""diet:vegan"" text=""Vegan"" values=""yes,only,no"" values_sort=""false""/>
+            <combo key=""diet:lacto_vegetarian"" text=""Lacto-vegetarian"" values=""yes,only,no"" values_sort=""false""/>
+            <combo key=""diet:ovo_vegetarian"" text=""Ovo-vegetarian"" values=""yes,only,no"" values_sort=""false""/>
+            <combo key=""diet:pescetarian"" text=""Pescetarian"" values=""yes,only,no"" values_sort=""false""/>
+            <combo key=""diet:fruitarian"" text=""Fruitarian"" values=""yes,only,no"" values_sort=""false""/>
+            <combo key=""diet:raw"" text=""Raw"" values=""yes,only,no"" values_sort=""false""/>
+            <item_separator />
+            <combo key=""diet:dairy_free"" text=""Dairy free"" values=""yes,only,no"" values_sort=""false""/>
+            <combo key=""diet:gluten_free"" text=""Gluten free"" values=""yes,only,no"" values_sort=""false""/>
+            <combo key=""diet:lactose_free"" text=""Lactose free"" values=""yes,only,no"" values_sort=""false""/>
+            <item_separator />
+            <combo key=""diet:halal"" text=""Halal"" values=""yes,only,no"" values_sort=""false""/>
+            <combo key=""diet:kosher"" text=""Kosher"" values=""yes,only,no"" values_sort=""false""/>
+        </item> <!-- Diet -->
     </group> <!-- Food+Drinks -->
     <group name=""Tourism"" icon=""presets/sightseeing/attraction.svg"">
         <item name=""Attraction"" icon=""presets/sightseeing/attraction.svg"" type=""node,closedway,multipolygon"" preset_name_label=""true"">
}}}

And since we have 2044 objects with `cuisine=vegetarian` (being 1167 without `diet:vegetarian`) + 479 objects with `cuisine=vegan` (being 314 without `diet:vegan`), maybe we could also have a new test:

{{{
#!mapcss
*[cuisine = vegan],
*[cuisine = vegetarian] {
        throwWarning: tr(""{0} is discouraged"", ""{0.tag}"");
        suggestAlternative: concat(""diet:"", ""{0.value}"", ""=yes"");
        suggestAlternative: concat(""diet:"", ""{0.value}"", ""=only"");
}
}}}"	enhancement	closed	normal	19.06	Internal preset		fixed	cuisine	
