1 | *[barrier=wire_fence] {
|
---|
2 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
3 | group: tr("deprecated tagging");
|
---|
4 | suggestAlternative: "barrier=fence + fence_type=chain_link";
|
---|
5 | fixAdd: "barrier=fence";
|
---|
6 | fixAdd: "fence_type=chain_link";
|
---|
7 | assertMatch: "way barrier=wire_fence";
|
---|
8 | assertNoMatch: "way barrier=fence";
|
---|
9 | }
|
---|
10 |
|
---|
11 | *[barrier=wood_fence] {
|
---|
12 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
13 | suggestAlternative: "barrier=fence + fence_type=wood";
|
---|
14 | group: tr("deprecated tagging");
|
---|
15 | fixAdd: "barrier=fence";
|
---|
16 | fixAdd: "fence_type=wood";
|
---|
17 | }
|
---|
18 |
|
---|
19 | node[highway=ford] {
|
---|
20 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
21 | suggestAlternative: "ford=yes";
|
---|
22 | group: tr("deprecated tagging");
|
---|
23 | fixRemove: "highway";
|
---|
24 | fixAdd: "ford=yes";
|
---|
25 | }
|
---|
26 | way[highway=ford] {
|
---|
27 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
28 | suggestAlternative: "highway=* + ford=yes";
|
---|
29 | group: tr("deprecated tagging");
|
---|
30 | }
|
---|
31 |
|
---|
32 | /* from http://wiki.openstreetmap.org/wiki/Deprecated_features */
|
---|
33 | way[class] {
|
---|
34 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
35 | suggestAlternative: "highway";
|
---|
36 | group: tr("deprecated tagging");
|
---|
37 | }
|
---|
38 | *[highway=stile] {
|
---|
39 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
40 | suggestAlternative: "barrier=stile";
|
---|
41 | group: tr("deprecated tagging");
|
---|
42 | fixRemove: "highway";
|
---|
43 | fixAdd: "barrier=stile";
|
---|
44 | }
|
---|
45 | *[highway=incline] {
|
---|
46 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
47 | suggestAlternative: "incline";
|
---|
48 | group: tr("deprecated tagging");
|
---|
49 | }
|
---|
50 | *[highway=incline_steep] {
|
---|
51 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
52 | suggestAlternative: "incline";
|
---|
53 | group: tr("deprecated tagging");
|
---|
54 | }
|
---|
55 | *[highway=unsurfaced] {
|
---|
56 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
57 | suggestAlternative: "highway=* + surface=unpaved";
|
---|
58 | group: tr("deprecated tagging");
|
---|
59 | fixAdd: "highway=road";
|
---|
60 | fixAdd: "surface=unpaved";
|
---|
61 | }
|
---|
62 | *[landuse=wood] {
|
---|
63 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
64 | suggestAlternative: "landuse=forest";
|
---|
65 | suggestAlternative: "natural=wood";
|
---|
66 | group: tr("deprecated tagging");
|
---|
67 | }
|
---|
68 | *[natural=marsh] {
|
---|
69 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
70 | suggestAlternative: "natural=wetland + wetland=marsh";
|
---|
71 | group: tr("deprecated tagging");
|
---|
72 | fixAdd: "natural=wetland";
|
---|
73 | fixAdd: "wetland=marsh";
|
---|
74 | }
|
---|
75 | /* #23185 */
|
---|
76 | *[landuse=reservoir][!reservoir_type],
|
---|
77 | *[landuse=reservoir][reservoir_type=water_storage] {
|
---|
78 | group: tr("deprecated tagging");
|
---|
79 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
80 | suggestAlternative: "natural=water + water=reservoir";
|
---|
81 | fixAdd: "natural=water";
|
---|
82 | fixAdd: "water=reservoir";
|
---|
83 | fixRemove: "reservoir_type";
|
---|
84 | }
|
---|
85 | *[landuse=reservoir][reservoir_type=tailings] {
|
---|
86 | group: tr("deprecated tagging");
|
---|
87 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
88 | suggestAlternative: "man_made=tailings_pond";
|
---|
89 | fixAdd: "man_made=tailings_pond";
|
---|
90 | fixRemove: "reservoir_type";
|
---|
91 | fixRemove: "reservoir_type";
|
---|
92 | }
|
---|
93 | *[landuse=reservoir][reservoir_type=evaporator] {
|
---|
94 | group: tr("deprecated tagging");
|
---|
95 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
96 | suggestAlternative: "basin=evaporation or landuse=salt_pond";
|
---|
97 | }
|
---|
98 | *[landuse=reservoir][reservoir_type=sewage] {
|
---|
99 | group: tr("deprecated tagging");
|
---|
100 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
101 | suggestAlternative: "natural=water + water=wastewater or landuse=basin + basin=settling or man_made=basin + basin=settling";
|
---|
102 | }
|
---|
103 |
|
---|
104 | *[highway=byway] {
|
---|
105 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
106 | group: tr("deprecated tagging");
|
---|
107 | }
|
---|
108 | *[power_source] {
|
---|
109 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
110 | suggestAlternative: "generator:source";
|
---|
111 | group: tr("deprecated tagging");
|
---|
112 | }
|
---|
113 | *[power_rating] {
|
---|
114 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
115 | suggestAlternative: "generator:output";
|
---|
116 | group: tr("deprecated tagging");
|
---|
117 | }
|
---|
118 |
|
---|
119 | *[shop=antique] {
|
---|
120 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
121 | suggestAlternative: "shop=antiques";
|
---|
122 | group: tr("deprecated tagging");
|
---|
123 | fixAdd: "shop=antiques";
|
---|
124 | }
|
---|
125 |
|
---|
126 | *[shop=bags] {
|
---|
127 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
128 | suggestAlternative: "shop=bag";
|
---|
129 | group: tr("deprecated tagging");
|
---|
130 | fixAdd: "shop=bag";
|
---|
131 | }
|
---|
132 |
|
---|
133 | /* #17527 */
|
---|
134 | *[shop=fashion] {
|
---|
135 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
136 | suggestAlternative: "shop=clothes";
|
---|
137 | group: tr("deprecated tagging");
|
---|
138 | fixAdd: "shop=clothes";
|
---|
139 | }
|
---|
140 |
|
---|
141 | *[shop=organic] {
|
---|
142 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
143 | suggestAlternative: "shop=* + organic=yes";
|
---|
144 | suggestAlternative: "shop=* + organic=only";
|
---|
145 | group: tr("deprecated tagging");
|
---|
146 | }
|
---|
147 |
|
---|
148 | *[shop=pets] {
|
---|
149 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
150 | suggestAlternative: "shop=pet";
|
---|
151 | group: tr("deprecated tagging");
|
---|
152 | fixAdd: "shop=pet";
|
---|
153 | }
|
---|
154 |
|
---|
155 | *[shop=pharmacy] {
|
---|
156 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
157 | suggestAlternative: "amenity=pharmacy";
|
---|
158 | group: tr("deprecated tagging");
|
---|
159 | fixChangeKey: "shop => amenity";
|
---|
160 | }
|
---|
161 |
|
---|
162 | *[bicycle_parking=sheffield] {
|
---|
163 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
164 | suggestAlternative: "bicycle_parking=stands";
|
---|
165 | group: tr("deprecated tagging");
|
---|
166 | fixAdd: "bicycle_parking=stands";
|
---|
167 | }
|
---|
168 |
|
---|
169 | *[amenity=emergency_phone] {
|
---|
170 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
171 | suggestAlternative: "emergency=phone";
|
---|
172 | group: tr("deprecated tagging");
|
---|
173 | fixRemove: "amenity";
|
---|
174 | fixAdd: "emergency=phone";
|
---|
175 | }
|
---|
176 |
|
---|
177 | /* #8132 */
|
---|
178 | *[sport=gaelic_football] {
|
---|
179 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
180 | suggestAlternative: "sport=gaelic_games";
|
---|
181 | group: tr("deprecated tagging");
|
---|
182 | fixAdd: "sport=gaelic_games";
|
---|
183 | }
|
---|
184 |
|
---|
185 | /* #8847, #8961 */
|
---|
186 | *[power=station] {
|
---|
187 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
188 | suggestAlternative: "power=plant";
|
---|
189 | suggestAlternative: "power=substation";
|
---|
190 | group: tr("deprecated tagging");
|
---|
191 | }
|
---|
192 |
|
---|
193 | *[power=sub_station] {
|
---|
194 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
195 | suggestAlternative: "power=substation";
|
---|
196 | group: tr("deprecated tagging");
|
---|
197 | fixAdd: "power=substation";
|
---|
198 | }
|
---|
199 |
|
---|
200 | *[location=rooftop] {
|
---|
201 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
202 | suggestAlternative: "location=roof";
|
---|
203 | group: tr("deprecated tagging");
|
---|
204 | fixAdd: "location=roof";
|
---|
205 | }
|
---|
206 |
|
---|
207 | *[generator:location] {
|
---|
208 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
209 | suggestAlternative: "location";
|
---|
210 | group: tr("deprecated tagging");
|
---|
211 | fixChangeKey: "generator:location => location";
|
---|
212 | }
|
---|
213 |
|
---|
214 | *[generator:method=dam] {
|
---|
215 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
216 | suggestAlternative: "generator:method=water-storage";
|
---|
217 | group: tr("deprecated tagging");
|
---|
218 | fixAdd: "generator:method=water-storage";
|
---|
219 | }
|
---|
220 |
|
---|
221 | *[generator:method=pumped-storage] {
|
---|
222 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
223 | suggestAlternative: "generator:method=water-pumped-storage";
|
---|
224 | group: tr("deprecated tagging");
|
---|
225 | fixAdd: "generator:method=water-pumped-storage";
|
---|
226 | }
|
---|
227 |
|
---|
228 | *[generator:method=pumping] {
|
---|
229 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
230 | suggestAlternative: "generator:method=water-pumped-storage";
|
---|
231 | group: tr("deprecated tagging");
|
---|
232 | fixAdd: "generator:method=water-pumped-storage";
|
---|
233 | }
|
---|
234 |
|
---|
235 | /* #8962 */
|
---|
236 | *[fence_type=chain] {
|
---|
237 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
238 | suggestAlternative: "barrier=chain";
|
---|
239 | suggestAlternative: "barrier=fence + fence_type=chain_link";
|
---|
240 | group: tr("deprecated tagging");
|
---|
241 | }
|
---|
242 |
|
---|
243 | /* #9000 */
|
---|
244 | *[building=entrance] {
|
---|
245 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
246 | suggestAlternative: "entrance";
|
---|
247 | group: tr("deprecated tagging");
|
---|
248 | }
|
---|
249 |
|
---|
250 | /* #9213 */
|
---|
251 | *[board_type=board] {
|
---|
252 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
253 | group: tr("deprecated tagging");
|
---|
254 | fixRemove: "board_type";
|
---|
255 | }
|
---|
256 |
|
---|
257 | /* #8434 */
|
---|
258 | *[man_made=measurement_station] {
|
---|
259 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
260 | suggestAlternative: "man_made=monitoring_station";
|
---|
261 | group: tr("deprecated tagging");
|
---|
262 | fixAdd: "man_made=monitoring_station";
|
---|
263 | }
|
---|
264 |
|
---|
265 | *[measurement=water_level] {
|
---|
266 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
267 | suggestAlternative: "monitoring:water_level=yes";
|
---|
268 | group: tr("deprecated tagging");
|
---|
269 | fixRemove: "measurement";
|
---|
270 | fixAdd: "monitoring:water_level=yes";
|
---|
271 | }
|
---|
272 |
|
---|
273 | *[measurement=weather] {
|
---|
274 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
275 | suggestAlternative: "monitoring:weather=yes";
|
---|
276 | group: tr("deprecated tagging");
|
---|
277 | fixRemove: "measurement";
|
---|
278 | fixAdd: "monitoring:weather=yes";
|
---|
279 | }
|
---|
280 |
|
---|
281 | *[measurement=seismic] {
|
---|
282 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
283 | suggestAlternative: "monitoring:seismic_activity=yes";
|
---|
284 | group: tr("deprecated tagging");
|
---|
285 | fixRemove: "measurement";
|
---|
286 | fixAdd: "monitoring:seismic_activity=yes";
|
---|
287 | }
|
---|
288 |
|
---|
289 | *[monitoring:river_level] {
|
---|
290 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
291 | suggestAlternative: "monitoring:water_level";
|
---|
292 | group: tr("deprecated tagging");
|
---|
293 | fixChangeKey: "monitoring:river_level => monitoring:water_level";
|
---|
294 | }
|
---|
295 |
|
---|
296 | *[stay] {
|
---|
297 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
298 | suggestAlternative: "maxstay";
|
---|
299 | group: tr("deprecated tagging");
|
---|
300 | fixChangeKey: "stay => maxstay";
|
---|
301 | }
|
---|
302 |
|
---|
303 | /* #9554 */
|
---|
304 | *[emergency=aed] {
|
---|
305 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
306 | suggestAlternative: "emergency=defibrillator";
|
---|
307 | group: tr("deprecated tagging");
|
---|
308 | fixAdd: "emergency=defibrillator";
|
---|
309 | }
|
---|
310 |
|
---|
311 | /* from http://wiki.openstreetmap.org/wiki/Conditional_restrictions#Deprecated_tags */
|
---|
312 | *[day_on][!restriction],
|
---|
313 | *[day_off][!restriction],
|
---|
314 | *[date_on][!restriction],
|
---|
315 | *[date_off][!restriction],
|
---|
316 | *[hour_on][!restriction],
|
---|
317 | *[hour_off][!restriction] {
|
---|
318 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
319 | suggestAlternative: "*:conditional";
|
---|
320 | group: tr("deprecated tagging");
|
---|
321 | assertMatch: "node day_on=0-12";
|
---|
322 | }
|
---|
323 |
|
---|
324 | /* #10000 */
|
---|
325 | *[access=designated] {
|
---|
326 | throwWarning: tr("''{0}'' is meaningless, use more specific tags, e.g. ''{1}''", "access=designated", "bicycle=designated");
|
---|
327 | assertMatch: "way access=designated";
|
---|
328 | }
|
---|
329 | *[access=official] {
|
---|
330 | throwWarning: tr("''{0}'' does not specify the official mode of transportation, use ''{1}'' for example", "access=official", "bicycle=official");
|
---|
331 | assertMatch: "way access=official";
|
---|
332 | }
|
---|
333 |
|
---|
334 | /* #10085 */
|
---|
335 | *[fixme=yes], *[FIXME=yes] {
|
---|
336 | throwWarning: tr("{0}={1} is unspecific. Instead of ''{1}'' please give more information about what exactly should be fixed.", "{0.key}", "{0.value}");
|
---|
337 | assertMatch: "way fixme=yes";
|
---|
338 | }
|
---|
339 |
|
---|
340 | *[name][name=~/^(?i)fixme$/] {
|
---|
341 | throwWarning: tr("Wrong usage of {0} tag. Remove {1}, because it is clear that the name is missing even without an additional tag.", "{0.key}", "{0.tag}");
|
---|
342 | fixRemove: "name";
|
---|
343 | assertMatch: "node name=fixme";
|
---|
344 | assertMatch: "node name=Fixme";
|
---|
345 | assertMatch: "node name=FIXME";
|
---|
346 | assertNoMatch: "node name=valid name";
|
---|
347 | }
|
---|
348 |
|
---|
349 | *[note][note=~/^(?i)fixme$/] {
|
---|
350 | throwWarning: tr("{0} is unspecific. Instead use the key fixme with the information what exactly should be fixed in the value of fixme.", "{0.tag}");
|
---|
351 | }
|
---|
352 |
|
---|
353 | /* #10107, #10108, #10929, #13391, #22336 - http://wiki.openstreetmap.org/wiki/Proposed_features/leaftype#Features.2FPages_affected */
|
---|
354 | *[type=broad_leaved],
|
---|
355 | *[type=broad_leafed] {
|
---|
356 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
357 | suggestAlternative: "leaf_type=broadleaved";
|
---|
358 | group: tr("deprecated tagging");
|
---|
359 | fixRemove: "{0.key}";
|
---|
360 | fixAdd: "leaf_type=broadleaved";
|
---|
361 | }
|
---|
362 | *[wood=coniferous],
|
---|
363 | *[type=coniferous],
|
---|
364 | *[type=conifer] {
|
---|
365 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
366 | suggestAlternative: "leaf_type=needleleaved";
|
---|
367 | group: tr("deprecated tagging");
|
---|
368 | fixRemove: "{0.key}";
|
---|
369 | fixAdd: "leaf_type=needleleaved";
|
---|
370 | }
|
---|
371 | *[wood=mixed] {
|
---|
372 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
373 | suggestAlternative: "leaf_type=mixed";
|
---|
374 | group: tr("deprecated tagging");
|
---|
375 | fixRemove: "wood";
|
---|
376 | fixAdd: "leaf_type=mixed";
|
---|
377 | }
|
---|
378 | *[wood=evergreen],
|
---|
379 | *[type=evergreen] {
|
---|
380 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
381 | suggestAlternative: "leaf_cycle=evergreen";
|
---|
382 | group: tr("deprecated tagging");
|
---|
383 | fixRemove: "{0.key}";
|
---|
384 | fixAdd: "leaf_cycle=evergreen";
|
---|
385 | }
|
---|
386 | *[wood=deciduous],
|
---|
387 | *[type=deciduous],
|
---|
388 | *[type=deciduos] {
|
---|
389 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
390 | suggestAlternative: "leaf_cycle=deciduous";
|
---|
391 | group: tr("deprecated tagging");
|
---|
392 | fixRemove: "{0.key}";
|
---|
393 | fixAdd: "leaf_cycle=deciduous";
|
---|
394 | }
|
---|
395 | node[type=palm],
|
---|
396 | way[type=palm] {
|
---|
397 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
398 | suggestAlternative: "leaf_type";
|
---|
399 | suggestAlternative: "trees";
|
---|
400 | suggestAlternative: "species";
|
---|
401 | group: tr("deprecated tagging");
|
---|
402 | }
|
---|
403 |
|
---|
404 | *[natural=land] {
|
---|
405 | throwWarning: tr("{0} is deprecated. Please use instead a multipolygon.", "{0.tag}");
|
---|
406 | group: tr("deprecated tagging");
|
---|
407 | assertMatch: "way natural=land";
|
---|
408 | }
|
---|
409 |
|
---|
410 | /* #10447 - https://wiki.openstreetmap.org/wiki/Proposed_features/Bridge_types#Deprecated_bridge_key_values */
|
---|
411 | *[bridge=causeway] {
|
---|
412 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
413 | suggestAlternative: "ford=yes";
|
---|
414 | suggestAlternative: "bridge=low_water_crossing";
|
---|
415 | suggestAlternative: "embankment=yes";
|
---|
416 | group: tr("deprecated tagging");
|
---|
417 | }
|
---|
418 | *[bridge=swing] {
|
---|
419 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
420 | suggestAlternative: "bridge:movable=swing";
|
---|
421 | suggestAlternative: "bridge:structure=simple-suspension";
|
---|
422 | group: tr("deprecated tagging");
|
---|
423 | }
|
---|
424 | *[bridge=suspension] {
|
---|
425 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
426 | suggestAlternative: "bridge=yes + bridge:structure=suspension";
|
---|
427 | group: tr("deprecated tagging");
|
---|
428 | fixAdd: "bridge=yes";
|
---|
429 | fixAdd: "bridge:structure=suspension";
|
---|
430 | }
|
---|
431 | *[bridge=pontoon] {
|
---|
432 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
433 | suggestAlternative: "bridge=yes + bridge:structure=floating";
|
---|
434 | group: tr("deprecated tagging");
|
---|
435 | fixAdd: "bridge=yes";
|
---|
436 | fixAdd: "bridge:structure=floating";
|
---|
437 | }
|
---|
438 |
|
---|
439 | /* #10530 - Incorrect tag proposed in internal preset for years */
|
---|
440 | *[fee=interval],
|
---|
441 | *[lit=interval],
|
---|
442 | *[supervised=interval] {
|
---|
443 | throwWarning: tr("{0} is deprecated. Please specify interval by using opening_hours syntax", "{0.tag}");
|
---|
444 | group: tr("deprecated tagging");
|
---|
445 | }
|
---|
446 |
|
---|
447 | /* #10582 - JOSM supported this tag as "don't upload this" feature, before the introduction of upload flag at layer level */
|
---|
448 | *[/josm\/ignore/] {
|
---|
449 | throwError: tr("{0} is deprecated. Please delete this object and use a private layer instead", "{0.key}");
|
---|
450 | group: tr("deprecated tagging");
|
---|
451 | fixDeleteObject: this;
|
---|
452 | }
|
---|
453 |
|
---|
454 | /* #8281 */
|
---|
455 | *[sport=diving] {
|
---|
456 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
457 | suggestAlternative: "sport=scuba_diving";
|
---|
458 | suggestAlternative: "sport=cliff_diving";
|
---|
459 | group: tr("deprecated tagging");
|
---|
460 | }
|
---|
461 |
|
---|
462 | /* #8281 */
|
---|
463 | *[parking=park_and_ride] {
|
---|
464 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
465 | suggestAlternative: "amenity=parking + park_ride=yes";
|
---|
466 | group: tr("deprecated tagging");
|
---|
467 | fixRemove: "parking";
|
---|
468 | fixAdd: "amenity=parking";
|
---|
469 | fixAdd: "park_ride=yes";
|
---|
470 | }
|
---|
471 |
|
---|
472 | /* #19287, #18334, #17950, #10661, #10837, #11737, #12771, #21009, #22379 */
|
---|
473 | *[parking=yes],
|
---|
474 | *[playground=yes],
|
---|
475 | *[manhole=plain],
|
---|
476 | *[manhole=unknown],
|
---|
477 | *[manhole=yes],
|
---|
478 | *[police=yes],
|
---|
479 | *[traffic_calming=yes],
|
---|
480 | *[access=restricted],
|
---|
481 | *[barrier=yes],
|
---|
482 | *[aerialway=yes][!public_transport],
|
---|
483 | *[amenity=yes],
|
---|
484 | *[leisure=yes],
|
---|
485 | *[landuse=yes],
|
---|
486 | *[shop="*"],
|
---|
487 | *[shop=yes][amenity!=fuel],
|
---|
488 | *[craft=yes],
|
---|
489 | *[service=yes],
|
---|
490 | *[place=yes] {
|
---|
491 | throwWarning: tr("{0}={1} is unspecific. Please replace ''{1}'' by a specific value.", "{0.key}", "{0.value}");
|
---|
492 | }
|
---|
493 |
|
---|
494 | /* #10693 - http://wiki.openstreetmap.org/wiki/Proposed_features/drop_recommendation_for_place_name , #10837 */
|
---|
495 | *[place_name][!name] {
|
---|
496 | throwWarning: tr("{0} should be replaced with {1}", "{0.key}", "{1.key}");
|
---|
497 | fixChangeKey: "place_name => name";
|
---|
498 | }
|
---|
499 | *[place][place_name = *name] {
|
---|
500 | throwWarning: tr("{0} = {1}; remove {0}", "{1.key}", "{1.value}");
|
---|
501 | fixRemove: "{1.key}";
|
---|
502 | }
|
---|
503 |
|
---|
504 | way[sidewalk=yes] {
|
---|
505 | throwWarning: tr("{0} is unspecific", "{0.tag}");
|
---|
506 | suggestAlternative: "sidewalk=left";
|
---|
507 | suggestAlternative: "sidewalk=right";
|
---|
508 | suggestAlternative: "sidewalk=both";
|
---|
509 | suggestAlternative: "sidewalk=separate";
|
---|
510 | }
|
---|
511 |
|
---|
512 | *[waterway=water_point] {
|
---|
513 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
514 | suggestAlternative: "amenity=water_point";
|
---|
515 | group: tr("deprecated tagging");
|
---|
516 | fixChangeKey: "waterway => amenity";
|
---|
517 | }
|
---|
518 | *[waterway=waste_disposal] {
|
---|
519 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
520 | suggestAlternative: "amenity=waste_disposal";
|
---|
521 | group: tr("deprecated tagging");
|
---|
522 | fixChangeKey: "waterway => amenity";
|
---|
523 | }
|
---|
524 | *[waterway=mooring] {
|
---|
525 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
526 | suggestAlternative: "mooring=yes";
|
---|
527 | group: tr("deprecated tagging");
|
---|
528 | fixRemove: "waterway";
|
---|
529 | fixAdd: "mooring=yes";
|
---|
530 | }
|
---|
531 |
|
---|
532 | /* #10837, #21268 */
|
---|
533 | *[building][levels],
|
---|
534 | *[building:part][levels] {
|
---|
535 | throwWarning: tr("{0} is deprecated", "{1.key}");
|
---|
536 | suggestAlternative: "building:levels";
|
---|
537 | group: tr("deprecated tagging");
|
---|
538 | fixChangeKey: "levels => building:levels";
|
---|
539 | set levels_building;
|
---|
540 | }
|
---|
541 | *[levels]!.levels_building {
|
---|
542 | throwWarning: tr("Unusual key {0}, maybe {1} or {2} is meant", "{0.key}", "level", "building:levels");
|
---|
543 | }
|
---|
544 |
|
---|
545 | /* #22481 */
|
---|
546 | *[building:level][!building:levels] {
|
---|
547 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
548 | suggestAlternative: "building:levels";
|
---|
549 | group: tr("deprecated tagging");
|
---|
550 | fixChangeKey: "building:level => building:levels";
|
---|
551 | }
|
---|
552 | *[building:level][building:levels] {
|
---|
553 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
554 | suggestAlternative: "building:levels";
|
---|
555 | group: tr("deprecated tagging");
|
---|
556 | }
|
---|
557 |
|
---|
558 | /* #10691 */
|
---|
559 | *[protected_class] {
|
---|
560 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
561 | suggestAlternative: "protect_class";
|
---|
562 | group: tr("deprecated tagging");
|
---|
563 | fixChangeKey: "protected_class => protect_class";
|
---|
564 | }
|
---|
565 |
|
---|
566 | /* #11070 */
|
---|
567 | *[kerb=unknown],
|
---|
568 | *[lock=unknown],
|
---|
569 | *[hide=unknown],
|
---|
570 | *[shelter=unknown],
|
---|
571 | *[access=unknown],
|
---|
572 | *[capacity:parent=unknown],
|
---|
573 | *[capacity:women=unknown],
|
---|
574 | *[capacity:disabled=unknown],
|
---|
575 | *[crossing=unknown],
|
---|
576 | *[foot=unknown] {
|
---|
577 | throwWarning: tr("Unspecific tag {0}", "{0.tag}");
|
---|
578 | }
|
---|
579 |
|
---|
580 | /* #11183 */
|
---|
581 | *[sport=skiing] {
|
---|
582 | throwWarning: tr("Definition of {0} is unclear", "{0.tag}");
|
---|
583 | suggestAlternative: tr("{0} + {1} + {2}", "piste:type=*", "piste:difficulty=*", "piste:grooming=*");
|
---|
584 | group: tr("deprecated tagging");
|
---|
585 | }
|
---|
586 |
|
---|
587 | /* #11223 */
|
---|
588 | *[waterway=wadi] {
|
---|
589 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
590 | suggestAlternative: "{0.key}=* + intermittent=yes";
|
---|
591 | suggestAlternative: "natural=valley";
|
---|
592 | group: tr("deprecated tagging");
|
---|
593 | }
|
---|
594 |
|
---|
595 | /* #10346 */
|
---|
596 | way[oneway=1] {
|
---|
597 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
598 | suggestAlternative: "oneway=yes";
|
---|
599 | group: tr("deprecated tagging");
|
---|
600 | fixAdd: "oneway=yes";
|
---|
601 | }
|
---|
602 |
|
---|
603 | /* #11329 */
|
---|
604 | way[oneway=-1] {
|
---|
605 | throwWarning: tr("{0} is not recommended. Use the Reverse Ways function from the Tools menu.", "{0.tag}");
|
---|
606 | }
|
---|
607 |
|
---|
608 | *[drinkable] {
|
---|
609 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
610 | suggestAlternative: "drinking_water";
|
---|
611 | group: tr("deprecated tagging");
|
---|
612 | }
|
---|
613 |
|
---|
614 | /* #10329, #15877 */
|
---|
615 | /* simple key change */
|
---|
616 | *[color][!colour] {
|
---|
617 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
618 | suggestAlternative: "colour";
|
---|
619 | group: tr("deprecated tagging");
|
---|
620 | fixChangeKey: "color => colour";
|
---|
621 | assertMatch: "way color=red";
|
---|
622 | assertNoMatch: "way color=red colour=red";
|
---|
623 | }
|
---|
624 | area[building:color][!building:colour] {
|
---|
625 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
626 | suggestAlternative: "building:colour";
|
---|
627 | group: tr("deprecated tagging");
|
---|
628 | fixChangeKey: "building:color => building:colour";
|
---|
629 | assertMatch: "way building:color=red";
|
---|
630 | assertNoMatch: "way building:color=red building:colour=red";
|
---|
631 | }
|
---|
632 | area[roof:color][!roof:colour] {
|
---|
633 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
634 | suggestAlternative: "roof:colour";
|
---|
635 | group: tr("deprecated tagging");
|
---|
636 | fixChangeKey: "roof:color => roof:colour";
|
---|
637 | assertMatch: "way roof:color=red";
|
---|
638 | assertNoMatch: "way roof:color=red roof:colour=red";
|
---|
639 | }
|
---|
640 | /* both tags with same value, remove color */
|
---|
641 | *[color][colour][color=*colour] {
|
---|
642 | throwWarning: tr("{0} together with {1}", "{0.key}", "{1.key}");
|
---|
643 | suggestAlternative: "colour";
|
---|
644 | group: tr("deprecated tagging");
|
---|
645 | set samecolor;
|
---|
646 | fixRemove: "color";
|
---|
647 | assertMatch: "way color=red colour=red";
|
---|
648 | assertNoMatch: "way color=red colour=green";
|
---|
649 | }
|
---|
650 | area[building:color][building:colour]["building:color"=*"building:colour"] {
|
---|
651 | throwWarning: tr("{0} together with {1}", "{0.key}", "{1.key}");
|
---|
652 | suggestAlternative: "building:colour";
|
---|
653 | group: tr("deprecated tagging");
|
---|
654 | set samebuildingcolor;
|
---|
655 | fixRemove: "building:color";
|
---|
656 | assertMatch: "way building:color=red building:colour=red";
|
---|
657 | assertNoMatch: "way building:color=red building:colour=green";
|
---|
658 | }
|
---|
659 | area[roof:color][roof:colour]["roof:color"=*"roof:colour"] {
|
---|
660 | throwWarning: tr("{0} together with {1}", "{0.key}", "{1.key}");
|
---|
661 | suggestAlternative: "roof:colour";
|
---|
662 | group: tr("deprecated tagging");
|
---|
663 | set sameroofcolor;
|
---|
664 | fixRemove: "roof:color";
|
---|
665 | assertMatch: "way roof:color=red roof:colour=red";
|
---|
666 | assertNoMatch: "way roof:color=red roof:colour=green";
|
---|
667 | }
|
---|
668 | /* both tags with different values, no autofix */
|
---|
669 | *[color][colour]!.samecolor {
|
---|
670 | throwWarning: tr("{0} together with {1} and conflicting values", "{0.key}", "{1.key}");
|
---|
671 | suggestAlternative: "colour";
|
---|
672 | group: tr("deprecated tagging");
|
---|
673 | assertNoMatch: "way color=red colour=red";
|
---|
674 | assertMatch: "way color=red colour=green";
|
---|
675 | }
|
---|
676 | *[building:color][building:colour]!.samebuildingcolor {
|
---|
677 | throwWarning: tr("{0} together with {1} and conflicting values", "{0.key}", "{1.key}");
|
---|
678 | suggestAlternative: "building:colour";
|
---|
679 | group: tr("deprecated tagging");
|
---|
680 | assertNoMatch: "way building:color=red building:colour=red";
|
---|
681 | assertMatch: "way building:color=red building:colour=green";
|
---|
682 | }
|
---|
683 | *[roof:color][roof:colour]!.sameroofcolor {
|
---|
684 | throwWarning: tr("{0} together with {1} and conflicting values", "{0.key}", "{1.key}");
|
---|
685 | suggestAlternative: "roof:colour";
|
---|
686 | group: tr("deprecated tagging");
|
---|
687 | assertNoMatch: "way roof:color=red roof:colour=red";
|
---|
688 | assertMatch: "way roof:color=red roof:colour=green";
|
---|
689 | }
|
---|
690 | /* further more universal checks, no autofix */
|
---|
691 | /* gpxd:color has another warning in unnecessary.mapcss */
|
---|
692 | *[/:color/][!building:color][!roof:color][!gpxd:color] {
|
---|
693 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
694 | suggestAlternative: ":colour";
|
---|
695 | group: tr("deprecated tagging");
|
---|
696 | assertNoMatch: "way color=red";
|
---|
697 | assertNoMatch: "way roof:color=grey";
|
---|
698 | assertMatch: "way cycleway:surface:color=grey";
|
---|
699 | }
|
---|
700 | *[/color:/] {
|
---|
701 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
702 | suggestAlternative: "colour:";
|
---|
703 | group: tr("deprecated tagging");
|
---|
704 | assertNoMatch: "way color=red";
|
---|
705 | assertMatch: "way color:back=grey";
|
---|
706 | }
|
---|
707 |
|
---|
708 | /* #11234 */
|
---|
709 | *[/=|\+|\/|&|<|>|;|'|"|%|#|@|\\|,|\.|\{|\}|\?|\*|\^|\$/] {
|
---|
710 | throwWarning: tr("{0}", "{0.key}");
|
---|
711 | group: tr("key with uncommon character");
|
---|
712 | }
|
---|
713 |
|
---|
714 | /* #11330, #18642 */
|
---|
715 | *[/^.$/],
|
---|
716 | node[/^..$/][!kp][!pk],
|
---|
717 | way[/^..$/][route=ferry][!to],
|
---|
718 | way[/^..$/][route!=ferry],
|
---|
719 | relation[/^..$/][!to] {
|
---|
720 | throwWarning: tr("uncommon short key");
|
---|
721 | assertNoMatch: "relation to=Berlin";
|
---|
722 | assertMatch: "relation fo=bar";
|
---|
723 | assertMatch: "way to=bar";
|
---|
724 | assertNoMatch: "way to=Zuidschermer;Akersloot route=ferry";
|
---|
725 | assertMatch: "node fo=bar";
|
---|
726 | assertMatch: "node f=b";
|
---|
727 | assertNoMatch: "node kp=5"; /* already has a deprecated warning */
|
---|
728 | assertNoMatch: "node pk=7"; /* already has a deprecated warning */
|
---|
729 | }
|
---|
730 |
|
---|
731 | /* #11439 */
|
---|
732 | *[sport=hockey] {
|
---|
733 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
734 | suggestAlternative: "sport=field_hockey";
|
---|
735 | suggestAlternative: "sport=ice_hockey";
|
---|
736 | group: tr("deprecated tagging");
|
---|
737 | }
|
---|
738 |
|
---|
739 | /* #11471 */
|
---|
740 | *[sport=billard],
|
---|
741 | *[sport=billards],
|
---|
742 | *[sport=billiard] {
|
---|
743 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
744 | suggestAlternative: "sport=billiards";
|
---|
745 | group: tr("deprecated tagging");
|
---|
746 | fixAdd: "sport=billiards";
|
---|
747 | }
|
---|
748 |
|
---|
749 | /* #11499, #16928, #22367 */
|
---|
750 | *[payment:electronic_purses=yes] {
|
---|
751 | throwOther: tr("{0} is inaccurate. Use separate tags for each specific type, e.g. {1} or {2}.", "{0.tag}", "payment:ep_geldkarte=yes", "payment:ep_quick=yes");
|
---|
752 | }
|
---|
753 | *[payment:cryptocurrencies=yes] {
|
---|
754 | throwOther: tr("{0} is inaccurate. Use separate tags for each specific type, e.g. {1} or {2}.", "{0.tag}", "payment:bitcoin=yes", "payment:litecoin=yes");
|
---|
755 | }
|
---|
756 |
|
---|
757 | /* #16253 */
|
---|
758 | *[payment:ep_quick],
|
---|
759 | *[payment:ep_cash],
|
---|
760 | *[payment:ep_proton],
|
---|
761 | *[payment:ep_chipknip] {
|
---|
762 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
763 | group: tr("deprecated tagging");
|
---|
764 | fixRemove: "{0.key}";
|
---|
765 | }
|
---|
766 |
|
---|
767 | /* #8717, #20326 */
|
---|
768 | *[kp][railway!=milestone] {
|
---|
769 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
770 | suggestAlternative: "distance";
|
---|
771 | group: tr("deprecated tagging");
|
---|
772 | fixChangeKey: "kp => distance";
|
---|
773 | }
|
---|
774 | *[pk][railway!=milestone] {
|
---|
775 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
776 | suggestAlternative: "distance";
|
---|
777 | group: tr("deprecated tagging");
|
---|
778 | fixChangeKey: "pk => distance";
|
---|
779 | }
|
---|
780 | *[kp][railway=milestone] {
|
---|
781 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
782 | suggestAlternative: "railway:position";
|
---|
783 | group: tr("deprecated tagging");
|
---|
784 | fixChangeKey: "kp => railway:position";
|
---|
785 | }
|
---|
786 | *[pk][railway=milestone] {
|
---|
787 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
788 | suggestAlternative: "railway:position";
|
---|
789 | group: tr("deprecated tagging");
|
---|
790 | fixChangeKey: "pk => railway:position";
|
---|
791 | }
|
---|
792 | *[distance][railway=milestone] {
|
---|
793 | throwWarning: tr("{0} is deprecated for {1}", "{0.key}", "{1.tag}");
|
---|
794 | suggestAlternative: "railway:position";
|
---|
795 | group: tr("deprecated tagging");
|
---|
796 | fixChangeKey: "distance => railway:position";
|
---|
797 | }
|
---|
798 |
|
---|
799 | *[postcode] {
|
---|
800 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
801 | suggestAlternative: "addr:postcode";
|
---|
802 | group: tr("deprecated tagging");
|
---|
803 | suggestAlternative: "postal_code";
|
---|
804 | }
|
---|
805 |
|
---|
806 | *[water=intermittent] {
|
---|
807 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
808 | suggestAlternative: "intermittent=yes";
|
---|
809 | group: tr("deprecated tagging");
|
---|
810 | fixRemove: "water";
|
---|
811 | fixAdd: "intermittent=yes";
|
---|
812 | }
|
---|
813 |
|
---|
814 | /* #10907, #14141 */
|
---|
815 | /* type=waterway on ways is questionable, but the autofix doesn't make it better, so disabled; type=route and type=network is used only on relations */
|
---|
816 | way[type][type!=waterway][man_made=pipeline],
|
---|
817 | node[type][pipeline=marker] {
|
---|
818 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
819 | suggestAlternative: "substance";
|
---|
820 | group: tr("deprecated tagging");
|
---|
821 | fixChangeKey: "type => substance";
|
---|
822 | }
|
---|
823 |
|
---|
824 | *[landuse=farm] {
|
---|
825 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
826 | suggestAlternative: "landuse=farmland";
|
---|
827 | suggestAlternative: "landuse=farmyard";
|
---|
828 | group: tr("deprecated tagging");
|
---|
829 | }
|
---|
830 |
|
---|
831 | /* #12135 comment:11 */
|
---|
832 | *[seamark=buoy]["seamark:type"=~/^(buoy_cardinal|buoy_installation|buoy_isolated_danger|buoy_lateral|buoy_safe_water|buoy_special_purpose|mooring)$/] {
|
---|
833 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
834 | suggestAlternative: "{1.tag}";
|
---|
835 | group: tr("deprecated tagging");
|
---|
836 | fixRemove: "seamark";
|
---|
837 | }
|
---|
838 | *[seamark=buoy]["seamark:type"!~/^(buoy_cardinal|buoy_installation|buoy_isolated_danger|buoy_lateral|buoy_safe_water|buoy_special_purpose|mooring)$/] {
|
---|
839 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
840 | suggestAlternative: "{1.tag}";
|
---|
841 | group: tr("deprecated tagging");
|
---|
842 | }
|
---|
843 | /* #12135 */
|
---|
844 | *[landuse=conservation] {
|
---|
845 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
846 | suggestAlternative: "boundary=protected_area";
|
---|
847 | group: tr("deprecated tagging");
|
---|
848 | fixAdd: "boundary=protected_area";
|
---|
849 | fixRemove: "landuse";
|
---|
850 | }
|
---|
851 |
|
---|
852 | /* #12205 */
|
---|
853 | *[amenity=kiosk] {
|
---|
854 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
855 | suggestAlternative: "shop=kiosk";
|
---|
856 | group: tr("deprecated tagging");
|
---|
857 | fixChangeKey: "amenity => shop";
|
---|
858 | }
|
---|
859 | *[amenity=shop] {
|
---|
860 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
861 | suggestAlternative: "shop=*";
|
---|
862 | group: tr("deprecated tagging");
|
---|
863 | }
|
---|
864 | *[shop=fishmonger] {
|
---|
865 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
866 | suggestAlternative: "shop=seafood";
|
---|
867 | group: tr("deprecated tagging");
|
---|
868 | fixAdd: "shop=seafood";
|
---|
869 | }
|
---|
870 | *[shop=fish] {
|
---|
871 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
872 | suggestAlternative: "shop=seafood";
|
---|
873 | suggestAlternative: "shop=pet";
|
---|
874 | suggestAlternative: "shop=fishing";
|
---|
875 | group: tr("deprecated tagging");
|
---|
876 | }
|
---|
877 | *[shop=betting] {
|
---|
878 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
879 | suggestAlternative: "shop=bookmaker";
|
---|
880 | suggestAlternative: "shop=lottery";
|
---|
881 | suggestAlternative: "amenity=casino";
|
---|
882 | suggestAlternative: "leisure=amusement_arcade";
|
---|
883 | suggestAlternative: "leisure=adult_gaming_centre";
|
---|
884 | suggestAlternative: "amenity=gambling";
|
---|
885 | group: tr("deprecated tagging");
|
---|
886 | }
|
---|
887 | *[shop=perfume] {
|
---|
888 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
889 | suggestAlternative: "shop=perfumery";
|
---|
890 | group: tr("deprecated tagging");
|
---|
891 | fixAdd: "shop=perfumery";
|
---|
892 | }
|
---|
893 | *[amenity=exercise_point] {
|
---|
894 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
895 | suggestAlternative: "leisure=fitness_station";
|
---|
896 | group: tr("deprecated tagging");
|
---|
897 | fixAdd: "leisure=fitness_station";
|
---|
898 | fixRemove: "amenity";
|
---|
899 | }
|
---|
900 | *[shop=auto_parts] {
|
---|
901 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
902 | suggestAlternative: "shop=car_parts";
|
---|
903 | group: tr("deprecated tagging");
|
---|
904 | fixAdd: "shop=car_parts";
|
---|
905 | }
|
---|
906 | *[amenity=car_repair] {
|
---|
907 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
908 | suggestAlternative: "shop=car_repair";
|
---|
909 | group: tr("deprecated tagging");
|
---|
910 | fixChangeKey: "amenity => shop";
|
---|
911 | }
|
---|
912 |
|
---|
913 | /* #12311 */
|
---|
914 | *[amenity=studio][type=audio],
|
---|
915 | *[amenity=studio][type=radio],
|
---|
916 | *[amenity=studio][type=television],
|
---|
917 | *[amenity=studio][type=video] {
|
---|
918 | throwWarning: tr("{0} is deprecated for {1}", "{1.key}", "{0.tag}");
|
---|
919 | suggestAlternative: "studio";
|
---|
920 | group: tr("deprecated tagging");
|
---|
921 | fixChangeKey: "type => studio";
|
---|
922 | }
|
---|
923 |
|
---|
924 | /* #11507, #12297, #15409 */
|
---|
925 | *[power=cable_distribution_cabinet] {
|
---|
926 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
927 | suggestAlternative: "man_made=street_cabinet + street_cabinet=*";
|
---|
928 | group: tr("deprecated tagging");
|
---|
929 | fixAdd: "man_made=street_cabinet";
|
---|
930 | fixRemove: "power";
|
---|
931 | }
|
---|
932 |
|
---|
933 | /* #16430 */
|
---|
934 | *[power][location=kiosk] {
|
---|
935 | throwWarning: tr("{0} is deprecated", "{1.tag}");
|
---|
936 | group: tr("deprecated tagging");
|
---|
937 | fixAdd: "man_made=street_cabinet";
|
---|
938 | fixAdd: "street_cabinet=power";
|
---|
939 | fixRemove: "location";
|
---|
940 | }
|
---|
941 |
|
---|
942 | /* #12276 */
|
---|
943 | *[man_made=well] {
|
---|
944 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
945 | suggestAlternative: "man_made=water_well";
|
---|
946 | suggestAlternative: "man_made=petroleum_well";
|
---|
947 | group: tr("deprecated tagging");
|
---|
948 | }
|
---|
949 | *[amenity=dog_bin],
|
---|
950 | *[amenity=dog_waste_bin] {
|
---|
951 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
952 | suggestAlternative: "amenity=waste_basket + waste=dog_excrement + vending=excrement_bags";
|
---|
953 | group: tr("deprecated tagging");
|
---|
954 | fixAdd: "amenity=waste_basket";
|
---|
955 | fixAdd: "waste=dog_excrement";
|
---|
956 | fixAdd: "vending=excrement_bags";
|
---|
957 | }
|
---|
958 | *[amenity=artwork] {
|
---|
959 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
960 | suggestAlternative: "tourism=artwork";
|
---|
961 | group: tr("deprecated tagging");
|
---|
962 | fixAdd: "tourism=artwork";
|
---|
963 | fixRemove: "amenity";
|
---|
964 | }
|
---|
965 | *[amenity=community_center] {
|
---|
966 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
967 | suggestAlternative: "amenity=community_centre";
|
---|
968 | group: tr("deprecated tagging");
|
---|
969 | fixAdd: "amenity=community_centre";
|
---|
970 | }
|
---|
971 | *[man_made=cut_line] {
|
---|
972 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
973 | suggestAlternative: "man_made=cutline";
|
---|
974 | group: tr("deprecated tagging");
|
---|
975 | fixAdd: "man_made=cutline";
|
---|
976 | }
|
---|
977 | *[amenity=park] {
|
---|
978 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
979 | suggestAlternative: "leisure=park";
|
---|
980 | group: tr("deprecated tagging");
|
---|
981 | fixAdd: "leisure=park";
|
---|
982 | fixRemove: "amenity";
|
---|
983 | }
|
---|
984 | *[amenity=hotel] {
|
---|
985 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
986 | suggestAlternative: "tourism=hotel";
|
---|
987 | group: tr("deprecated tagging");
|
---|
988 | fixAdd: "tourism=hotel";
|
---|
989 | fixRemove: "amenity";
|
---|
990 | }
|
---|
991 | *[shop=window],
|
---|
992 | *[shop=windows] {
|
---|
993 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
994 | suggestAlternative: "craft=window_construction";
|
---|
995 | group: tr("deprecated tagging");
|
---|
996 | fixAdd: "craft=window_construction";
|
---|
997 | fixRemove: "shop";
|
---|
998 | }
|
---|
999 | *[amenity=education] {
|
---|
1000 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1001 | suggestAlternative: "amenity=college";
|
---|
1002 | suggestAlternative: "amenity=school";
|
---|
1003 | suggestAlternative: "amenity=university";
|
---|
1004 | suggestAlternative: "landuse=education";
|
---|
1005 | group: tr("deprecated tagging");
|
---|
1006 | }
|
---|
1007 | *[shop=gallery] {
|
---|
1008 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1009 | suggestAlternative: "shop=art";
|
---|
1010 | group: tr("deprecated tagging");
|
---|
1011 | fixAdd: "shop=art";
|
---|
1012 | }
|
---|
1013 | *[shop=gambling],
|
---|
1014 | *[leisure=gambling] {
|
---|
1015 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1016 | suggestAlternative: "shop=bookmaker";
|
---|
1017 | suggestAlternative: "shop=lottery";
|
---|
1018 | suggestAlternative: "amenity=casino";
|
---|
1019 | suggestAlternative: "leisure=amusement_arcade";
|
---|
1020 | suggestAlternative: "amenity=gambling";
|
---|
1021 | group: tr("deprecated tagging");
|
---|
1022 | }
|
---|
1023 | *[office=real_estate],
|
---|
1024 | *[office=real_estate_agent] {
|
---|
1025 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1026 | suggestAlternative: "office=estate_agent";
|
---|
1027 | group: tr("deprecated tagging");
|
---|
1028 | fixAdd: "office=estate_agent";
|
---|
1029 | }
|
---|
1030 | *[shop=glass] {
|
---|
1031 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1032 | suggestAlternative: "shop=glaziery";
|
---|
1033 | suggestAlternative: "craft=glaziery";
|
---|
1034 | group: tr("deprecated tagging");
|
---|
1035 | }
|
---|
1036 | *[amenity=proposed],
|
---|
1037 | *[amenity=disused],
|
---|
1038 | *[shop=disused],
|
---|
1039 | *[highway=abandoned],
|
---|
1040 | *[historic=abandoned] {
|
---|
1041 | throwWarning: tr("{0} is deprecated. Use the {1}: key prefix instead.", "{0.tag}", "{0.value}");
|
---|
1042 | group: tr("deprecated tagging");
|
---|
1043 | }
|
---|
1044 |
|
---|
1045 | /* #12431 */
|
---|
1046 | *[amenity=swimming_pool] {
|
---|
1047 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1048 | suggestAlternative: "leisure=swimming_pool";
|
---|
1049 | group: tr("deprecated tagging");
|
---|
1050 | fixChangeKey: "amenity => leisure";
|
---|
1051 | }
|
---|
1052 |
|
---|
1053 | /* #17379 */
|
---|
1054 | *[amenity=sauna] {
|
---|
1055 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1056 | suggestAlternative: "leisure=sauna";
|
---|
1057 | group: tr("deprecated tagging");
|
---|
1058 | fixChangeKey: "amenity => leisure";
|
---|
1059 | }
|
---|
1060 |
|
---|
1061 | /* #12494, #17554 */
|
---|
1062 | *[/^[^t][^i][^g].+_[0-9]$/][!/^note_[0-9]$/][!/^description_[0-9]$/] {
|
---|
1063 | throwWarning: tr("{0}", "{0.key}");
|
---|
1064 | group: tr("questionable key (ending with a number)");
|
---|
1065 | assertMatch: "way name_1=foo";
|
---|
1066 | assertNoMatch: "way note_2=foo";
|
---|
1067 | assertNoMatch: "way description_3=foo";
|
---|
1068 | assertNoMatch: "way tiger:name_base_1=bar"; /*should not warn for key tiger:name_base_1 */
|
---|
1069 | }
|
---|
1070 |
|
---|
1071 | /* #12500 */
|
---|
1072 | *[sport=skating] {
|
---|
1073 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1074 | suggestAlternative: "sport=ice_skating";
|
---|
1075 | suggestAlternative: "sport=roller_skating";
|
---|
1076 | group: tr("deprecated tagging");
|
---|
1077 | }
|
---|
1078 |
|
---|
1079 | way[barrier=wall][type=noise_barrier][!wall],
|
---|
1080 | way[barrier=wall][type=noise_barrier][wall=noise_barrier] {
|
---|
1081 | throwWarning: tr("{0} is deprecated", "{1.tag}");
|
---|
1082 | suggestAlternative: "wall=noise_barrier";
|
---|
1083 | group: tr("deprecated tagging");
|
---|
1084 | fixChangeKey: "type => wall";
|
---|
1085 | }
|
---|
1086 | way[barrier=wall][type=noise_barrier][wall][wall!=noise_barrier] {
|
---|
1087 | throwWarning: tr("{0} is deprecated", "{1.tag}");
|
---|
1088 | suggestAlternative: "wall=noise_barrier";
|
---|
1089 | group: tr("deprecated tagging");
|
---|
1090 | }
|
---|
1091 |
|
---|
1092 | /* #8978, 12588 */
|
---|
1093 | *[amenity=public_building] {
|
---|
1094 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1095 | suggestAlternative: "amenity=townhall";
|
---|
1096 | suggestAlternative: "amenity=community_centre";
|
---|
1097 | suggestAlternative: "amenity=hospital";
|
---|
1098 | suggestAlternative: "leisure=sports_centre";
|
---|
1099 | suggestAlternative: "office=government";
|
---|
1100 | suggestAlternative: "building=hospital";
|
---|
1101 | suggestAlternative: "building=public";
|
---|
1102 | suggestAlternative: "...";
|
---|
1103 | group: tr("deprecated tagging");
|
---|
1104 | }
|
---|
1105 |
|
---|
1106 | /* #18517 */
|
---|
1107 | *[office=administrative] {
|
---|
1108 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1109 | suggestAlternative: "office=government";
|
---|
1110 | group: tr("deprecated tagging");
|
---|
1111 | fixAdd: "office=government";
|
---|
1112 | }
|
---|
1113 |
|
---|
1114 | /* #12708 */
|
---|
1115 | *[vending=news_papers] {
|
---|
1116 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1117 | suggestAlternative: "vending=newspapers";
|
---|
1118 | group: tr("deprecated tagging");
|
---|
1119 | fixAdd: "vending=newspapers";
|
---|
1120 | }
|
---|
1121 |
|
---|
1122 | /* #12771 */
|
---|
1123 | *[service=drive_through] {
|
---|
1124 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1125 | suggestAlternative: "service=drive-through";
|
---|
1126 | group: tr("deprecated tagging");
|
---|
1127 | fixAdd: "service=drive-through";
|
---|
1128 | }
|
---|
1129 |
|
---|
1130 | /* #12771, #9895 */
|
---|
1131 | *[noexit][noexit!=yes][noexit!=no], /* noexit=no has an own warning */
|
---|
1132 | way[highway=service][service][service !~ /^(alley|drive-through|drive_through|driveway|emergency_access|parking_aisle|rest_area|slipway|yes)$/], /* drive_through and yes have special warnings */
|
---|
1133 | way[railway=rail][service][service !~ /^(crossover|siding|spur|yard)$/],
|
---|
1134 | way[waterway=canal][service][service !~ /^(irrigation|transportation|water_power)$/] {
|
---|
1135 | throwWarning: tr("The key {0} has an uncommon value.", "{1.key}");
|
---|
1136 | }
|
---|
1137 |
|
---|
1138 | /* #13008 */
|
---|
1139 | *[name:botanical] {
|
---|
1140 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
1141 | suggestAlternative: "species";
|
---|
1142 | group: tr("deprecated tagging");
|
---|
1143 | }
|
---|
1144 |
|
---|
1145 | /* #11344, #13101, #15480 */
|
---|
1146 | node[pole=air_to_ground],
|
---|
1147 | node[pole=transition] {
|
---|
1148 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1149 | suggestAlternative: "location:transition=yes";
|
---|
1150 | group: tr("deprecated tagging");
|
---|
1151 | fixAdd: "location:transition=yes";
|
---|
1152 | fixRemove: "pole";
|
---|
1153 | }
|
---|
1154 | node[tower=air_to_ground],
|
---|
1155 | node[tower=transition] {
|
---|
1156 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1157 | suggestAlternative: "location:transition=yes";
|
---|
1158 | group: tr("deprecated tagging");
|
---|
1159 | fixAdd: "location:transition=yes";
|
---|
1160 | fixRemove: "tower";
|
---|
1161 | }
|
---|
1162 |
|
---|
1163 | /* #13138 */
|
---|
1164 | area[landuse=pond] {
|
---|
1165 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1166 | suggestAlternative: "natural=water + water=pond";
|
---|
1167 | group: tr("deprecated tagging");
|
---|
1168 | fixAdd: "natural=water";
|
---|
1169 | fixAdd: "water=pond";
|
---|
1170 | fixRemove: "landuse";
|
---|
1171 | }
|
---|
1172 |
|
---|
1173 | *[shop=souvenir],
|
---|
1174 | *[shop=souvenirs],
|
---|
1175 | *[shop=souveniers] {
|
---|
1176 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1177 | suggestAlternative: "shop=gift";
|
---|
1178 | group: tr("deprecated tagging");
|
---|
1179 | fixAdd: "shop=gift";
|
---|
1180 | }
|
---|
1181 |
|
---|
1182 | *[vending=animal_food] {
|
---|
1183 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1184 | suggestAlternative: "vending=animal_feed";
|
---|
1185 | group: tr("deprecated tagging");
|
---|
1186 | fixAdd: "vending=animal_feed";
|
---|
1187 | }
|
---|
1188 |
|
---|
1189 | /* #14376 */
|
---|
1190 | node[vending=photos][amenity=vending_machine],
|
---|
1191 | node[vending=photo][amenity=vending_machine] {
|
---|
1192 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1193 | suggestAlternative: "amenity=photo_booth";
|
---|
1194 | group: tr("deprecated tagging");
|
---|
1195 | fixRemove: "vending";
|
---|
1196 | fixAdd: "amenity=photo_booth";
|
---|
1197 |
|
---|
1198 | }
|
---|
1199 | node[vending=photos][amenity!=vending_machine] {
|
---|
1200 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1201 | suggestAlternative: "amenity=photo_booth";
|
---|
1202 | group: tr("deprecated tagging");
|
---|
1203 | }
|
---|
1204 |
|
---|
1205 | /* #13653 */
|
---|
1206 | node[highway=emergency_access_point][phone][!emergency_telephone_code],
|
---|
1207 | way[highway=emergency_access_point][phone][!emergency_telephone_code] {
|
---|
1208 | throwWarning: tr("{0} is deprecated for {1}", "{1.key}", "{0.tag}");
|
---|
1209 | suggestAlternative: "emergency_telephone_code";
|
---|
1210 | group: tr("deprecated tagging");
|
---|
1211 | fixChangeKey: "phone => emergency_telephone_code";
|
---|
1212 | assertMatch: "node highway=emergency_access_point phone=123";
|
---|
1213 | assertNoMatch: "node highway=emergency_access_point emergency_telephone_code=456";
|
---|
1214 | assertNoMatch: "node highway=emergency_access_point phone=123 emergency_telephone_code=456";
|
---|
1215 | assertNoMatch: "node phone=123";
|
---|
1216 | }
|
---|
1217 | node[highway=emergency_access_point][phone=*emergency_telephone_code],
|
---|
1218 | way[highway=emergency_access_point][phone=*emergency_telephone_code] {
|
---|
1219 | throwWarning: tr("{0} is deprecated for {1}", "{1.key}", "{0.tag}");
|
---|
1220 | suggestAlternative: "emergency_telephone_code";
|
---|
1221 | group: tr("deprecated tagging");
|
---|
1222 | fixRemove: "phone";
|
---|
1223 | assertNoMatch: "node highway=emergency_access_point phone=123";
|
---|
1224 | assertNoMatch: "node highway=emergency_access_point emergency_telephone_code=123";
|
---|
1225 | assertMatch: "node highway=emergency_access_point phone=123 emergency_telephone_code=123";
|
---|
1226 | }
|
---|
1227 | node[highway=emergency_access_point][phone][emergency_telephone_code][phone!=*emergency_telephone_code],
|
---|
1228 | way[highway=emergency_access_point][phone][emergency_telephone_code][phone!=*emergency_telephone_code] {
|
---|
1229 | throwWarning: tr("{0} is deprecated for {1}", "{1.key}", "{0.tag}");
|
---|
1230 | suggestAlternative: "emergency_telephone_code";
|
---|
1231 | group: tr("deprecated tagging");
|
---|
1232 | assertNoMatch: "node highway=emergency_access_point phone=123";
|
---|
1233 | assertNoMatch: "node highway=emergency_access_point emergency_telephone_code=123";
|
---|
1234 | assertNoMatch: "node highway=emergency_access_point phone=123 emergency_telephone_code=123";
|
---|
1235 | }
|
---|
1236 |
|
---|
1237 | /* #13879 */
|
---|
1238 | way[tracktype=1] {
|
---|
1239 | throwError: tr("{0}", "{0.tag}");
|
---|
1240 | suggestAlternative: "tracktype=grade1";
|
---|
1241 | group: tr("misspelled value");
|
---|
1242 | fixAdd: "tracktype=grade1";
|
---|
1243 | }
|
---|
1244 | way[tracktype=2] {
|
---|
1245 | throwError: tr("{0}", "{0.tag}");
|
---|
1246 | suggestAlternative: "tracktype=grade2";
|
---|
1247 | group: tr("misspelled value");
|
---|
1248 | fixAdd: "tracktype=grade2";
|
---|
1249 | }
|
---|
1250 | way[tracktype=3] {
|
---|
1251 | throwError: tr("{0}", "{0.tag}");
|
---|
1252 | suggestAlternative: "tracktype=grade3";
|
---|
1253 | group: tr("misspelled value");
|
---|
1254 | fixAdd: "tracktype=grade3";
|
---|
1255 | }
|
---|
1256 | way[tracktype=4] {
|
---|
1257 | throwError: tr("{0}", "{0.tag}");
|
---|
1258 | suggestAlternative: "tracktype=grade4";
|
---|
1259 | group: tr("misspelled value");
|
---|
1260 | fixAdd: "tracktype=grade4";
|
---|
1261 | }
|
---|
1262 | way[tracktype=5] {
|
---|
1263 | throwError: tr("{0}", "{0.tag}");
|
---|
1264 | suggestAlternative: "tracktype=grade5";
|
---|
1265 | group: tr("misspelled value");
|
---|
1266 | fixAdd: "tracktype=grade5";
|
---|
1267 | }
|
---|
1268 | way[tracktype][tracktype!~/^(1|2|3|4|5|grade1|grade2|grade3|grade4|grade5)$/] {
|
---|
1269 | throwError: tr("wrong value: {0}", "{0.tag}");
|
---|
1270 | suggestAlternative: "tracktype=grade1";
|
---|
1271 | suggestAlternative: "tracktype=grade2";
|
---|
1272 | suggestAlternative: "tracktype=grade3";
|
---|
1273 | suggestAlternative: "tracktype=grade4";
|
---|
1274 | suggestAlternative: "tracktype=grade5";
|
---|
1275 | }
|
---|
1276 |
|
---|
1277 | area[area][area!=yes][area!=no] {
|
---|
1278 | throwError: tr("wrong value: {0}", "{0.tag}");
|
---|
1279 | suggestAlternative: "area=yes";
|
---|
1280 | suggestAlternative: "area=no";
|
---|
1281 | }
|
---|
1282 |
|
---|
1283 | /* #13953 */
|
---|
1284 | *[amenity=hunting_stand][lock=yes],
|
---|
1285 | *[amenity=hunting_stand][lock=no] {
|
---|
1286 | throwWarning: tr("{0} is deprecated for {1}", "{1.key}", "{0.tag}");
|
---|
1287 | suggestAlternative: "lockable";
|
---|
1288 | group: tr("deprecated tagging");
|
---|
1289 | fixChangeKey: "lock => lockable";
|
---|
1290 | }
|
---|
1291 |
|
---|
1292 | *[amenity=advertising][!advertising] {
|
---|
1293 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1294 | suggestAlternative: "advertising=*";
|
---|
1295 | group: tr("deprecated tagging");
|
---|
1296 | }
|
---|
1297 | *[amenity=advertising][advertising] {
|
---|
1298 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1299 | suggestAlternative: "advertising=*";
|
---|
1300 | group: tr("deprecated tagging");
|
---|
1301 | fixRemove: "amenity";
|
---|
1302 | }
|
---|
1303 |
|
---|
1304 | way[direction=up][incline=up],
|
---|
1305 | way[direction=down][incline=down],
|
---|
1306 | way[direction=up][!incline],
|
---|
1307 | way[direction=down][!incline] {
|
---|
1308 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1309 | suggestAlternative: "incline";
|
---|
1310 | group: tr("deprecated tagging");
|
---|
1311 | fixChangeKey: "direction => incline";
|
---|
1312 | }
|
---|
1313 | way[direction=up][incline][incline!=up],
|
---|
1314 | way[direction=down][incline][incline!=down] {
|
---|
1315 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1316 | suggestAlternative: "incline";
|
---|
1317 | group: tr("deprecated tagging");
|
---|
1318 | }
|
---|
1319 |
|
---|
1320 | *[building=true],
|
---|
1321 | *[building="*"],
|
---|
1322 | *[building=Y],
|
---|
1323 | *[building=y],
|
---|
1324 | *[building=1] {
|
---|
1325 | throwError: tr("{0}", "{0.tag}");
|
---|
1326 | suggestAlternative: "building=yes";
|
---|
1327 | group: tr("misspelled value");
|
---|
1328 | fixAdd: "building=yes";
|
---|
1329 | }
|
---|
1330 |
|
---|
1331 | /* #17786, #18612 */
|
---|
1332 | *[building=abandoned],
|
---|
1333 | *[building=address],
|
---|
1334 | *[building=bing],
|
---|
1335 | *[building=collapsed],
|
---|
1336 | *[building=damaged],
|
---|
1337 | *[building=demolished],
|
---|
1338 | *[building=disused],
|
---|
1339 | *[building=fixme],
|
---|
1340 | *[building=occupied],
|
---|
1341 | *[building=razed] {
|
---|
1342 | throwWarning: tr("{0} is not a building type.", "{0.tag}");
|
---|
1343 | group: tr("deprecated tagging");
|
---|
1344 | }
|
---|
1345 | *[building=other],
|
---|
1346 | *[building=unclassified],
|
---|
1347 | *[building=undefined],
|
---|
1348 | *[building=unknown],
|
---|
1349 | *[building=unidentified] {
|
---|
1350 | throwWarning: tr("{0} is not a building type.", "{0.tag}");
|
---|
1351 | group: tr("deprecated tagging");
|
---|
1352 | fixAdd: "building=yes";
|
---|
1353 | }
|
---|
1354 |
|
---|
1355 | /* #15675 */
|
---|
1356 | node[power=transformer][location=pole][transformer] {
|
---|
1357 | throwWarning: tr("{0} together with {1}", "{0.tag}", "{1.tag}");
|
---|
1358 | group: tr("deprecated tagging");
|
---|
1359 | fixChangeKey: "location => power";
|
---|
1360 | }
|
---|
1361 | node[power=transformer][location=pole][!transformer] {
|
---|
1362 | throwWarning: tr("{0} together with {1}", "{0.tag}", "{1.tag}");
|
---|
1363 | group: tr("deprecated tagging");
|
---|
1364 | fixChangeKey: "location => power";
|
---|
1365 | fixAdd: "transformer=yes";
|
---|
1366 | }
|
---|
1367 |
|
---|
1368 | node[tourism=picnic_table],
|
---|
1369 | node[amenity=picnic_table],
|
---|
1370 | node[leisure=picnic],
|
---|
1371 | node[leisure=picnic_site] {
|
---|
1372 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1373 | suggestAlternative: "tourism=picnic_site";
|
---|
1374 | suggestAlternative: "leisure=picnic_table";
|
---|
1375 | group: tr("deprecated tagging");
|
---|
1376 | }
|
---|
1377 |
|
---|
1378 | /* #15804 */
|
---|
1379 | relation[water=salt],
|
---|
1380 | way[water=salt],
|
---|
1381 | way[water=salt_pool],
|
---|
1382 | way[water=salt_panne],
|
---|
1383 | way[water=salt_pond] {
|
---|
1384 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1385 | suggestAlternative: "salt=yes";
|
---|
1386 | suggestAlternative: "landuse=salt_pond";
|
---|
1387 | group: tr("deprecated tagging");
|
---|
1388 | }
|
---|
1389 |
|
---|
1390 | /* #15805 */
|
---|
1391 | way[water=tidal] {
|
---|
1392 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1393 | suggestAlternative: "tidal=yes";
|
---|
1394 | fixAdd: "tidal=yes";
|
---|
1395 | fixRemove: "water";
|
---|
1396 | group: tr("deprecated tagging");
|
---|
1397 | }
|
---|
1398 |
|
---|
1399 | *[amenity=toilet] {
|
---|
1400 | throwError: tr("{0}", "{0.tag}");
|
---|
1401 | suggestAlternative: "amenity=toilets";
|
---|
1402 | group: tr("misspelled value");
|
---|
1403 | fixAdd: "amenity=toilets";
|
---|
1404 | }
|
---|
1405 |
|
---|
1406 | way[power=busbar] {
|
---|
1407 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1408 | suggestAlternative: "power=line + line=busbar";
|
---|
1409 | group: tr("deprecated tagging");
|
---|
1410 | fixAdd: "power=line";
|
---|
1411 | fixAdd: "line=busbar";
|
---|
1412 | }
|
---|
1413 |
|
---|
1414 | /* #16924 */
|
---|
1415 | *[man_made=MDF],
|
---|
1416 | *[man_made=telephone_exchange] {
|
---|
1417 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1418 | suggestAlternative: "telecom=exchange";
|
---|
1419 | fixAdd: "telecom=exchange";
|
---|
1420 | fixRemove: "man_made";
|
---|
1421 | group: tr("deprecated tagging");
|
---|
1422 | }
|
---|
1423 | *[building=central_office] {
|
---|
1424 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1425 | suggestAlternative: "telecom=exchange";
|
---|
1426 | fixAdd: "telecom=exchange";
|
---|
1427 | fixAdd: "building=yes";
|
---|
1428 | group: tr("deprecated tagging");
|
---|
1429 | }
|
---|
1430 | *[telecom=central_office] {
|
---|
1431 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1432 | suggestAlternative: "telecom=exchange";
|
---|
1433 | fixAdd: "telecom=exchange";
|
---|
1434 | group: tr("deprecated tagging");
|
---|
1435 | }
|
---|
1436 |
|
---|
1437 | /* #16925 */
|
---|
1438 | node[communication=outdoor_dslam],
|
---|
1439 | node[man_made=outdoor_dslam],
|
---|
1440 | node[street_cabinet=outdoor_dslam] {
|
---|
1441 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1442 | suggestAlternative: "telecom=service_device";
|
---|
1443 | fixAdd: "telecom=service_device";
|
---|
1444 | fixRemove: "{0.key}";
|
---|
1445 | group: tr("deprecated tagging");
|
---|
1446 | }
|
---|
1447 | node[telecom=dslam],
|
---|
1448 | node[telecom=outdoor_dslam] {
|
---|
1449 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1450 | suggestAlternative: "telecom=service_device";
|
---|
1451 | fixAdd: "telecom=service_device";
|
---|
1452 | group: tr("deprecated tagging");
|
---|
1453 | }
|
---|
1454 |
|
---|
1455 | /* #15774 */
|
---|
1456 | node[amenity=fire_hydrant] {
|
---|
1457 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1458 | suggestAlternative: "emergency=fire_hydrant";
|
---|
1459 | fixChangeKey: "amenity => emergency";
|
---|
1460 | group: tr("deprecated tagging");
|
---|
1461 | }
|
---|
1462 | node[fire_hydrant:type=pond] {
|
---|
1463 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1464 | suggestAlternative: "water_source=pond";
|
---|
1465 | fixAdd: "water_source=pond";
|
---|
1466 | fixRemove: "{0.key}";
|
---|
1467 | group: tr("deprecated tagging");
|
---|
1468 | }
|
---|
1469 | node[fire_hydrant:flow_capacity] {
|
---|
1470 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
1471 | suggestAlternative: "flow_rate";
|
---|
1472 | group: tr("deprecated tagging");
|
---|
1473 | }
|
---|
1474 | node[emergency=fire_hydrant][in_service=no] {
|
---|
1475 | throwWarning: tr("{0} is deprecated", "{1.tag}");
|
---|
1476 | suggestAlternative: "disused:emergency=fire_hydrant";
|
---|
1477 | fixAdd: "disused:emergency=fire_hydrant";
|
---|
1478 | fixRemove: "{1.key}";
|
---|
1479 | fixRemove: "{0.key}";
|
---|
1480 | group: tr("deprecated tagging");
|
---|
1481 | }
|
---|
1482 | node[fire_hydrant:water_source] {
|
---|
1483 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
1484 | suggestAlternative: "water_source";
|
---|
1485 | fixChangeKey: "fire_hydrant:water_source => water_source";
|
---|
1486 | group: tr("deprecated tagging");
|
---|
1487 | }
|
---|
1488 |
|
---|
1489 | /* #17383 */
|
---|
1490 | *[natural=waterfall] {
|
---|
1491 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1492 | suggestAlternative: "waterway=waterfall";
|
---|
1493 | fixChangeKey: "natural => waterway";
|
---|
1494 | group: tr("deprecated tagging");
|
---|
1495 | }
|
---|
1496 |
|
---|
1497 | /* #17249 */
|
---|
1498 | *[religion=unitarian] {
|
---|
1499 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1500 | suggestAlternative: "religion=unitarian_universalist";
|
---|
1501 | fixAdd: "religion=unitarian_universalist";
|
---|
1502 | group: tr("deprecated tagging");
|
---|
1503 | }
|
---|
1504 |
|
---|
1505 | *[shop=shopping_centre] {
|
---|
1506 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1507 | suggestAlternative: "shop=mall";
|
---|
1508 | fixAdd: "shop=mall";
|
---|
1509 | group: tr("deprecated tagging");
|
---|
1510 | }
|
---|
1511 |
|
---|
1512 | /* #17504 */
|
---|
1513 | *[is_in],
|
---|
1514 | node[/^is_in:/],
|
---|
1515 | way[/^is_in:/] {
|
---|
1516 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
1517 | group: tr("deprecated tagging");
|
---|
1518 | fixRemove: "{0.key}";
|
---|
1519 | }
|
---|
1520 |
|
---|
1521 | /* #17593 */
|
---|
1522 | *[sport=football] {
|
---|
1523 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1524 | suggestAlternative: "sport=soccer";
|
---|
1525 | suggestAlternative: "sport=american_football";
|
---|
1526 | suggestAlternative: "sport=australian_football";
|
---|
1527 | suggestAlternative: "sport=canadian_football";
|
---|
1528 | suggestAlternative: "sport=rugby_league";
|
---|
1529 | suggestAlternative: "sport=rugby_union";
|
---|
1530 | suggestAlternative: "sport=gaelic_games";
|
---|
1531 | group: tr("deprecated tagging");
|
---|
1532 | }
|
---|
1533 |
|
---|
1534 | /* #17556 */
|
---|
1535 | *[leisure=common] {
|
---|
1536 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1537 | suggestAlternative: "landuse=*";
|
---|
1538 | suggestAlternative: "leisure=*";
|
---|
1539 | suggestAlternative: "designation=common";
|
---|
1540 | group: tr("deprecated tagging");
|
---|
1541 | }
|
---|
1542 |
|
---|
1543 | /* #17043 */
|
---|
1544 | *[cuisine=vegan],
|
---|
1545 | *[cuisine=vegetarian] {
|
---|
1546 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1547 | suggestAlternative: concat("diet:", "{0.value}", "=yes");
|
---|
1548 | suggestAlternative: concat("diet:", "{0.value}", "=only");
|
---|
1549 | group: tr("deprecated tagging");
|
---|
1550 | }
|
---|
1551 |
|
---|
1552 | /* #17798 */
|
---|
1553 | *[kitchen_hours] {
|
---|
1554 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
1555 | suggestAlternative: "opening_hours:kitchen";
|
---|
1556 | fixChangeKey: "kitchen_hours => opening_hours:kitchen";
|
---|
1557 | group: tr("deprecated tagging");
|
---|
1558 | }
|
---|
1559 |
|
---|
1560 | /* #17681 */
|
---|
1561 | *[shop=money_transfer] {
|
---|
1562 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1563 | suggestAlternative: "amenity=money_transfer";
|
---|
1564 | fixChangeKey: "shop => amenity";
|
---|
1565 | group: tr("deprecated tagging");
|
---|
1566 | }
|
---|
1567 |
|
---|
1568 | *[contact:google_plus] {
|
---|
1569 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
1570 | fixRemove: "contact:google_plus";
|
---|
1571 | group: tr("deprecated tagging");
|
---|
1572 | }
|
---|
1573 |
|
---|
1574 | /* #17370 */
|
---|
1575 | *[amenity=garages],
|
---|
1576 | *[amenity=garage] {
|
---|
1577 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1578 | suggestAlternative: concat("building=", "{0.value}");
|
---|
1579 | suggestAlternative: "landuse=garages";
|
---|
1580 | suggestAlternative: "amenity=parking + parking=garage_boxes";
|
---|
1581 | group: tr("deprecated tagging");
|
---|
1582 | }
|
---|
1583 | *[shop=winery],
|
---|
1584 | *[amenity=winery] {
|
---|
1585 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1586 | suggestAlternative: "craft=winery";
|
---|
1587 | suggestAlternative: "shop=wine";
|
---|
1588 | group: tr("deprecated tagging");
|
---|
1589 | }
|
---|
1590 | *[amenity=youth_centre] {
|
---|
1591 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1592 | suggestAlternative: "amenity=community_centre + community_centre=youth_centre";
|
---|
1593 | fixAdd: "amenity=community_centre";
|
---|
1594 | fixAdd: "community_centre=youth_centre";
|
---|
1595 | group: tr("deprecated tagging");
|
---|
1596 | }
|
---|
1597 | *[building:type][building=yes],
|
---|
1598 | *[building:type][!building] {
|
---|
1599 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
1600 | suggestAlternative: "building";
|
---|
1601 | group: tr("deprecated tagging");
|
---|
1602 | fixChangeKey: "building:type => building";
|
---|
1603 | assertMatch: "way building:type=church";
|
---|
1604 | assertMatch: "way building:type=church building=yes";
|
---|
1605 | assertNoMatch: "way building:type=church building=supermarket";
|
---|
1606 | }
|
---|
1607 | *[building:type][building][building!=yes] {
|
---|
1608 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
1609 | suggestAlternative: "building";
|
---|
1610 | group: tr("deprecated tagging");
|
---|
1611 | assertNoMatch: "way building:type=church";
|
---|
1612 | assertNoMatch: "way building:type=church building=yes";
|
---|
1613 | assertMatch: "way building:type=church building=supermarket";
|
---|
1614 | }
|
---|
1615 | *[escalator] {
|
---|
1616 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
1617 | suggestAlternative: "highway=steps + conveying=*";
|
---|
1618 | group: tr("deprecated tagging");
|
---|
1619 | }
|
---|
1620 | *[fenced] {
|
---|
1621 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
1622 | suggestAlternative: "barrier=fence";
|
---|
1623 | group: tr("deprecated tagging");
|
---|
1624 | }
|
---|
1625 | *[historic_name][!old_name] {
|
---|
1626 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
1627 | suggestAlternative: "old_name";
|
---|
1628 | group: tr("deprecated tagging");
|
---|
1629 | fixChangeKey: "historic_name => old_name";
|
---|
1630 | }
|
---|
1631 | *[historic_name][old_name] {
|
---|
1632 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
1633 | suggestAlternative: "old_name";
|
---|
1634 | group: tr("deprecated tagging");
|
---|
1635 | }
|
---|
1636 | *[landuse=field] {
|
---|
1637 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1638 | suggestAlternative: "landuse=farmland";
|
---|
1639 | group: tr("deprecated tagging");
|
---|
1640 | fixAdd: "landuse=farmland";
|
---|
1641 | }
|
---|
1642 | *[leisure=beach] {
|
---|
1643 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1644 | suggestAlternative: "natural=beach";
|
---|
1645 | suggestAlternative: "leisure=beach_resort";
|
---|
1646 | group: tr("deprecated tagging");
|
---|
1647 | }
|
---|
1648 | *[leisure=club] {
|
---|
1649 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1650 | suggestAlternative: "club=*";
|
---|
1651 | group: tr("deprecated tagging");
|
---|
1652 | }
|
---|
1653 | *[leisure=video_arcade] {
|
---|
1654 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1655 | suggestAlternative: "leisure=amusement_arcade";
|
---|
1656 | suggestAlternative: "leisure=adult_gaming_centre";
|
---|
1657 | group: tr("deprecated tagging");
|
---|
1658 | }
|
---|
1659 | *[man_made=jetty] {
|
---|
1660 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1661 | suggestAlternative: "man_made=pier";
|
---|
1662 | group: tr("deprecated tagging");
|
---|
1663 | fixAdd: "man_made=pier";
|
---|
1664 | }
|
---|
1665 | *[man_made=village_pump] {
|
---|
1666 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1667 | suggestAlternative: "man_made=water_well";
|
---|
1668 | group: tr("deprecated tagging");
|
---|
1669 | fixAdd: "man_made=water_well";
|
---|
1670 | }
|
---|
1671 | *[man_made=water_tank] {
|
---|
1672 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1673 | suggestAlternative: "man_made=storage_tank + content=water";
|
---|
1674 | group: tr("deprecated tagging");
|
---|
1675 | fixAdd: "man_made=storage_tank";
|
---|
1676 | fixAdd: "content=water";
|
---|
1677 | }
|
---|
1678 | *[natural=moor] {
|
---|
1679 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1680 | suggestAlternative: "natural=heath";
|
---|
1681 | suggestAlternative: "natural=scrub";
|
---|
1682 | suggestAlternative: "natural=grassland";
|
---|
1683 | suggestAlternative: "natural=wetland";
|
---|
1684 | suggestAlternative: "natural=fell";
|
---|
1685 | suggestAlternative: "natural=tundra";
|
---|
1686 | suggestAlternative: "landuse=meadow + meadow=agricultural";
|
---|
1687 | group: tr("deprecated tagging");
|
---|
1688 | }
|
---|
1689 | *[noexit=no][!fixme] {
|
---|
1690 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1691 | suggestAlternative: "fixme=continue";
|
---|
1692 | group: tr("deprecated tagging");
|
---|
1693 | fixAdd: "fixme=continue";
|
---|
1694 | fixRemove: "noexit";
|
---|
1695 | }
|
---|
1696 | *[noexit=no][fixme] {
|
---|
1697 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1698 | suggestAlternative: "fixme=continue";
|
---|
1699 | group: tr("deprecated tagging");
|
---|
1700 | }
|
---|
1701 | *[shop=dive] {
|
---|
1702 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1703 | suggestAlternative: "shop=scuba_diving";
|
---|
1704 | group: tr("deprecated tagging");
|
---|
1705 | fixAdd: "shop=scuba_diving";
|
---|
1706 | }
|
---|
1707 | *[shop=furnace] {
|
---|
1708 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1709 | suggestAlternative: "shop=fireplace";
|
---|
1710 | suggestAlternative: "craft=plumber";
|
---|
1711 | group: tr("deprecated tagging");
|
---|
1712 | }
|
---|
1713 | *[sport=paragliding] {
|
---|
1714 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1715 | suggestAlternative: "sport=free_flying";
|
---|
1716 | group: tr("deprecated tagging");
|
---|
1717 | fixAdd: "sport=free_flying";
|
---|
1718 | }
|
---|
1719 | *[tourism=bed_and_breakfast] {
|
---|
1720 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1721 | suggestAlternative: "tourism=guest_house + guest_house=bed_and_breakfast";
|
---|
1722 | group: tr("deprecated tagging");
|
---|
1723 | fixAdd: "tourism=guest_house";
|
---|
1724 | fixAdd: "guest_house=bed_and_breakfast";
|
---|
1725 | }
|
---|
1726 |
|
---|
1727 | /* #17880 */
|
---|
1728 | *[diaper=yes],
|
---|
1729 | *[diaper=no] {
|
---|
1730 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1731 | suggestAlternative: concat("changing_table=", "{0.value}");
|
---|
1732 | group: tr("deprecated tagging");
|
---|
1733 | fixChangeKey: "diaper => changing_table";
|
---|
1734 | set diaper_checked;
|
---|
1735 | }
|
---|
1736 | *[diaper][diaper =~ /^[1-9][0-9]*$/] {
|
---|
1737 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1738 | suggestAlternative: concat("changing_table=yes + changing_table:count=", "{0.value}");
|
---|
1739 | group: tr("deprecated tagging");
|
---|
1740 | fixChangeKey: "diaper => changing_table:count";
|
---|
1741 | fixAdd: "changing_table=yes";
|
---|
1742 | set diaper_checked;
|
---|
1743 | }
|
---|
1744 | *[diaper=room] {
|
---|
1745 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1746 | suggestAlternative: "changing_table=room";
|
---|
1747 | suggestAlternative: "changing_table=dedicated_room";
|
---|
1748 | group: tr("deprecated tagging");
|
---|
1749 | set diaper_checked;
|
---|
1750 | }
|
---|
1751 | *[diaper]!.diaper_checked {
|
---|
1752 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
1753 | suggestAlternative: "changing_table";
|
---|
1754 | group: tr("deprecated tagging");
|
---|
1755 | }
|
---|
1756 | *[diaper:male=yes] {
|
---|
1757 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1758 | suggestAlternative: "changing_table:location=male_toilet";
|
---|
1759 | group: tr("deprecated tagging");
|
---|
1760 | fixAdd: "changing_table:location=male_toilet";
|
---|
1761 | fixRemove: "diaper:male";
|
---|
1762 | set diaper___checked;
|
---|
1763 | }
|
---|
1764 | *[diaper:female=yes] {
|
---|
1765 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1766 | suggestAlternative: "changing_table:location=female_toilet";
|
---|
1767 | group: tr("deprecated tagging");
|
---|
1768 | fixAdd: "changing_table:location=female_toilet";
|
---|
1769 | fixRemove: "diaper:female";
|
---|
1770 | set diaper___checked;
|
---|
1771 | }
|
---|
1772 | *[diaper:unisex=yes] {
|
---|
1773 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1774 | suggestAlternative: "changing_table:location=unisex_toilet";
|
---|
1775 | group: tr("deprecated tagging");
|
---|
1776 | fixAdd: "changing_table:location=unisex_toilet";
|
---|
1777 | fixRemove: "diaper:unisex";
|
---|
1778 | set diaper___checked;
|
---|
1779 | }
|
---|
1780 | *[diaper:wheelchair=yes],
|
---|
1781 | *[diaper:wheelchair=no] {
|
---|
1782 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1783 | suggestAlternative: concat("changing_table:wheelchair=", "{0.value}");
|
---|
1784 | group: tr("deprecated tagging");
|
---|
1785 | fixChangeKey: "diaper:wheelchair => changing_table:wheelchair";
|
---|
1786 | set diaper___checked;
|
---|
1787 | }
|
---|
1788 | *[diaper:fee=yes],
|
---|
1789 | *[diaper:fee=no] {
|
---|
1790 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1791 | suggestAlternative: concat("changing_table:fee=", "{0.value}");
|
---|
1792 | group: tr("deprecated tagging");
|
---|
1793 | fixChangeKey: "diaper:fee => changing_table:fee";
|
---|
1794 | set diaper___checked;
|
---|
1795 | }
|
---|
1796 | *[/^diaper:/]!.diaper___checked {
|
---|
1797 | throwWarning: tr("{0} is deprecated", "diaper:*");
|
---|
1798 | suggestAlternative: "changing_table:*";
|
---|
1799 | group: tr("deprecated tagging");
|
---|
1800 | }
|
---|
1801 | *[changing_table][changing_table!~/^(yes|no|limited)$/] {
|
---|
1802 | throwWarning: tr("wrong value: {0}", "{0.tag}");
|
---|
1803 | suggestAlternative: "changing_table=yes";
|
---|
1804 | suggestAlternative: "changing_table=no";
|
---|
1805 | suggestAlternative: "changing_table=limited";
|
---|
1806 | }
|
---|
1807 |
|
---|
1808 | /* #17990 */
|
---|
1809 | *[roof:shape=half_hipped] {
|
---|
1810 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1811 | suggestAlternative: "roof:shape=half-hipped";
|
---|
1812 | group: tr("deprecated tagging");
|
---|
1813 | fixAdd: "roof:shape=half-hipped";
|
---|
1814 | }
|
---|
1815 |
|
---|
1816 | /* #18003 */
|
---|
1817 | *[bridge_name] {
|
---|
1818 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
1819 | suggestAlternative: "bridge:name";
|
---|
1820 | group: tr("deprecated tagging");
|
---|
1821 | fixChangeKey: "bridge_name => bridge:name";
|
---|
1822 | }
|
---|
1823 |
|
---|
1824 | /* #18007 */
|
---|
1825 | *[access=public] {
|
---|
1826 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1827 | suggestAlternative: "access=yes";
|
---|
1828 | group: tr("deprecated tagging");
|
---|
1829 | fixAdd: "access=yes";
|
---|
1830 | }
|
---|
1831 |
|
---|
1832 | /* #17330 */
|
---|
1833 | *[crossing=island] {
|
---|
1834 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1835 | suggestAlternative: "crossing:island=yes";
|
---|
1836 | group: tr("deprecated tagging");
|
---|
1837 | fixRemove: "crossing";
|
---|
1838 | fixAdd: "crossing:island=yes";
|
---|
1839 | }
|
---|
1840 |
|
---|
1841 | /* #18152 */
|
---|
1842 | *[recycling:metal] {
|
---|
1843 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
1844 | suggestAlternative: "recycling:scrap_metal";
|
---|
1845 | group: tr("deprecated tagging");
|
---|
1846 | fixChangeKey: "recycling:metal => recycling:scrap_metal";
|
---|
1847 | }
|
---|
1848 |
|
---|
1849 | /* #18154 */
|
---|
1850 | *[shop=dog_grooming] {
|
---|
1851 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1852 | suggestAlternative: "shop=pet_grooming";
|
---|
1853 | fixAdd: "shop=pet_grooming";
|
---|
1854 | group: tr("deprecated tagging");
|
---|
1855 | }
|
---|
1856 |
|
---|
1857 | /* #17984, #19383 */
|
---|
1858 | *[tower:type=anchor],
|
---|
1859 | *[tower:type=suspension] {
|
---|
1860 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1861 | suggestAlternative: concat("line_attachment=", "{0.value}");
|
---|
1862 | fixChangeKey: "tower:type => line_attachment";
|
---|
1863 | set power_tower_type_warning;
|
---|
1864 | group: tr("deprecated tagging");
|
---|
1865 | }
|
---|
1866 | *[tower:type=branch][branch:type=split],
|
---|
1867 | *[tower:type=branch][branch:type=loop] {
|
---|
1868 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1869 | suggestAlternative: "line_management=split";
|
---|
1870 | fixAdd: "line_management=split";
|
---|
1871 | fixRemove: "tower:type";
|
---|
1872 | fixRemove: "branch:type";
|
---|
1873 | set power_tower_type_warning;
|
---|
1874 | group: tr("deprecated tagging");
|
---|
1875 | }
|
---|
1876 | *[tower:type=branch][!branch:type],
|
---|
1877 | *[tower:type=branch][branch:type=tap] {
|
---|
1878 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1879 | suggestAlternative: "line_management=branch";
|
---|
1880 | fixAdd: "line_management=branch";
|
---|
1881 | fixRemove: "tower:type";
|
---|
1882 | fixRemove: "branch:type";
|
---|
1883 | set power_tower_type_warning;
|
---|
1884 | group: tr("deprecated tagging");
|
---|
1885 | }
|
---|
1886 | *[tower:type=branch][branch:type=cross] {
|
---|
1887 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1888 | suggestAlternative: "line_management=cross";
|
---|
1889 | fixAdd: "line_management=cross";
|
---|
1890 | fixRemove: "tower:type";
|
---|
1891 | fixRemove: "branch:type";
|
---|
1892 | set power_tower_type_warning;
|
---|
1893 | group: tr("deprecated tagging");
|
---|
1894 | }
|
---|
1895 | *[tower:type=termination] {
|
---|
1896 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1897 | suggestAlternative: "line_management=termination";
|
---|
1898 | fixAdd: "line_management=termination";
|
---|
1899 | fixRemove: "tower:type";
|
---|
1900 | set power_tower_type_warning;
|
---|
1901 | group: tr("deprecated tagging");
|
---|
1902 | }
|
---|
1903 | *[tower:type=transition] {
|
---|
1904 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1905 | suggestAlternative: "location:transition=yes";
|
---|
1906 | fixAdd: "location:transition=yes";
|
---|
1907 | fixRemove: "tower:type";
|
---|
1908 | set power_tower_type_warning;
|
---|
1909 | group: tr("deprecated tagging");
|
---|
1910 | }
|
---|
1911 | *[tower:type=transposing] {
|
---|
1912 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1913 | suggestAlternative: "line_management=transpose";
|
---|
1914 | fixAdd: "line_management=transpose";
|
---|
1915 | fixRemove: "tower:type";
|
---|
1916 | set power_tower_type_warning;
|
---|
1917 | group: tr("deprecated tagging");
|
---|
1918 | }
|
---|
1919 | *[tower:type=crossing] {
|
---|
1920 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1921 | suggestAlternative: "height=* + design=*";
|
---|
1922 | set power_tower_type_warning;
|
---|
1923 | group: tr("deprecated tagging");
|
---|
1924 | }
|
---|
1925 | *[tower:type][power][power=~/^(tower|pole|insulator|portal|terminal)$/]!.power_tower_type_warning {
|
---|
1926 | throwWarning: tr("{0} is deprecated for {1}", "{0.key}", "{1.tag}");
|
---|
1927 | suggestAlternative: "design";
|
---|
1928 | suggestAlternative: "structure";
|
---|
1929 | suggestAlternative: "line_arrangement";
|
---|
1930 | suggestAlternative: "line_attachment";
|
---|
1931 | suggestAlternative: "line_management";
|
---|
1932 | set generic_power_tower_type_warning;
|
---|
1933 | group: tr("deprecated tagging");
|
---|
1934 | }
|
---|
1935 | node[pole:type=anchor],
|
---|
1936 | node[pole:type=suspension] {
|
---|
1937 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1938 | suggestAlternative: concat("line_attachment=", "{0.value}");
|
---|
1939 | fixChangeKey: "pole:type => line_attachment";
|
---|
1940 | set power_pole_type_warning;
|
---|
1941 | group: tr("deprecated tagging");
|
---|
1942 | }
|
---|
1943 | node[pole:type=branch][branch:type=split],
|
---|
1944 | node[pole:type=branch][branch:type=loop] {
|
---|
1945 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1946 | suggestAlternative: "line_management=split";
|
---|
1947 | fixAdd: "line_management=split";
|
---|
1948 | fixRemove: "pole:type";
|
---|
1949 | fixRemove: "branch:type";
|
---|
1950 | set power_pole_type_warning;
|
---|
1951 | group: tr("deprecated tagging");
|
---|
1952 | }
|
---|
1953 | node[pole:type=branch][!branch:type],
|
---|
1954 | node[pole:type=branch][branch:type=tap] {
|
---|
1955 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1956 | suggestAlternative: "line_management=branch";
|
---|
1957 | fixAdd: "line_management=branch";
|
---|
1958 | fixRemove: "pole:type";
|
---|
1959 | fixRemove: "branch:type";
|
---|
1960 | set power_pole_type_warning;
|
---|
1961 | group: tr("deprecated tagging");
|
---|
1962 | }
|
---|
1963 | node[pole:type=branch][branch:type=cross] {
|
---|
1964 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1965 | suggestAlternative: "line_management=cross";
|
---|
1966 | fixAdd: "line_management=cross";
|
---|
1967 | fixRemove: "pole:type";
|
---|
1968 | fixRemove: "branch:type";
|
---|
1969 | set power_pole_type_warning;
|
---|
1970 | group: tr("deprecated tagging");
|
---|
1971 | }
|
---|
1972 | node[pole:type=termination] {
|
---|
1973 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1974 | suggestAlternative: "line_management=termination";
|
---|
1975 | fixAdd: "line_management=termination";
|
---|
1976 | fixRemove: "pole:type";
|
---|
1977 | set power_pole_type_warning;
|
---|
1978 | group: tr("deprecated tagging");
|
---|
1979 | }
|
---|
1980 | node[pole:type=transition] {
|
---|
1981 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1982 | suggestAlternative: "location:transition=yes";
|
---|
1983 | fixAdd: "location:transition=yes";
|
---|
1984 | fixRemove: "pole:type";
|
---|
1985 | set power_pole_type_warning;
|
---|
1986 | group: tr("deprecated tagging");
|
---|
1987 | }
|
---|
1988 | *[pole:type][power][power=~/^(tower|pole|insulator|portal|terminal)$/]!.power_pole_type_warning!.generic_power_tower_type_warning {
|
---|
1989 | throwWarning: tr("{0} is deprecated for {1}", "{0.key}", "{1.tag}");
|
---|
1990 | suggestAlternative: "line_arrangement";
|
---|
1991 | suggestAlternative: "line_attachment";
|
---|
1992 | suggestAlternative: "line_management";
|
---|
1993 | group: tr("deprecated tagging");
|
---|
1994 | }
|
---|
1995 |
|
---|
1996 | /* #18267 */
|
---|
1997 | node[man_made=pipeline_marker],
|
---|
1998 | node[pipeline=marker],
|
---|
1999 | node[power=marker],
|
---|
2000 | node[cable=marker] {
|
---|
2001 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2002 | suggestAlternative: "marker=* + utility=*";
|
---|
2003 | group: tr("deprecated tagging");
|
---|
2004 | }
|
---|
2005 |
|
---|
2006 | /* #17643 */
|
---|
2007 | way[barrier=embankment] {
|
---|
2008 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2009 | suggestAlternative: "man_made=embankment";
|
---|
2010 | suggestAlternative: "embankment=yes";
|
---|
2011 | group: tr("deprecated tagging");
|
---|
2012 | }
|
---|
2013 |
|
---|
2014 | /* #18469 */
|
---|
2015 | way[landuse=churchyard] {
|
---|
2016 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2017 | suggestAlternative: "landuse=religious";
|
---|
2018 | suggestAlternative: "amenity=graveyard";
|
---|
2019 | group: tr("deprecated tagging");
|
---|
2020 | }
|
---|
2021 |
|
---|
2022 | *[sloped_curb=yes][!kerb],
|
---|
2023 | *[sloped_curb=both][!kerb] {
|
---|
2024 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2025 | suggestAlternative: "kerb=lowered";
|
---|
2026 | group: tr("deprecated tagging");
|
---|
2027 | fixRemove: "sloped_curb";
|
---|
2028 | fixAdd: "kerb=lowered";
|
---|
2029 | }
|
---|
2030 | *[sloped_curb=no][!kerb] {
|
---|
2031 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2032 | suggestAlternative: "kerb=yes";
|
---|
2033 | group: tr("deprecated tagging");
|
---|
2034 | fixRemove: "sloped_curb";
|
---|
2035 | fixAdd: "kerb=yes";
|
---|
2036 | }
|
---|
2037 | *[sloped_curb][sloped_curb !~ /^(yes|both|no)$/][!kerb],
|
---|
2038 | *[sloped_curb][kerb] {
|
---|
2039 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
2040 | suggestAlternative: "kerb=*";
|
---|
2041 | group: tr("deprecated tagging");
|
---|
2042 | }
|
---|
2043 |
|
---|
2044 | /* #18571 */
|
---|
2045 | *[unnamed=yes] {
|
---|
2046 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2047 | suggestAlternative: "noname=yes";
|
---|
2048 | fixChangeKey: "unnamed => noname";
|
---|
2049 | group: tr("deprecated tagging");
|
---|
2050 | }
|
---|
2051 |
|
---|
2052 | node[segregated][segregated!=yes][segregated!=no],
|
---|
2053 | way[segregated ][segregated!=yes][segregated!=no] {
|
---|
2054 | throwWarning: tr("unusual value of {0}", "{0.key}");
|
---|
2055 | }
|
---|
2056 |
|
---|
2057 | /* #18603 */
|
---|
2058 | way[bicycle:oneway] {
|
---|
2059 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
2060 | suggestAlternative: "oneway:bicycle";
|
---|
2061 | fixChangeKey: "bicycle:oneway => oneway:bicycle";
|
---|
2062 | group: tr("deprecated tagging");
|
---|
2063 | }
|
---|
2064 |
|
---|
2065 | /* #18605 */
|
---|
2066 | *[building:height] {
|
---|
2067 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
2068 | suggestAlternative: "height";
|
---|
2069 | fixChangeKey: "building:height => height";
|
---|
2070 | group: tr("deprecated tagging");
|
---|
2071 | }
|
---|
2072 | *[building:min_height] {
|
---|
2073 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
2074 | suggestAlternative: "min_height";
|
---|
2075 | fixChangeKey: "building:min_height => min_height";
|
---|
2076 | group: tr("deprecated tagging");
|
---|
2077 | }
|
---|
2078 |
|
---|
2079 | /* #11232 */
|
---|
2080 | way[highway][construction=yes][highway!=construction] {
|
---|
2081 | throwWarning: tr("{0} is deprecated", "{1.tag}");
|
---|
2082 | suggestAlternative: "construction=minor";
|
---|
2083 | suggestAlternative: concat("highway=construction + construction=", "{0.value}");
|
---|
2084 | group: tr("deprecated tagging");
|
---|
2085 | }
|
---|
2086 |
|
---|
2087 | /* #18659, #20539 */
|
---|
2088 | *[car] {
|
---|
2089 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
2090 | suggestAlternative: "motorcar";
|
---|
2091 | group: tr("deprecated tagging");
|
---|
2092 | fixChangeKey: "car => motorcar";
|
---|
2093 | }
|
---|
2094 |
|
---|
2095 | /* #18767 */
|
---|
2096 | *[navigationaid=approach_light],
|
---|
2097 | *[navigationaid="ALS (Approach lighting system)"] {
|
---|
2098 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2099 | suggestAlternative: "navigationaid=als";
|
---|
2100 | group: tr("deprecated tagging");
|
---|
2101 | fixAdd: "navigationaid=als";
|
---|
2102 | }
|
---|
2103 |
|
---|
2104 | /* #18819 */
|
---|
2105 | node[exit_to] {
|
---|
2106 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
2107 | suggestAlternative: "destination";
|
---|
2108 | group: tr("deprecated tagging");
|
---|
2109 | }
|
---|
2110 |
|
---|
2111 | /* #18951 */
|
---|
2112 | *[water=riverbank][!natural] {
|
---|
2113 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2114 | suggestAlternative: "natural=water + water=river";
|
---|
2115 | group: tr("deprecated tagging");
|
---|
2116 | fixAdd: "water=river";
|
---|
2117 | fixAdd: "natural=water";
|
---|
2118 | }
|
---|
2119 | *[water=riverbank][natural] {
|
---|
2120 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2121 | suggestAlternative: "natural=water + water=river";
|
---|
2122 | group: tr("deprecated tagging");
|
---|
2123 | }
|
---|
2124 |
|
---|
2125 | /* #21630 */
|
---|
2126 | *[waterway=riverbank][!natural][!water],
|
---|
2127 | *[waterway=riverbank][natural=water][!water],
|
---|
2128 | *[waterway=riverbank][!natural][water=river],
|
---|
2129 | *[waterway=riverbank][natural=water][water=river] {
|
---|
2130 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2131 | suggestAlternative: "natural=water + water=river";
|
---|
2132 | group: tr("deprecated tagging");
|
---|
2133 | fixAdd: "natural=water";
|
---|
2134 | fixAdd: "water=river";
|
---|
2135 | fixRemove: "waterway";
|
---|
2136 | assertMatch: "way waterway=riverbank";
|
---|
2137 | assertMatch: "way waterway=riverbank natural=water";
|
---|
2138 | assertMatch: "way waterway=riverbank water=river";
|
---|
2139 | assertMatch: "way waterway=riverbank natural=water water=river";
|
---|
2140 | assertNoMatch: "way waterway=riverbank natural=shingle";
|
---|
2141 | assertNoMatch: "way waterway=riverbank water=lake";
|
---|
2142 | assertNoMatch: "way waterway=riverbank natural=water water=lake";
|
---|
2143 | assertNoMatch: "way waterway=riverbank natural=shingle water=river";
|
---|
2144 | }
|
---|
2145 | *[waterway=riverbank][natural][natural!=water],
|
---|
2146 | *[waterway=riverbank][water][water!=river] {
|
---|
2147 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2148 | suggestAlternative: "natural=water + water=river";
|
---|
2149 | group: tr("deprecated tagging");
|
---|
2150 | assertMatch: "way waterway=riverbank natural=shingle";
|
---|
2151 | assertMatch: "way waterway=riverbank water=lake";
|
---|
2152 | assertNoMatch: "way waterway=riverbank";
|
---|
2153 | assertNoMatch: "way waterway=riverbank natural=water";
|
---|
2154 | assertNoMatch: "way waterway=riverbank water=river";
|
---|
2155 | assertNoMatch: "way waterway=riverbank natural=water water=river";
|
---|
2156 | }
|
---|
2157 |
|
---|
2158 | node[amenity=bench][capacity][!seats],
|
---|
2159 | way[amenity=bench][capacity][!seats] {
|
---|
2160 | throwWarning: tr("{0} is deprecated for {1}", "{1.key}", "{0.tag}");
|
---|
2161 | suggestAlternative: "seats";
|
---|
2162 | group: tr("deprecated tagging");
|
---|
2163 | fixChangeKey: "capacity => seats";
|
---|
2164 | }
|
---|
2165 | node[amenity=bench][capacity][seats],
|
---|
2166 | way[amenity=bench][capacity][seats] {
|
---|
2167 | throwWarning: tr("{0} is deprecated for {1}", "{1.key}", "{0.tag}");
|
---|
2168 | suggestAlternative: "seats";
|
---|
2169 | group: tr("deprecated tagging");
|
---|
2170 | }
|
---|
2171 |
|
---|
2172 | /* #19396 */
|
---|
2173 | way[stream=intermittent] {
|
---|
2174 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2175 | suggestAlternative: "intermittent=yes";
|
---|
2176 | suggestAlternative: "seasonal=yes";
|
---|
2177 | group: tr("deprecated tagging");
|
---|
2178 | }
|
---|
2179 |
|
---|
2180 | *[shop=lamps] {
|
---|
2181 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2182 | suggestAlternative: "shop=lighting";
|
---|
2183 | group: tr("deprecated tagging");
|
---|
2184 | fixAdd: "shop=lighting";
|
---|
2185 | }
|
---|
2186 |
|
---|
2187 | /* #19180 */
|
---|
2188 | *[access=customer] {
|
---|
2189 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2190 | suggestAlternative: "access=customers";
|
---|
2191 | group: tr("deprecated tagging");
|
---|
2192 | fixAdd: "access=customers";
|
---|
2193 | }
|
---|
2194 | *[addr:inclusion=estimated] {
|
---|
2195 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2196 | suggestAlternative: "addr:inclusion=estimate";
|
---|
2197 | group: tr("deprecated tagging");
|
---|
2198 | fixAdd: "addr:inclusion=estimate";
|
---|
2199 | }
|
---|
2200 | *[building=apartment] {
|
---|
2201 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2202 | suggestAlternative: "building=apartments";
|
---|
2203 | group: tr("deprecated tagging");
|
---|
2204 | fixAdd: "building=apartments";
|
---|
2205 | }
|
---|
2206 | node[lamp_mount="bent mast"] {
|
---|
2207 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2208 | suggestAlternative: "lamp_mount=bent_mast";
|
---|
2209 | group: tr("deprecated tagging");
|
---|
2210 | fixAdd: "lamp_mount=bent_mast";
|
---|
2211 | }
|
---|
2212 | node[lamp_mount="straight mast"] {
|
---|
2213 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2214 | suggestAlternative: "lamp_mount=straight_mast";
|
---|
2215 | group: tr("deprecated tagging");
|
---|
2216 | fixAdd: "lamp_mount=straight_mast";
|
---|
2217 | }
|
---|
2218 | node[lamp_type=electrical] {
|
---|
2219 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2220 | suggestAlternative: "lamp_type=electric";
|
---|
2221 | group: tr("deprecated tagging");
|
---|
2222 | fixAdd: "lamp_type=electric";
|
---|
2223 | }
|
---|
2224 | *[generator:type=solar_photovoltaic_panels] {
|
---|
2225 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2226 | suggestAlternative: "generator:type=solar_photovoltaic_panel";
|
---|
2227 | group: tr("deprecated tagging");
|
---|
2228 | fixAdd: "generator:type=solar_photovoltaic_panel";
|
---|
2229 | }
|
---|
2230 | *[building=part] {
|
---|
2231 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2232 | suggestAlternative: "building:part=yes";
|
---|
2233 | group: tr("deprecated tagging");
|
---|
2234 | /* without autofix, it is not clear if a building or a building part is mapped */
|
---|
2235 | }
|
---|
2236 |
|
---|
2237 | /* #19739 */
|
---|
2238 | *[natural=sink_hole] {
|
---|
2239 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2240 | suggestAlternative: "natural=sinkhole";
|
---|
2241 | group: tr("deprecated tagging");
|
---|
2242 | fixAdd: "natural=sinkhole";
|
---|
2243 | }
|
---|
2244 |
|
---|
2245 | /* #19782 */
|
---|
2246 | *[climbing:grade:UIAA:min] {
|
---|
2247 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
2248 | suggestAlternative: "climbing:grade:uiaa:min";
|
---|
2249 | group: tr("deprecated tagging");
|
---|
2250 | fixChangeKey: "climbing:grade:UIAA:min => climbing:grade:uiaa:min";
|
---|
2251 | }
|
---|
2252 | *[climbing:grade:UIAA:max] {
|
---|
2253 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
2254 | suggestAlternative: "climbing:grade:uiaa:max";
|
---|
2255 | group: tr("deprecated tagging");
|
---|
2256 | fixChangeKey: "climbing:grade:UIAA:max => climbing:grade:uiaa:max";
|
---|
2257 | }
|
---|
2258 | *[climbing:grade:UIAA:mean] {
|
---|
2259 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
2260 | suggestAlternative: "climbing:grade:uiaa:mean";
|
---|
2261 | group: tr("deprecated tagging");
|
---|
2262 | fixChangeKey: "climbing:grade:UIAA:mean => climbing:grade:uiaa:mean";
|
---|
2263 | }
|
---|
2264 | *[climbing:grade:UIAA] {
|
---|
2265 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
2266 | suggestAlternative: "climbing:grade:uiaa";
|
---|
2267 | group: tr("deprecated tagging");
|
---|
2268 | fixChangeKey: "climbing:grade:UIAA => climbing:grade:uiaa";
|
---|
2269 | }
|
---|
2270 |
|
---|
2271 | /* #19835 */
|
---|
2272 | *[cuisine][cuisine =~ /^(?i)(bbq)$/] { /* single value cases with autofix */
|
---|
2273 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2274 | suggestAlternative: "cuisine=barbecue";
|
---|
2275 | group: tr("deprecated tagging");
|
---|
2276 | fixAdd: "cuisine=barbecue";
|
---|
2277 | set bbq_autofix;
|
---|
2278 | assertMatch: "way cuisine=bbq";
|
---|
2279 | assertMatch: "way cuisine=BBQ";
|
---|
2280 | assertNoMatch: "way cuisine=pizza;Bbq";
|
---|
2281 | assertNoMatch: "way cuisine=pizza;bbq";
|
---|
2282 | assertNoMatch: "way cuisine=bbq;pizza";
|
---|
2283 | assertNoMatch: "way cuisine=pasta;bbq;pizza";
|
---|
2284 | assertNoMatch: "way cuisine=korean_bbq";
|
---|
2285 | assertNoMatch: "way cuisine=korean_bbq;bbq";
|
---|
2286 | }
|
---|
2287 | *[cuisine =~ /(?i)(;bbq|bbq;)/][cuisine!~/(?i)(_bbq)/] { /* multi value cases without autofix */
|
---|
2288 | throwWarning: tr("{0} is deprecated", "cuisine=bbq");
|
---|
2289 | suggestAlternative: "cuisine=barbecue";
|
---|
2290 | group: tr("deprecated tagging");
|
---|
2291 | assertNoMatch: "way cuisine=bbq";
|
---|
2292 | assertNoMatch: "way cuisine=BBQ";
|
---|
2293 | assertMatch: "way cuisine=pizza;Bbq";
|
---|
2294 | assertMatch: "way cuisine=pizza;bbq";
|
---|
2295 | assertMatch: "way cuisine=bbq;pizza";
|
---|
2296 | assertMatch: "way cuisine=pasta;bbq;pizza";
|
---|
2297 | assertNoMatch: "way cuisine=korean_bbq";
|
---|
2298 | assertNoMatch: "way cuisine=korean_bbq;bbq"; /* corner case (mixed ; and _) not supported by these rules, probably not present in the osm database */
|
---|
2299 | }
|
---|
2300 |
|
---|
2301 | /* #17498, #20392 */
|
---|
2302 | way[cycleway=none],
|
---|
2303 | way[cycleway:left=none],
|
---|
2304 | way[cycleway:right=none],
|
---|
2305 | way[shoulder=none] {
|
---|
2306 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2307 | suggestAlternative: concat("{0.key}", "=no");
|
---|
2308 | group: tr("deprecated tagging");
|
---|
2309 | fixAdd: concat("{0.key}", "=no");
|
---|
2310 | }
|
---|
2311 |
|
---|
2312 | /* #17809 */
|
---|
2313 | *[Fixme] {
|
---|
2314 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
2315 | suggestAlternative: "fixme";
|
---|
2316 | group: tr("deprecated tagging");
|
---|
2317 | fixChangeKey: "Fixme => fixme";
|
---|
2318 | assertMatch: "way Fixme=foo";
|
---|
2319 | assertNoMatch: "way fixme=foo";
|
---|
2320 | assertNoMatch: "way FIXME=foo";
|
---|
2321 | }
|
---|
2322 |
|
---|
2323 | /* #20338 */
|
---|
2324 | *[amenity=embassy] {
|
---|
2325 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2326 | suggestAlternative: "office=diplomatic + diplomatic=embassy";
|
---|
2327 | group: tr("deprecated tagging");
|
---|
2328 | fixAdd: "office=diplomatic";
|
---|
2329 | fixChangeKey: "amenity => diplomatic";
|
---|
2330 | }
|
---|
2331 |
|
---|
2332 | /* #11019 */
|
---|
2333 | *[service:bicycle:chaintool] {
|
---|
2334 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
2335 | suggestAlternative: "service:bicycle:chain_tool";
|
---|
2336 | group: tr("deprecated tagging");
|
---|
2337 | fixChangeKey: "service:bicycle:chaintool => service:bicycle:chain_tool";
|
---|
2338 | }
|
---|
2339 |
|
---|
2340 | /* #20434 */
|
---|
2341 | *[building:roof:shape] {
|
---|
2342 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
2343 | suggestAlternative: "roof:shape";
|
---|
2344 | group: tr("deprecated tagging");
|
---|
2345 | fixChangeKey: "building:roof:shape => roof:shape";
|
---|
2346 | }
|
---|
2347 |
|
---|
2348 | /* #20530 */
|
---|
2349 | *[man_made=pumping_rig][!pump_mechanism][!mechanical_driver][!mechanical_coupling] {
|
---|
2350 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2351 | suggestAlternative: "man_made=petroleum_well";
|
---|
2352 | suggestAlternative: "man_made=water_well";
|
---|
2353 | fixAdd: "pump_mechanism=piston";
|
---|
2354 | fixAdd: "mechanical_driver=combustion_engine";
|
---|
2355 | fixAdd: "mechanical_coupling=nodding_donkey";
|
---|
2356 | group: tr("deprecated tagging");
|
---|
2357 | set pumping_ring_no_mech;
|
---|
2358 | }
|
---|
2359 | *[man_made=pumping_rig]!.pumping_ring_no_mech {
|
---|
2360 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2361 | suggestAlternative: "man_made=petroleum_well";
|
---|
2362 | suggestAlternative: "man_made=water_well";
|
---|
2363 | group: tr("deprecated tagging");
|
---|
2364 | }
|
---|
2365 | *[pump:type=beam_pump][!pump_mechanism][!mechanical_driver][!mechanical_coupling] {
|
---|
2366 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2367 | suggestAlternative: "pump_mechanism";
|
---|
2368 | fixRemove: "pump:type";
|
---|
2369 | fixAdd: "pump_mechanism=piston";
|
---|
2370 | fixAdd: "mechanical_driver=combustion_engine";
|
---|
2371 | fixAdd: "mechanical_coupling=nodding_donkey";
|
---|
2372 | group: tr("deprecated tagging");
|
---|
2373 | set beam_pump_no_mech
|
---|
2374 | }
|
---|
2375 | *[pump:type]!.beam_pump_no_mech {
|
---|
2376 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2377 | suggestAlternative: "pump_mechanism";
|
---|
2378 | group: tr("deprecated tagging");
|
---|
2379 | }
|
---|
2380 | *[substance=heat] {
|
---|
2381 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2382 | suggestAlternative: "substance=hot_water";
|
---|
2383 | suggestAlternative: "substance=steam";
|
---|
2384 | group: tr("deprecated tagging");
|
---|
2385 | }
|
---|
2386 |
|
---|
2387 | /* #20959 */
|
---|
2388 | *[landuse=school] {
|
---|
2389 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2390 | suggestAlternative: "amenity=college";
|
---|
2391 | suggestAlternative: "amenity=school";
|
---|
2392 | suggestAlternative: "amenity=university";
|
---|
2393 | suggestAlternative: "landuse=education";
|
---|
2394 | group: tr("deprecated tagging");
|
---|
2395 | }
|
---|
2396 |
|
---|
2397 | /* #21782 */
|
---|
2398 | *[amenity=vending_machine][vending=parcel_mail_in],
|
---|
2399 | *[amenity=vending_machine][vending=parcel_pickup] {
|
---|
2400 | set .parcel_fixable;
|
---|
2401 | throwWarning: tr("{0} is deprecated", "{1.tag}");
|
---|
2402 | suggestAlternative: "amenity=parcel_locker + {1.value}=yes";
|
---|
2403 | fixAdd: "amenity=parcel_locker";
|
---|
2404 | fixAdd: "{1.value}=yes";
|
---|
2405 | fixRemove: "vending";
|
---|
2406 | group: tr("deprecated tagging");
|
---|
2407 | assertMatch: "node amenity=vending_machine vending=parcel_mail_in";
|
---|
2408 | assertMatch: "node amenity=vending_machine vending=parcel_pickup";
|
---|
2409 | }
|
---|
2410 | *[amenity=vending_machine][vending][vending~=parcel_mail_in][vending~=parcel_pickup][count(uniq_list(split(";", tag("vending")))) == 2] {
|
---|
2411 | set .parcel_fixable;
|
---|
2412 | throwWarning: tr("{0} is deprecated", "{1.tag}");
|
---|
2413 | suggestAlternative: "amenity=parcel_locker + parcel_pickup=yes + parcel_mail_in=yes";
|
---|
2414 | fixAdd: "amenity=parcel_locker";
|
---|
2415 | fixAdd: "parcel_pickup=yes";
|
---|
2416 | fixAdd: "parcel_mail_in=yes";
|
---|
2417 | fixRemove: "vending";
|
---|
2418 | group: tr("deprecated tagging");
|
---|
2419 | assertMatch: "node amenity=vending_machine vending=parcel_mail_in;parcel_pickup";
|
---|
2420 | assertMatch: "node amenity=vending_machine vending=parcel_pickup;parcel_mail_in";
|
---|
2421 | }
|
---|
2422 | *[amenity=vending_machine][vending~=parcel_mail_in]!.parcel_fixable,
|
---|
2423 | *[amenity=vending_machine][vending~=parcel_pickup]!.parcel_fixable {
|
---|
2424 | throwWarning: tr("{0} is deprecated", "{1.tag}");
|
---|
2425 | suggestAlternative: "amenity=parcel_locker + {1.value}=yes";
|
---|
2426 | assertMatch: "node amenity=vending_machine vending=parcel_pickup;stamp";
|
---|
2427 | group: tr("deprecated tagging");
|
---|
2428 | }
|
---|
2429 |
|
---|
2430 | /* #21954 decoturf was added to JOSM presets in r8123 and replaced with acrylic in r18404 */
|
---|
2431 | *[surface=decoturf] {
|
---|
2432 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2433 | suggestAlternative: "surface=acrylic";
|
---|
2434 | fixAdd: "surface=acrylic";
|
---|
2435 | group: tr("deprecated tagging");
|
---|
2436 | }
|
---|
2437 |
|
---|
2438 | /* #20637 */
|
---|
2439 | *[role] {
|
---|
2440 | throwWarning: tr("{0} as a tag on an object. Roles are specified in the relation members list instead.", "{0.tag}", "{0.key}");
|
---|
2441 | assertMatch: "node role=stop";
|
---|
2442 | }
|
---|
2443 |
|
---|
2444 | /* #22120 */
|
---|
2445 | *[school=entrance] {
|
---|
2446 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2447 | suggestAlternative: "entrance=yes";
|
---|
2448 | suggestAlternative: "entrance=main";
|
---|
2449 | group: tr("deprecated tagging");
|
---|
2450 | }
|
---|
2451 |
|
---|
2452 | /* #21836 */
|
---|
2453 | *[voltage-high],
|
---|
2454 | *[voltage-low] {
|
---|
2455 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
2456 | suggestAlternative: "voltage:primary";
|
---|
2457 | suggestAlternative: "voltage:secondary";
|
---|
2458 | group: tr("deprecated tagging");
|
---|
2459 | }
|
---|
2460 |
|
---|
2461 | /* #22335 */
|
---|
2462 | *[toilet][!toilets] {
|
---|
2463 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
2464 | suggestAlternative: "toilets";
|
---|
2465 | group: tr("deprecated tagging");
|
---|
2466 | fixChangeKey: "toilet => toilets";
|
---|
2467 | }
|
---|
2468 | *[toilet][toilets] {
|
---|
2469 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
2470 | suggestAlternative: "toilets";
|
---|
2471 | group: tr("deprecated tagging");
|
---|
2472 | }
|
---|
2473 |
|
---|
2474 | /* Replaced by type=connectivity */
|
---|
2475 | *[type="turnlanes:turns"] {
|
---|
2476 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2477 | suggestAlternative: "type=connectivity";
|
---|
2478 | group: tr("deprecated tagging");
|
---|
2479 | }
|
---|
2480 |
|
---|
2481 | /* temporary URLs, can be extended to other websites and other keys e.g. "url" or "website", #22397 */
|
---|
2482 | *[image][image=~/^https:\/\/westnordost.de\/p\//] {
|
---|
2483 | throwWarning: tr("{0} with a temporary URL which may be outdated very soon", "{0.key}");
|
---|
2484 | fixRemove: "{0.key}";
|
---|
2485 | assertMatch: "node image=https://westnordost.de/p/17484.jpg";
|
---|
2486 | assertNoMatch: "node image=https://web.archive.org/web/20220623215400/https://westnordost.de/p/97331.jpg";
|
---|
2487 | assertNoMatch: "node image=https://commons.wikimedia.org/wiki/File:2015-05-13_Basteibr%C3%BCcke-.jpg";
|
---|
2488 | }
|
---|
2489 |
|
---|
2490 | /* Replaced by archaeological_site, see #22561 */
|
---|
2491 | *[historic=archaeological_site][site_type] {
|
---|
2492 | throwWarning: tr("{0} should be replaced with {1}", "{1.key}", "archaeological_site");
|
---|
2493 | fixChangeKey: "site_type => archaeological_site";
|
---|
2494 | assertMatch: "node historic=archaeological_site site_type=fortification";
|
---|
2495 | assertNoMatch: "node historic=archaeological_site site_type2=fortification";
|
---|
2496 | }
|
---|
2497 |
|
---|
2498 | /* Tag was renamed, see #22957 */
|
---|
2499 | area[parking:orientation][!orientation] {
|
---|
2500 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2501 | group: tr("deprecated tagging");
|
---|
2502 | suggestAlternative: "{1.key}={0.value}";
|
---|
2503 | fixChangeKey: "{0.key} => {1.key}";
|
---|
2504 | }
|
---|
2505 | area[parking:orientation][orientation]["parking:orientation"=*orientation] {
|
---|
2506 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2507 | group: tr("deprecated tagging");
|
---|
2508 | fixRemove: "{0.key}";
|
---|
2509 | }
|
---|
2510 | area[parking:orientation][orientation]["parking:orientation"!=*orientation] {
|
---|
2511 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
2512 | group: tr("deprecated tagging");
|
---|
2513 | suggestAlternative: "{1.key}={0.value}";
|
---|
2514 | suggestAlternative: "{1.key}={1.value}";
|
---|
2515 | }
|
---|
2516 |
|
---|
2517 | /* When tags are deprecated they should be added to ignoretags.cfg too. */
|
---|