Index: trunk/data/defaultpresets.xml
===================================================================
--- trunk/data/defaultpresets.xml	(revision 15647)
+++ trunk/data/defaultpresets.xml	(revision 15648)
@@ -1115,4 +1115,5 @@
                 <combo key="crossing" text="Pedestrian crossing type" values="uncontrolled,traffic_signals,unmarked,no" />
                 <combo key="crossing_ref" text="Crossing type name (UK)" values="zebra,pelican,toucan,puffin,pegasus,tiger" />
+                <combo key="kerb" text="Kerb" values="flush,lowered,no,raised,rolled,yes" values_context="kerb" />
                 <check key="crossing:island" text="With island" />
                 <check key="button_operated" text="Button operated" />
@@ -1160,4 +1161,5 @@
             </combo>
             <combo key="crossing_ref" text="Crossing type name (UK)" values="zebra,pelican,toucan,puffin,pegasus,tiger" values_searchable="true" />
+            <combo key="kerb" text="Kerb" values="flush,lowered,no,raised,rolled,yes" values_context="kerb" />
             <combo key="supervised" text="Crossing attendant" delimiter="|" values="yes|no|06:00-20:00|Mo-Fr 09:00-18:00,Sa 08:00-14:00|May-Sep 09:30-12:30,14:15-19:30" />
             <combo key="tactile_paving" text="Tactile Paving" values="yes,no,incorrect" />
@@ -1993,4 +1995,13 @@
         </item> <!-- Bus Guideway -->
         <separator/>
+        <item name="Railway construction" icon="presets/transport/railway/railway_construction.svg" type="way" preset_name_label="true">
+            <link wiki="Key:construction" />
+            <key key="railway" value="construction" />
+            <combo key="construction" text="Railway type" values="rail,narrow_gauge,monorail,preserved,light_rail,subway,tram,funicular" />
+            <optional>
+                <combo key="usage" text="Usage" values="main,branch,industrial,military,tourism,freight" />
+                <reference ref="railway_service_gauge_electrified_yesno" />
+            </optional>
+        </item> <!-- Railway construction -->
         <item name="Disused Rail" icon="presets/transport/railway/disused_rail.svg" type="way" preset_name_label="true">
             <link wiki="Tag:railway=disused" />
@@ -4073,5 +4084,6 @@
             <key key="recycling_type" value="container" />
             <text key="operator" text="Operator" />
-            <reference ref="oh_wheelchair" />
+            <combo key="opening_hours" text="Throw in times" delimiter="|" values="24/7|Mo-Fr 06:30-12:30,15:30-20:00; Sa 08:00-12:00; PH off" values_no_i18n="true" />
+            <combo key="wheelchair" text="Wheelchairs" values="yes,limited,no" />
             <space />
             <checkgroup columns="4">
@@ -4751,5 +4763,5 @@
             <link wiki="Key:building" />
             <space />
-            <combo key="building" text="Building" values="allotment_house,bakehouse,barn,basilica,cabin,carport,cathedral,chapel,church,college,commercial,construction,cowshed,farm_auxiliary,garage,garages,gasometer,ger,greenhouse,hangar,hospital,industrial,kindergarten,manufacture,mosque,office,public,retail,roof,ruins,school,service,shed,silo,stable,storage_tank,supermarket,synagogue,temple,toilets,train_station,transformer_tower,transportation,university,warehouse,yes" values_context="building" default="yes" match="keyvalue!" values_searchable="true" />
+            <combo key="building" text="Building" values="allotment_house,bakehouse,barn,basilica,cabin,carport,cathedral,chapel,church,college,commercial,construction,cowshed,farm_auxiliary,garage,garages,gasometer,greenhouse,hangar,hospital,industrial,kindergarten,manufacture,mosque,office,public,retail,roof,ruins,school,service,shed,silo,stable,storage_tank,supermarket,synagogue,temple,toilets,train_station,transformer_tower,transportation,university,warehouse,yes" values_context="building" default="yes" match="keyvalue!" values_searchable="true" />
             <optional>
                 <text key="name" text="Name" />
@@ -4762,5 +4774,5 @@
             <link wiki="Key:building" />
             <space />
-            <combo key="building" text="Building" values="yes,residential,apartments,house,hotel,hut,bungalow,dormitory,terrace,detached,farm" default="residential" match="keyvalue!" values_context="building" values_searchable="true" />
+            <combo key="building" text="Building" values="yes,residential,apartments,ger,house,hotel,hut,bungalow,dormitory,terrace,detached,farm" default="residential" match="keyvalue!" values_context="building" values_searchable="true" />
             <optional>
                 <text key="name" text="Name" />
@@ -6677,5 +6689,5 @@
     </item> <!-- Caterer -->
     <separator/> <!-- food group -->
-    <item name="Upholsterer" type="node,closedway,multipolygon" preset_name_label="true">
+    <item name="Upholsterer" icon="presets/craft/upholsterer.svg" type="node,closedway,multipolygon" preset_name_label="true">
         <link wiki="Tag:craft=upholsterer" />
         <space />
@@ -6776,5 +6788,5 @@
         <reference ref="link_contact_address" />
     </item> <!-- Pottery -->
-    <item name="Gardener" type="node,closedway,multipolygon" preset_name_label="true">
+    <item name="Gardener" icon="presets/craft/gardener.svg" type="node,closedway,multipolygon" preset_name_label="true">
         <link wiki="Tag:craft=gardener" />
         <space />
@@ -6783,5 +6795,5 @@
         <reference ref="link_contact_address" />
     </item> <!-- Gardener -->
-    <item name="Shoemaker" type="node,closedway,multipolygon" preset_name_label="true">
+    <item name="Shoemaker" icon="presets/craft/shoemaker.svg" type="node,closedway,multipolygon" preset_name_label="true">
         <link wiki="Tag:craft=shoemaker" />
         <space />
Index: trunk/data/validator/combinations.mapcss
===================================================================
--- trunk/data/validator/combinations.mapcss	(revision 15647)
+++ trunk/data/validator/combinations.mapcss	(revision 15648)
@@ -270,5 +270,8 @@
 }
 
-/* {0.tag} together with {1.tag}, see #17950, #17330, #17623, #17592, #17594, #17542, #16861, #16147, #10186 */
+/* {0.tag} together with {1.tag}, see #18411, #17950, #17330, #17623, #17592, #17594, #17542, #16861, #16147, #10186 */
+*[barrier=kerb][kerb=no],
+way[highway=construction][construction=yes],
+way[railway=construction][construction=yes],
 *[man_made=bridge][bridge=yes],
 *[man_made=tunnel][tunnel=yes],
@@ -649,2 +652,21 @@
   group: tr("suspicious tag combination");
 }
+
+/* #18374 */
+*[amenity=recycling][collection_times="24/7"][!opening_hours],
+*[amenity=recycling][collection_times       ][!opening_hours][collection_times=~/[a-z]-[A-Z].*[0-9]-[0-9]/] {
+  throwWarning: tr("{0} together with {1}. Probably {2} is meant.", "{1.key}", "{0.tag}", "{2.key}");
+  group: tr("suspicious tag combination");
+  fixChangeKey: "collection_times => opening_hours";
+  /* spaces in asserts are not yet supported
+  assertMatch: "node amenity=recycling collection_times=Mo-Fr 06:00-20:00";
+  assertNoMatch: "node amenity=recycling collection_times=Mo-Fr 15:00";
+  assertNoMatch: "node amenity=recycling collection_times=Mo 08:00-11:00";
+  assertNoMatch: "node amenity=recycling collection_times=Sa[2,4] 8:00-11:00";
+  */
+}
+*[amenity=recycling][collection_times="24/7"][opening_hours],
+*[amenity=recycling][collection_times       ][opening_hours][collection_times=~/[a-z]-[A-Z].*[0-9]-[0-9]/] {
+  throwWarning: tr("{0} together with {1}. Probably {2} is meant.", "{1.key}", "{0.tag}", "{2.key}");
+  group: tr("suspicious tag combination");
+}
Index: trunk/data/validator/deprecated.mapcss
===================================================================
--- trunk/data/validator/deprecated.mapcss	(revision 15647)
+++ trunk/data/validator/deprecated.mapcss	(revision 15648)
@@ -543,4 +543,5 @@
 
 /* see #11070 */
+*[kerb=unknown],
 *[lock=unknown],
 *[hide=unknown],
@@ -1069,8 +1070,10 @@
 }
 
+/* #18517 */
 *[office=administrative] {
   throwWarning: tr("{0} is deprecated", "{0.tag}");
-  group: tr("deprecated tagging");
   suggestAlternative: "office=government";
+  group: tr("deprecated tagging");
+  fixAdd: "office=government";
 }
 
@@ -1854,2 +1857,24 @@
   group: tr("deprecated tagging");
 }
+
+*[sloped_curb=yes][!kerb],
+*[sloped_curb=both][!kerb] {
+  throwWarning: tr("{0} is deprecated", "{0.tag}");
+  suggestAlternative: "kerb=lowered";
+  group: tr("deprecated tagging");
+  fixRemove: "sloped_curb";
+  fixAdd: "kerb=lowered";
+}
+*[sloped_curb=no][!kerb] {
+  throwWarning: tr("{0} is deprecated", "{0.tag}");
+  suggestAlternative: "kerb=yes";
+  group: tr("deprecated tagging");
+  fixRemove: "sloped_curb";
+  fixAdd: "kerb=yes";
+}
+*[sloped_curb][sloped_curb !~ /^(yes|both|no)$/][!kerb],
+*[sloped_curb][kerb] {
+  throwWarning: tr("{0} is deprecated", "{0.key}");
+  suggestAlternative: "kerb=*";
+  group: tr("deprecated tagging");
+}
Index: trunk/data/validator/highway.mapcss
===================================================================
--- trunk/data/validator/highway.mapcss	(revision 15647)
+++ trunk/data/validator/highway.mapcss	(revision 15648)
@@ -158,2 +158,8 @@
   fixAdd: "railway=level_crossing";
 }
+
+node[highway=crossing][barrier=kerb].is_in_major_road {
+  throwWarning: tr("{0} together with {1}", "{0.tag}", "{1.tag}");
+  suggestAlternative: "kerb=*";
+  group: tr("suspicious tag combination");
+}
