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 | way[class] {
|
---|
33 | /* from http://wiki.openstreetmap.org/wiki/Deprecated_features */
|
---|
34 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
35 | suggestAlternative: "highway";
|
---|
36 | group: tr("deprecated tagging");
|
---|
37 | }
|
---|
38 |
|
---|
39 | *[highway=stile] {
|
---|
40 | /* from http://wiki.openstreetmap.org/wiki/Deprecated_features */
|
---|
41 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
42 | suggestAlternative: "barrier=stile";
|
---|
43 | group: tr("deprecated tagging");
|
---|
44 | fixRemove: "highway";
|
---|
45 | fixAdd: "barrier=stile";
|
---|
46 | }
|
---|
47 |
|
---|
48 | *[highway=incline] {
|
---|
49 | /* from http://wiki.openstreetmap.org/wiki/Deprecated_features */
|
---|
50 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
51 | suggestAlternative: "incline";
|
---|
52 | group: tr("deprecated tagging");
|
---|
53 | }
|
---|
54 |
|
---|
55 | *[highway=incline_steep] {
|
---|
56 | /* from http://wiki.openstreetmap.org/wiki/Deprecated_features */
|
---|
57 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
58 | suggestAlternative: "incline";
|
---|
59 | group: tr("deprecated tagging");
|
---|
60 | }
|
---|
61 |
|
---|
62 | *[highway=unsurfaced] {
|
---|
63 | /* from http://wiki.openstreetmap.org/wiki/Deprecated_features */
|
---|
64 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
65 | suggestAlternative: "highway=* + surface=unpaved";
|
---|
66 | group: tr("deprecated tagging");
|
---|
67 | fixAdd: "highway=road";
|
---|
68 | fixAdd: "surface=unpaved";
|
---|
69 | }
|
---|
70 |
|
---|
71 | *[landuse=wood] {
|
---|
72 | /* from http://wiki.openstreetmap.org/wiki/Deprecated_features */
|
---|
73 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
74 | suggestAlternative: "landuse=forest";
|
---|
75 | suggestAlternative: "natural=wood";
|
---|
76 | group: tr("deprecated tagging");
|
---|
77 | }
|
---|
78 |
|
---|
79 | *[natural=marsh] {
|
---|
80 | /* from http://wiki.openstreetmap.org/wiki/Deprecated_features */
|
---|
81 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
82 | suggestAlternative: "natural=wetland + wetland=marsh";
|
---|
83 | group: tr("deprecated tagging");
|
---|
84 | fixAdd: "natural=wetland";
|
---|
85 | fixAdd: "wetland=marsh";
|
---|
86 | }
|
---|
87 |
|
---|
88 | *[highway=byway] {
|
---|
89 | /* from http://wiki.openstreetmap.org/wiki/Deprecated_features */
|
---|
90 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
91 | group: tr("deprecated tagging");
|
---|
92 | }
|
---|
93 |
|
---|
94 | *[power_source] {
|
---|
95 | /* from http://wiki.openstreetmap.org/wiki/Deprecated_features */
|
---|
96 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
97 | suggestAlternative: "generator:source";
|
---|
98 | group: tr("deprecated tagging");
|
---|
99 | }
|
---|
100 |
|
---|
101 | *[power_rating] {
|
---|
102 | /* from http://wiki.openstreetmap.org/wiki/Deprecated_features */
|
---|
103 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
104 | suggestAlternative: "generator:output";
|
---|
105 | group: tr("deprecated tagging");
|
---|
106 | }
|
---|
107 |
|
---|
108 | *[shop=antique] {
|
---|
109 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
110 | suggestAlternative: "shop=antiques";
|
---|
111 | group: tr("deprecated tagging");
|
---|
112 | fixAdd: "shop=antiques";
|
---|
113 | }
|
---|
114 |
|
---|
115 | *[shop=bags] {
|
---|
116 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
117 | suggestAlternative: "shop=bag";
|
---|
118 | group: tr("deprecated tagging");
|
---|
119 | fixAdd: "shop=bag";
|
---|
120 | }
|
---|
121 |
|
---|
122 | *[shop=organic] {
|
---|
123 | /* from http://wiki.openstreetmap.org/wiki/Tag:shop=organic */
|
---|
124 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
125 | suggestAlternative: "shop=* + organic=yes";
|
---|
126 | suggestAlternative: "shop=* + organic=only";
|
---|
127 | group: tr("deprecated tagging");
|
---|
128 | }
|
---|
129 |
|
---|
130 | *[shop=pets] {
|
---|
131 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
132 | suggestAlternative: "shop=pet";
|
---|
133 | group: tr("deprecated tagging");
|
---|
134 | fixAdd: "shop=pet";
|
---|
135 | }
|
---|
136 |
|
---|
137 | *[shop=pharmacy] {
|
---|
138 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
139 | suggestAlternative: "amenity=pharmacy";
|
---|
140 | group: tr("deprecated tagging");
|
---|
141 | fixChangeKey: "shop => amenity";
|
---|
142 | }
|
---|
143 |
|
---|
144 | *[bicycle_parking=sheffield] {
|
---|
145 | /* from http://wiki.openstreetmap.org/wiki/Key:bicycle_parking */
|
---|
146 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
147 | suggestAlternative: "bicycle_parking=stands";
|
---|
148 | group: tr("deprecated tagging");
|
---|
149 | fixAdd: "bicycle_parking=stands";
|
---|
150 | }
|
---|
151 |
|
---|
152 | *[amenity=emergency_phone] {
|
---|
153 | /* http://wiki.openstreetmap.org/wiki/Tag:emergency=phone */
|
---|
154 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
155 | suggestAlternative: "emergency=phone";
|
---|
156 | group: tr("deprecated tagging");
|
---|
157 | fixRemove: "amenity";
|
---|
158 | fixAdd: "emergency=phone";
|
---|
159 | }
|
---|
160 |
|
---|
161 | *[sport=gaelic_football] {
|
---|
162 | /* fix #8132 - http://wiki.openstreetmap.org/wiki/Tag:sport=gaelic_football */
|
---|
163 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
164 | suggestAlternative: "sport=gaelic_games";
|
---|
165 | group: tr("deprecated tagging");
|
---|
166 | fixAdd: "sport=gaelic_games";
|
---|
167 | }
|
---|
168 |
|
---|
169 | *[power=station] {
|
---|
170 | /* see #8847 / #8961 - http://wiki.openstreetmap.org/wiki/Tag:power=station */
|
---|
171 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
172 | suggestAlternative: "power=plant";
|
---|
173 | suggestAlternative: "power=substation";
|
---|
174 | group: tr("deprecated tagging");
|
---|
175 | }
|
---|
176 |
|
---|
177 | *[power=sub_station] {
|
---|
178 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
179 | suggestAlternative: "power=substation";
|
---|
180 | group: tr("deprecated tagging");
|
---|
181 | fixAdd: "power=substation";
|
---|
182 | }
|
---|
183 |
|
---|
184 | *[generator:method=dam] {
|
---|
185 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
186 | suggestAlternative: "generator:method=water-storage";
|
---|
187 | group: tr("deprecated tagging");
|
---|
188 | fixAdd: "generator:method=water-storage";
|
---|
189 | }
|
---|
190 |
|
---|
191 | *[generator:method=pumped-storage] {
|
---|
192 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
193 | suggestAlternative: "generator:method=water-pumped-storage";
|
---|
194 | group: tr("deprecated tagging");
|
---|
195 | fixAdd: "generator:method=water-pumped-storage";
|
---|
196 | }
|
---|
197 |
|
---|
198 | *[generator:method=pumping] {
|
---|
199 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
200 | suggestAlternative: "generator:method=water-pumped-storage";
|
---|
201 | group: tr("deprecated tagging");
|
---|
202 | fixAdd: "generator:method=water-pumped-storage";
|
---|
203 | }
|
---|
204 |
|
---|
205 | *[fence_type=chain] {
|
---|
206 | /* see #8962 - http://wiki.openstreetmap.org/wiki/Key:fence_type */
|
---|
207 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
208 | suggestAlternative: "barrier=chain";
|
---|
209 | suggestAlternative: "barrier=fence + fence_type=chain_link";
|
---|
210 | group: tr("deprecated tagging");
|
---|
211 | }
|
---|
212 |
|
---|
213 | *[building=entrance] {
|
---|
214 | /* see #9000 - http://wiki.openstreetmap.org/wiki/Key:entrance */
|
---|
215 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
216 | suggestAlternative: "entrance";
|
---|
217 | group: tr("deprecated tagging");
|
---|
218 | }
|
---|
219 |
|
---|
220 | *[board_type=board] {
|
---|
221 | /* see #9213 - Useless tag proposed in internal preset for years */
|
---|
222 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
223 | group: tr("deprecated tagging");
|
---|
224 | fixRemove: "board_type";
|
---|
225 | }
|
---|
226 |
|
---|
227 | *[man_made=measurement_station] {
|
---|
228 | /* see #8434 - http://wiki.openstreetmap.org/wiki/Proposed_features/monitoring_station */
|
---|
229 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
230 | suggestAlternative: "man_made=monitoring_station";
|
---|
231 | group: tr("deprecated tagging");
|
---|
232 | fixAdd: "man_made=monitoring_station";
|
---|
233 | }
|
---|
234 |
|
---|
235 | *[measurement=water_level] {
|
---|
236 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
237 | suggestAlternative: "monitoring:water_level=yes";
|
---|
238 | group: tr("deprecated tagging");
|
---|
239 | fixRemove: "measurement";
|
---|
240 | fixAdd: "monitoring:water_level=yes";
|
---|
241 | }
|
---|
242 |
|
---|
243 | *[measurement=weather] {
|
---|
244 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
245 | suggestAlternative: "monitoring:weather=yes";
|
---|
246 | group: tr("deprecated tagging");
|
---|
247 | fixRemove: "measurement";
|
---|
248 | fixAdd: "monitoring:weather=yes";
|
---|
249 | }
|
---|
250 |
|
---|
251 | *[measurement=seismic] {
|
---|
252 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
253 | suggestAlternative: "monitoring:seismic_activity=yes";
|
---|
254 | group: tr("deprecated tagging");
|
---|
255 | fixRemove: "measurement";
|
---|
256 | fixAdd: "monitoring:seismic_activity=yes";
|
---|
257 | }
|
---|
258 |
|
---|
259 | *[monitoring:river_level] {
|
---|
260 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
261 | suggestAlternative: "monitoring:water_level";
|
---|
262 | group: tr("deprecated tagging");
|
---|
263 | fixChangeKey: "monitoring:river_level => monitoring:water_level";
|
---|
264 | }
|
---|
265 |
|
---|
266 | *[stay] {
|
---|
267 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
268 | suggestAlternative: "maxstay";
|
---|
269 | group: tr("deprecated tagging");
|
---|
270 | fixChangeKey: "stay => maxstay";
|
---|
271 | }
|
---|
272 |
|
---|
273 | *[emergency=aed] {
|
---|
274 | /* see #9554 - http://wiki.openstreetmap.org/wiki/Proposed_features/automated_external_defibrillator */
|
---|
275 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
276 | suggestAlternative: "emergency=defibrillator";
|
---|
277 | group: tr("deprecated tagging");
|
---|
278 | fixAdd: "emergency=defibrillator";
|
---|
279 | }
|
---|
280 |
|
---|
281 | /* from http://wiki.openstreetmap.org/wiki/Conditional_restrictions#Deprecated_tags */
|
---|
282 | *[day_on][!restriction],
|
---|
283 | *[day_off][!restriction],
|
---|
284 | *[date_on][!restriction],
|
---|
285 | *[date_off][!restriction],
|
---|
286 | *[hour_on][!restriction],
|
---|
287 | *[hour_off][!restriction] {
|
---|
288 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
289 | suggestAlternative: "*:conditional";
|
---|
290 | group: tr("deprecated tagging");
|
---|
291 | assertMatch: "node day_on=0-12";
|
---|
292 | }
|
---|
293 |
|
---|
294 | /* see #10000, http://wiki.openstreetmap.org/wiki/Tag%3Aaccess%3Ddesignated */
|
---|
295 | *[access=designated] {
|
---|
296 | throwWarning: tr("''{0}'' is meaningless, use more specific tags, e.g. ''{1}''", "access=designated", "bicycle=designated");
|
---|
297 | assertMatch: "way access=designated";
|
---|
298 | }
|
---|
299 | *[access=official] {
|
---|
300 | throwWarning: tr("''{0}'' does not specify the official mode of transportation, use ''{1}'' for example", "access=official", "bicycle=official");
|
---|
301 | assertMatch: "way access=official";
|
---|
302 | }
|
---|
303 |
|
---|
304 | /* see #10085 - give warning for fixme=yes */
|
---|
305 | *[fixme=yes], *[FIXME=yes] {
|
---|
306 | throwWarning: tr("{0}={1} is unspecific. Instead of ''{1}'' please give more information about what exactly should be fixed.", "{0.key}", "{0.value}");
|
---|
307 | assertMatch: "way fixme=yes";
|
---|
308 | }
|
---|
309 |
|
---|
310 | *[name][name=~/^(?i)fixme$/] {
|
---|
311 | 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}");
|
---|
312 | fixRemove: "name";
|
---|
313 | assertMatch: "node name=fixme";
|
---|
314 | assertMatch: "node name=Fixme";
|
---|
315 | assertMatch: "node name=FIXME";
|
---|
316 | assertNoMatch: "node name=valid name";
|
---|
317 | }
|
---|
318 |
|
---|
319 | *[note][note=~/^(?i)fixme$/] {
|
---|
320 | 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}");
|
---|
321 | }
|
---|
322 |
|
---|
323 | /* see #10107, #10108, #10929, #13391 - http://wiki.openstreetmap.org/wiki/Proposed_features/leaftype#Features.2FPages_affected */
|
---|
324 | *[type=broad_leaved],
|
---|
325 | *[type=broad_leafed] {
|
---|
326 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
327 | suggestAlternative: "leaf_type=broadleaved";
|
---|
328 | group: tr("deprecated tagging");
|
---|
329 | fixRemove: "{0.key}";
|
---|
330 | fixAdd: "leaf_type=broadleaved";
|
---|
331 | }
|
---|
332 |
|
---|
333 | *[wood=coniferous],
|
---|
334 | *[type=coniferous],
|
---|
335 | *[type=conifer] {
|
---|
336 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
337 | suggestAlternative: "leaf_type=needleleaved";
|
---|
338 | group: tr("deprecated tagging");
|
---|
339 | fixRemove: "{0.key}";
|
---|
340 | fixAdd: "leaf_type=needleleaved";
|
---|
341 | }
|
---|
342 |
|
---|
343 | *[wood=mixed] {
|
---|
344 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
345 | suggestAlternative: "leaf_type=mixed";
|
---|
346 | group: tr("deprecated tagging");
|
---|
347 | fixRemove: "wood";
|
---|
348 | fixAdd: "leaf_type=mixed";
|
---|
349 | }
|
---|
350 |
|
---|
351 | *[wood=evergreen],
|
---|
352 | *[type=evergreen] {
|
---|
353 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
354 | suggestAlternative: "leaf_cycle=evergreen";
|
---|
355 | group: tr("deprecated tagging");
|
---|
356 | fixRemove: "{0.key}";
|
---|
357 | fixAdd: "leaf_cycle=evergreen";
|
---|
358 | }
|
---|
359 |
|
---|
360 | *[type=deciduous],
|
---|
361 | *[type=deciduos] {
|
---|
362 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
363 | suggestAlternative: "leaf_cycle=deciduous";
|
---|
364 | group: tr("deprecated tagging");
|
---|
365 | fixRemove: "type";
|
---|
366 | fixAdd: "leaf_cycle=deciduous";
|
---|
367 | }
|
---|
368 |
|
---|
369 | *[wood=deciduous] {
|
---|
370 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
371 | suggestAlternative: "leaf_type + leaf_cycle";
|
---|
372 | group: tr("deprecated tagging");
|
---|
373 | }
|
---|
374 |
|
---|
375 | node[type=palm],
|
---|
376 | way[type=palm] {
|
---|
377 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
378 | suggestAlternative: "leaf_type";
|
---|
379 | suggestAlternative: "trees";
|
---|
380 | suggestAlternative: "species";
|
---|
381 | group: tr("deprecated tagging");
|
---|
382 | }
|
---|
383 |
|
---|
384 | *[natural=land] {
|
---|
385 | throwWarning: tr("{0} is deprecated. Please use instead a multipolygon.", "{0.tag}");
|
---|
386 | group: tr("deprecated tagging");
|
---|
387 | assertMatch: "way natural=land";
|
---|
388 | }
|
---|
389 |
|
---|
390 | /* see #10447 - https://wiki.openstreetmap.org/wiki/Proposed_features/Bridge_types#Deprecated_bridge_key_values */
|
---|
391 | *[bridge=causeway] {
|
---|
392 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
393 | suggestAlternative: "ford=yes";
|
---|
394 | suggestAlternative: "bridge=low_water_crossing";
|
---|
395 | suggestAlternative: "embankment=yes";
|
---|
396 | group: tr("deprecated tagging");
|
---|
397 | }
|
---|
398 |
|
---|
399 | *[bridge=swing] {
|
---|
400 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
401 | suggestAlternative: "bridge:movable=swing";
|
---|
402 | suggestAlternative: "bridge:structure=simple-suspension";
|
---|
403 | group: tr("deprecated tagging");
|
---|
404 | }
|
---|
405 |
|
---|
406 | *[bridge=suspension] {
|
---|
407 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
408 | suggestAlternative: "bridge=yes + bridge:structure=suspension";
|
---|
409 | group: tr("deprecated tagging");
|
---|
410 | fixAdd: "bridge=yes";
|
---|
411 | fixAdd: "bridge:structure=suspension";
|
---|
412 | }
|
---|
413 |
|
---|
414 | /* See #10530 - Incorrect tag proposed in internal preset for years */
|
---|
415 | *[fee=interval],
|
---|
416 | *[lit=interval],
|
---|
417 | *[supervised=interval] {
|
---|
418 | throwWarning: tr("{0} is deprecated. Please specify interval by using opening_hours syntax", "{0.tag}");
|
---|
419 | group: tr("deprecated tagging");
|
---|
420 | }
|
---|
421 |
|
---|
422 | /* See #10582 - JOSM supported this tag as "don't upload this" feature, before the introduction of upload flag at layer level */
|
---|
423 | *[/josm\/ignore/] {
|
---|
424 | throwError: tr("{0} is deprecated. Please delete this object and use a private layer instead", "{0.key}");
|
---|
425 | group: tr("deprecated tagging");
|
---|
426 | fixDeleteObject: this;
|
---|
427 | }
|
---|
428 |
|
---|
429 | /* see #8281 */
|
---|
430 | *[sport=diving] {
|
---|
431 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
432 | suggestAlternative: "sport=scuba_diving";
|
---|
433 | suggestAlternative: "sport=cliff_diving";
|
---|
434 | group: tr("deprecated tagging");
|
---|
435 | }
|
---|
436 |
|
---|
437 | /* see #8281 */
|
---|
438 | *[parking=park_and_ride] {
|
---|
439 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
440 | suggestAlternative: "amenity=parking + park_ride=yes";
|
---|
441 | group: tr("deprecated tagging");
|
---|
442 | fixRemove: "parking";
|
---|
443 | fixAdd: "amenity=parking";
|
---|
444 | fixAdd: "park_ride=yes";
|
---|
445 | }
|
---|
446 |
|
---|
447 | /* see #10661, #10837, #11737, #12771 */
|
---|
448 | *[traffic_calming=yes],
|
---|
449 | *[access=restricted],
|
---|
450 | *[barrier=yes],
|
---|
451 | *[aerialway=yes][!public_transport],
|
---|
452 | *[amenity=yes],
|
---|
453 | *[leisure=yes],
|
---|
454 | *[shop="*"],
|
---|
455 | *[craft=yes],
|
---|
456 | *[service=yes],
|
---|
457 | *[place=yes] {
|
---|
458 | throwWarning: tr("{0}={1} is unspecific. Please replace ''{1}'' by a specific value.", "{0.key}", "{0.value}");
|
---|
459 | }
|
---|
460 |
|
---|
461 | /* see #10693 - http://wiki.openstreetmap.org/wiki/Proposed_features/drop_recommendation_for_place_name , #10837 */
|
---|
462 | *[place_name][!name] {
|
---|
463 | throwWarning: tr("{0} should be replaced with {1}", "{0.key}", "{1.key}");
|
---|
464 | fixChangeKey: "place_name => name";
|
---|
465 | }
|
---|
466 | *[place][place_name = *name] {
|
---|
467 | throwWarning: tr("{0} = {1}; remove {0}", "{1.key}", "{1.value}");
|
---|
468 | fixRemove: "{1.key}";
|
---|
469 | }
|
---|
470 |
|
---|
471 | way[sidewalk=yes] {
|
---|
472 | throwWarning: tr("{0}={1} is unspecific. Please replace ''{1}'' by ''left'', ''right'' or ''both''.", "{0.key}", "{0.value}");
|
---|
473 | }
|
---|
474 |
|
---|
475 | *[waterway=water_point] {
|
---|
476 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
477 | suggestAlternative: "amenity=water_point";
|
---|
478 | group: tr("deprecated tagging");
|
---|
479 | fixChangeKey: "waterway => amenity";
|
---|
480 | }
|
---|
481 | *[waterway=waste_disposal] {
|
---|
482 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
483 | suggestAlternative: "amenity=waste_disposal";
|
---|
484 | group: tr("deprecated tagging");
|
---|
485 | fixChangeKey: "waterway => amenity";
|
---|
486 | }
|
---|
487 | *[waterway=mooring] {
|
---|
488 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
489 | suggestAlternative: "mooring=yes";
|
---|
490 | group: tr("deprecated tagging");
|
---|
491 | fixRemove: "waterway";
|
---|
492 | fixAdd: "mooring=yes";
|
---|
493 | }
|
---|
494 |
|
---|
495 | /* see #10837 */
|
---|
496 | *[building][levels],
|
---|
497 | *[building:part=yes][levels] {
|
---|
498 | throwWarning: tr("{0} is deprecated", "{1.key}");
|
---|
499 | suggestAlternative: "building:levels";
|
---|
500 | group: tr("deprecated tagging");
|
---|
501 | fixChangeKey: "levels => building:levels";
|
---|
502 | }
|
---|
503 |
|
---|
504 | /* see #10691 */
|
---|
505 | *[protected_class] {
|
---|
506 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
507 | suggestAlternative: "protect_class";
|
---|
508 | group: tr("deprecated tagging");
|
---|
509 | fixChangeKey: "protected_class => protect_class";
|
---|
510 | }
|
---|
511 |
|
---|
512 | /* see #11070 */
|
---|
513 | *[lock=unknown],
|
---|
514 | *[hide=unknown],
|
---|
515 | *[shelter=unknown],
|
---|
516 | *[access=unknown],
|
---|
517 | *[capacity:parent=unknown],
|
---|
518 | *[capacity:women=unknown],
|
---|
519 | *[capacity:disabled=unknown],
|
---|
520 | *[crossing=unknown],
|
---|
521 | *[foot=unknown] {
|
---|
522 | throwWarning: tr("Unspecific tag {0}", "{0.tag}");
|
---|
523 | }
|
---|
524 |
|
---|
525 | /* unclear definition, see #11183 */
|
---|
526 | *[sport=skiing] {
|
---|
527 | throwWarning: tr("Definition of {0} is unclear", "{0.tag}");
|
---|
528 | suggestAlternative: tr("{0} + {1} + {2}", "piste:type=*", "piste:difficulty=*", "piste:grooming=*");
|
---|
529 | group: tr("deprecated tagging");
|
---|
530 | }
|
---|
531 |
|
---|
532 | /* see #11223 */
|
---|
533 | *[waterway=wadi] {
|
---|
534 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
535 | suggestAlternative: "{0.key}=* + intermittent=yes";
|
---|
536 | suggestAlternative: "natural=valley";
|
---|
537 | group: tr("deprecated tagging");
|
---|
538 | }
|
---|
539 |
|
---|
540 | /* see #10346, #15667 (waterway has its own rules in unnecessary.mapcss) */
|
---|
541 | way[oneway=1][!waterway] {
|
---|
542 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
543 | suggestAlternative: "oneway=yes";
|
---|
544 | group: tr("deprecated tagging");
|
---|
545 | fixAdd: "oneway=yes";
|
---|
546 | }
|
---|
547 |
|
---|
548 | /* see #11329, #15667 */
|
---|
549 | way[oneway=-1][!waterway] {
|
---|
550 | throwWarning: tr("{0} is not recommended. Use the Reverse Ways function from the Tools menu.", "{0.tag}");
|
---|
551 | }
|
---|
552 |
|
---|
553 | *[drinkable] {
|
---|
554 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
555 | suggestAlternative: "drinking_water";
|
---|
556 | group: tr("deprecated tagging");
|
---|
557 | }
|
---|
558 |
|
---|
559 | /* see #10329, #15877 */
|
---|
560 | /* simple key change */
|
---|
561 | *[color][!colour] {
|
---|
562 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
563 | suggestAlternative: "colour";
|
---|
564 | group: tr("deprecated tagging");
|
---|
565 | fixChangeKey: "color => colour";
|
---|
566 | assertMatch: "way color=red";
|
---|
567 | assertNoMatch: "way color=red colour=red";
|
---|
568 | }
|
---|
569 | area[building:color][!building:colour] {
|
---|
570 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
571 | suggestAlternative: "building:colour";
|
---|
572 | group: tr("deprecated tagging");
|
---|
573 | fixChangeKey: "building:color => building:colour";
|
---|
574 | assertMatch: "way building:color=red";
|
---|
575 | assertNoMatch: "way building:color=red building:colour=red";
|
---|
576 | }
|
---|
577 | area[roof:color][!roof:colour] {
|
---|
578 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
579 | suggestAlternative: "roof:colour";
|
---|
580 | group: tr("deprecated tagging");
|
---|
581 | fixChangeKey: "roof:color => roof:colour";
|
---|
582 | assertMatch: "way roof:color=red";
|
---|
583 | assertNoMatch: "way roof:color=red roof:colour=red";
|
---|
584 | }
|
---|
585 | /* both tags with same value, remove color */
|
---|
586 | *[color][colour][color=*colour] {
|
---|
587 | throwWarning: tr("{0} together with {1}", "{0.key}", "{1.key}");
|
---|
588 | suggestAlternative: "colour";
|
---|
589 | group: tr("deprecated tagging");
|
---|
590 | set samecolor;
|
---|
591 | fixRemove: "color";
|
---|
592 | assertMatch: "way color=red colour=red";
|
---|
593 | assertNoMatch: "way color=red colour=green";
|
---|
594 | }
|
---|
595 | area[building:color][building:colour]["building:color"=*"building:colour"] {
|
---|
596 | throwWarning: tr("{0} together with {1}", "{0.key}", "{1.key}");
|
---|
597 | suggestAlternative: "building:colour";
|
---|
598 | group: tr("deprecated tagging");
|
---|
599 | set samebuildingcolor;
|
---|
600 | fixRemove: "building:color";
|
---|
601 | assertMatch: "way building:color=red building:colour=red";
|
---|
602 | assertNoMatch: "way building:color=red building:colour=green";
|
---|
603 | }
|
---|
604 | area[roof:color][roof:colour]["roof:color"=*"roof:colour"] {
|
---|
605 | throwWarning: tr("{0} together with {1}", "{0.key}", "{1.key}");
|
---|
606 | suggestAlternative: "roof:colour";
|
---|
607 | group: tr("deprecated tagging");
|
---|
608 | set sameroofcolor;
|
---|
609 | fixRemove: "roof:color";
|
---|
610 | assertMatch: "way roof:color=red roof:colour=red";
|
---|
611 | assertNoMatch: "way roof:color=red roof:colour=green";
|
---|
612 | }
|
---|
613 | /* both tags with different values, no autofix */
|
---|
614 | *[color][colour]!.samecolor {
|
---|
615 | throwWarning: tr("{0} together with {1} and conflicting values", "{0.key}", "{1.key}");
|
---|
616 | suggestAlternative: "colour";
|
---|
617 | group: tr("deprecated tagging");
|
---|
618 | assertNoMatch: "way color=red colour=red";
|
---|
619 | assertMatch: "way color=red colour=green";
|
---|
620 | }
|
---|
621 | *[building:color][building:colour]!.samebuildingcolor {
|
---|
622 | throwWarning: tr("{0} together with {1} and conflicting values", "{0.key}", "{1.key}");
|
---|
623 | suggestAlternative: "building:colour";
|
---|
624 | group: tr("deprecated tagging");
|
---|
625 | assertNoMatch: "way building:color=red building:colour=red";
|
---|
626 | assertMatch: "way building:color=red building:colour=green";
|
---|
627 | }
|
---|
628 | *[roof:color][roof:colour]!.sameroofcolor {
|
---|
629 | throwWarning: tr("{0} together with {1} and conflicting values", "{0.key}", "{1.key}");
|
---|
630 | suggestAlternative: "roof:colour";
|
---|
631 | group: tr("deprecated tagging");
|
---|
632 | assertNoMatch: "way roof:color=red roof:colour=red";
|
---|
633 | assertMatch: "way roof:color=red roof:colour=green";
|
---|
634 | }
|
---|
635 | /* further more universal checks, no autofix */
|
---|
636 | *[/:color/][!building:color][!roof:color] {
|
---|
637 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
638 | suggestAlternative: ":colour";
|
---|
639 | group: tr("deprecated tagging");
|
---|
640 | assertNoMatch: "way color=red";
|
---|
641 | assertNoMatch: "way roof:color=grey";
|
---|
642 | assertMatch: "way cycleway:surface:color=grey";
|
---|
643 | }
|
---|
644 | *[/color:/] {
|
---|
645 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
646 | suggestAlternative: "colour:";
|
---|
647 | group: tr("deprecated tagging");
|
---|
648 | assertNoMatch: "way color=red";
|
---|
649 | assertMatch: "way color:back=grey";
|
---|
650 | }
|
---|
651 |
|
---|
652 | /* see #11234 */
|
---|
653 | *[/=|\+|\/|&|<|>|;|'|"|%|#|@|\\|,|\.|\{|\}|\?|\*|\^|\$/] {
|
---|
654 | throwWarning: tr("{0}", "{0.key}");
|
---|
655 | group: tr("key with uncommon character");
|
---|
656 | }
|
---|
657 |
|
---|
658 | /* see #11330 */
|
---|
659 | *[/^.$/],
|
---|
660 | node[/^..$/],
|
---|
661 | way[/^..$/],
|
---|
662 | relation[/^..$/][!to] {
|
---|
663 | throwWarning: tr("uncommon short key");
|
---|
664 | assertNoMatch: "relation to=Berlin";
|
---|
665 | assertMatch: "relation fo=bar";
|
---|
666 | assertMatch: "way to=bar";
|
---|
667 | assertMatch: "node fo=bar";
|
---|
668 | assertMatch: "node f=b";
|
---|
669 | }
|
---|
670 |
|
---|
671 | /* see #11439 */
|
---|
672 | *[sport=hockey] {
|
---|
673 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
674 | suggestAlternative: "sport=field_hockey";
|
---|
675 | suggestAlternative: "sport=ice_hockey";
|
---|
676 | group: tr("deprecated tagging");
|
---|
677 | }
|
---|
678 |
|
---|
679 | /* see #11471 */
|
---|
680 | *[sport=billard],
|
---|
681 | *[sport=billards],
|
---|
682 | *[sport=billiard] {
|
---|
683 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
684 | suggestAlternative: "sport=billiards";
|
---|
685 | group: tr("deprecated tagging");
|
---|
686 | fixAdd: "sport=billiards";
|
---|
687 | }
|
---|
688 |
|
---|
689 | /* see #11499 */
|
---|
690 | *[payment:credit_cards=yes] {
|
---|
691 | throwWarning: tr("{0} is inaccurate", "{0.tag}");
|
---|
692 | suggestAlternative: "payment:mastercard=yes";
|
---|
693 | suggestAlternative: "payment:visa=yes";
|
---|
694 | suggestAlternative: "...";
|
---|
695 | }
|
---|
696 | *[payment:debit_cards=yes] {
|
---|
697 | throwWarning: tr("{0} is inaccurate", "{0.tag}");
|
---|
698 | suggestAlternative: "payment:maestro=yes";
|
---|
699 | suggestAlternative: "payment:girocard=yes";
|
---|
700 | suggestAlternative: "...";
|
---|
701 | }
|
---|
702 | *[payment:electronic_purses=yes] {
|
---|
703 | throwWarning: tr("{0} is inaccurate", "{0.tag}");
|
---|
704 | suggestAlternative: "payment:ep_geldkarte=yes";
|
---|
705 | suggestAlternative: "payment:ep_quick=yes";
|
---|
706 | suggestAlternative: "...";
|
---|
707 | }
|
---|
708 | *[payment:cryptocurrencies=yes] {
|
---|
709 | throwWarning: tr("{0} is inaccurate", "{0.tag}");
|
---|
710 | suggestAlternative: "payment:bitcoin=yes";
|
---|
711 | suggestAlternative: "payment:litecoin=yes";
|
---|
712 | suggestAlternative: "...";
|
---|
713 | }
|
---|
714 |
|
---|
715 | /* defunct payment cards */
|
---|
716 | *[payment:ep_quick],
|
---|
717 | *[payment:ep_cash],
|
---|
718 | *[payment:ep_proton],
|
---|
719 | *[payment:ep_chipknip] {
|
---|
720 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
721 | group: tr("deprecated tagging");
|
---|
722 | fixRemove: "{0.key}";
|
---|
723 | }
|
---|
724 |
|
---|
725 | /* see #8717 */
|
---|
726 | *[kp][highway=milestone],
|
---|
727 | *[kp][railway=milestone],
|
---|
728 | *[kp][waterway=milestone] {
|
---|
729 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
730 | suggestAlternative: "distance";
|
---|
731 | group: tr("deprecated tagging");
|
---|
732 | fixChangeKey: "kp => distance";
|
---|
733 | }
|
---|
734 | *[pk][highway=milestone],
|
---|
735 | *[pk][railway=milestone],
|
---|
736 | *[pk][waterway=milestone] {
|
---|
737 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
738 | suggestAlternative: "distance";
|
---|
739 | group: tr("deprecated tagging");
|
---|
740 | fixChangeKey: "pk => distance";
|
---|
741 | }
|
---|
742 |
|
---|
743 | *[postcode] {
|
---|
744 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
745 | suggestAlternative: "addr:postcode";
|
---|
746 | group: tr("deprecated tagging");
|
---|
747 | suggestAlternative: "postal_code";
|
---|
748 | }
|
---|
749 |
|
---|
750 | *[water=intermittent] {
|
---|
751 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
752 | suggestAlternative: "intermittent=yes";
|
---|
753 | group: tr("deprecated tagging");
|
---|
754 | fixRemove: "water";
|
---|
755 | fixAdd: "intermittent=yes";
|
---|
756 | }
|
---|
757 |
|
---|
758 | /* #10907, #14141 */
|
---|
759 | /* 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 */
|
---|
760 | way[type][type!=waterway][man_made=pipeline],
|
---|
761 | node[type][pipeline=marker] {
|
---|
762 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
763 | suggestAlternative: "substance";
|
---|
764 | group: tr("deprecated tagging");
|
---|
765 | fixChangeKey: "type => substance";
|
---|
766 | }
|
---|
767 |
|
---|
768 | *[landuse=farm] {
|
---|
769 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
770 | suggestAlternative: "landuse=farmland";
|
---|
771 | suggestAlternative: "landuse=farmyard";
|
---|
772 | group: tr("deprecated tagging");
|
---|
773 | }
|
---|
774 |
|
---|
775 | /* #12135 comment:11 */
|
---|
776 | *[seamark=buoy]["seamark:type"=~/^(buoy_cardinal|buoy_installation|buoy_isolated_danger|buoy_lateral|buoy_safe_water|buoy_special_purpose|mooring)$/] {
|
---|
777 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
778 | suggestAlternative: "{1.tag}";
|
---|
779 | group: tr("deprecated tagging");
|
---|
780 | fixRemove: "seamark";
|
---|
781 | }
|
---|
782 | *[seamark=buoy]["seamark:type"!~/^(buoy_cardinal|buoy_installation|buoy_isolated_danger|buoy_lateral|buoy_safe_water|buoy_special_purpose|mooring)$/] {
|
---|
783 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
784 | suggestAlternative: "{1.tag}";
|
---|
785 | group: tr("deprecated tagging");
|
---|
786 | }
|
---|
787 | /* #12135 - Tag removed rom rendering https://github.com/gravitystorm/openstreetmap-carto/pull/1830 */
|
---|
788 | *[landuse=conservation] {
|
---|
789 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
790 | suggestAlternative: "boundary=protected_area";
|
---|
791 | group: tr("deprecated tagging");
|
---|
792 | fixAdd: "boundary=protected_area";
|
---|
793 | fixRemove: "landuse";
|
---|
794 | }
|
---|
795 |
|
---|
796 | /* #12205 */
|
---|
797 | *[amenity=kiosk] {
|
---|
798 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
799 | suggestAlternative: "shop=kiosk";
|
---|
800 | group: tr("deprecated tagging");
|
---|
801 | fixChangeKey: "amenity => shop";
|
---|
802 | }
|
---|
803 | *[amenity=shop] {
|
---|
804 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
805 | suggestAlternative: "shop=*";
|
---|
806 | group: tr("deprecated tagging");
|
---|
807 | }
|
---|
808 | *[shop=fishmonger] {
|
---|
809 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
810 | suggestAlternative: "shop=seafood";
|
---|
811 | group: tr("deprecated tagging");
|
---|
812 | fixAdd: "shop=seafood";
|
---|
813 | }
|
---|
814 | *[shop=fish] {
|
---|
815 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
816 | suggestAlternative: "shop=seafood";
|
---|
817 | suggestAlternative: "shop=pet";
|
---|
818 | suggestAlternative: "shop=fishing";
|
---|
819 | group: tr("deprecated tagging");
|
---|
820 | }
|
---|
821 | *[shop=betting] {
|
---|
822 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
823 | suggestAlternative: "shop=bookmaker";
|
---|
824 | suggestAlternative: "shop=lottery";
|
---|
825 | suggestAlternative: "amenity=casino";
|
---|
826 | suggestAlternative: "leisure=amusement_arcade";
|
---|
827 | suggestAlternative: "leisure=adult_gaming_centre";
|
---|
828 | suggestAlternative: "amenity=gambling";
|
---|
829 | group: tr("deprecated tagging");
|
---|
830 | }
|
---|
831 | *[shop=perfume] {
|
---|
832 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
833 | suggestAlternative: "shop=perfumery";
|
---|
834 | group: tr("deprecated tagging");
|
---|
835 | fixAdd: "shop=perfumery";
|
---|
836 | }
|
---|
837 | *[amenity=exercise_point] {
|
---|
838 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
839 | suggestAlternative: "leisure=fitness_station";
|
---|
840 | group: tr("deprecated tagging");
|
---|
841 | fixAdd: "leisure=fitness_station";
|
---|
842 | fixRemove: "amenity";
|
---|
843 | }
|
---|
844 | *[shop=auto_parts] {
|
---|
845 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
846 | suggestAlternative: "shop=car_parts";
|
---|
847 | group: tr("deprecated tagging");
|
---|
848 | fixAdd: "shop=car_parts";
|
---|
849 | }
|
---|
850 | *[amenity=car_repair] {
|
---|
851 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
852 | suggestAlternative: "shop=car_repair";
|
---|
853 | group: tr("deprecated tagging");
|
---|
854 | fixChangeKey: "amenity => shop";
|
---|
855 | }
|
---|
856 |
|
---|
857 | /* #12311 */
|
---|
858 | *[amenity=studio][type=audio],
|
---|
859 | *[amenity=studio][type=radio],
|
---|
860 | *[amenity=studio][type=television],
|
---|
861 | *[amenity=studio][type=video] {
|
---|
862 | throwWarning: tr("{0} is deprecated for {1}", "{1.key}", "{0.tag}");
|
---|
863 | suggestAlternative: "studio";
|
---|
864 | group: tr("deprecated tagging");
|
---|
865 | fixChangeKey: "type => studio";
|
---|
866 | }
|
---|
867 |
|
---|
868 | /* #11507, #12297, #15409 */
|
---|
869 | *[power=cable_distribution_cabinet] {
|
---|
870 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
871 | suggestAlternative: "man_made=street_cabinet + street_cabinet=*";
|
---|
872 | group: tr("deprecated tagging");
|
---|
873 | fixAdd: "man_made=street_cabinet";
|
---|
874 | fixRemove: "power";
|
---|
875 | }
|
---|
876 |
|
---|
877 | /* #16430 */
|
---|
878 | *[power][location=kiosk] {
|
---|
879 | throwWarning: tr("{0} is deprecated", "{1.tag}");
|
---|
880 | group: tr("deprecated tagging");
|
---|
881 | fixAdd: "man_made=street_cabinet";
|
---|
882 | fixAdd: "street_cabinet=power";
|
---|
883 | fixRemove: "location";
|
---|
884 | }
|
---|
885 |
|
---|
886 | /* #12276 */
|
---|
887 | *[man_made=well] {
|
---|
888 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
889 | suggestAlternative: "man_made=water_well";
|
---|
890 | suggestAlternative: "man_made=petroleum_well";
|
---|
891 | group: tr("deprecated tagging");
|
---|
892 | }
|
---|
893 | *[amenity=dog_bin],
|
---|
894 | *[amenity=dog_waste_bin] {
|
---|
895 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
896 | suggestAlternative: "amenity=waste_basket + waste=dog_excrement + vending=excrement_bags";
|
---|
897 | group: tr("deprecated tagging");
|
---|
898 | fixAdd: "amenity=waste_basket";
|
---|
899 | fixAdd: "waste=dog_excrement";
|
---|
900 | fixAdd: "vending=excrement_bags";
|
---|
901 | }
|
---|
902 | *[amenity=artwork] {
|
---|
903 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
904 | suggestAlternative: "tourism=artwork";
|
---|
905 | group: tr("deprecated tagging");
|
---|
906 | fixAdd: "tourism=artwork";
|
---|
907 | fixRemove: "amenity";
|
---|
908 | }
|
---|
909 | *[amenity=community_center] {
|
---|
910 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
911 | suggestAlternative: "amenity=community_centre";
|
---|
912 | group: tr("deprecated tagging");
|
---|
913 | fixAdd: "amenity=community_centre";
|
---|
914 | }
|
---|
915 | *[man_made=cut_line] {
|
---|
916 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
917 | suggestAlternative: "man_made=cutline";
|
---|
918 | group: tr("deprecated tagging");
|
---|
919 | fixAdd: "man_made=cutline";
|
---|
920 | }
|
---|
921 | *[amenity=park] {
|
---|
922 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
923 | suggestAlternative: "leisure=park";
|
---|
924 | group: tr("deprecated tagging");
|
---|
925 | fixAdd: "leisure=park";
|
---|
926 | fixRemove: "amenity";
|
---|
927 | }
|
---|
928 | *[amenity=hotel] {
|
---|
929 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
930 | suggestAlternative: "tourism=hotel";
|
---|
931 | group: tr("deprecated tagging");
|
---|
932 | fixAdd: "tourism=hotel";
|
---|
933 | fixRemove: "amenity";
|
---|
934 | }
|
---|
935 | *[shop=window],
|
---|
936 | *[shop=windows] {
|
---|
937 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
938 | suggestAlternative: "craft=window_construction";
|
---|
939 | group: tr("deprecated tagging");
|
---|
940 | fixAdd: "craft=window_construction";
|
---|
941 | fixRemove: "shop";
|
---|
942 | }
|
---|
943 | *[amenity=education] {
|
---|
944 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
945 | suggestAlternative: "amenity=college";
|
---|
946 | suggestAlternative: "amenity=school";
|
---|
947 | suggestAlternative: "amenity=university";
|
---|
948 | group: tr("deprecated tagging");
|
---|
949 | }
|
---|
950 | *[shop=gallery] {
|
---|
951 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
952 | suggestAlternative: "shop=art";
|
---|
953 | group: tr("deprecated tagging");
|
---|
954 | fixAdd: "shop=art";
|
---|
955 | }
|
---|
956 | *[shop=gambling],
|
---|
957 | *[leisure=gambling] {
|
---|
958 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
959 | suggestAlternative: "shop=bookmaker";
|
---|
960 | suggestAlternative: "shop=lottery";
|
---|
961 | suggestAlternative: "amenity=casino";
|
---|
962 | suggestAlternative: "leisure=amusement_arcade";
|
---|
963 | suggestAlternative: "amenity=gambling";
|
---|
964 | group: tr("deprecated tagging");
|
---|
965 | }
|
---|
966 | *[office=real_estate_agent] {
|
---|
967 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
968 | suggestAlternative: "office=estate_agent ";
|
---|
969 | group: tr("deprecated tagging");
|
---|
970 | fixAdd: "office=estate_agent ";
|
---|
971 | }
|
---|
972 | *[shop=glass] {
|
---|
973 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
974 | suggestAlternative: "shop=glaziery";
|
---|
975 | suggestAlternative: "craft=glaziery";
|
---|
976 | group: tr("deprecated tagging");
|
---|
977 | }
|
---|
978 | *[amenity=proposed],
|
---|
979 | *[amenity=proposed],
|
---|
980 | *[amenity=disused],
|
---|
981 | *[shop=disused],
|
---|
982 | *[historic=abandoned] {
|
---|
983 | throwWarning: tr("{0} is deprecated. Use the {1}: key prefix instead.", "{0.tag}", "{0.value}");
|
---|
984 | group: tr("deprecated tagging");
|
---|
985 | }
|
---|
986 |
|
---|
987 | /* #12431 */
|
---|
988 | *[amenity=swimming_pool] {
|
---|
989 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
990 | suggestAlternative: "leisure=swimming_pool";
|
---|
991 | group: tr("deprecated tagging");
|
---|
992 | fixChangeKey: "amenity => leisure";
|
---|
993 | }
|
---|
994 |
|
---|
995 | /* #12494 */
|
---|
996 | *[/^[^t][^i][^g].+_[0-9]$/][!/^note_[0-9]$/][!/^description_[0-9]$/] {
|
---|
997 | throwOther: tr("{0}", "{0.key}");
|
---|
998 | group: tr("questionable key (ending with a number)");
|
---|
999 | assertMatch: "way name_1=foo";
|
---|
1000 | assertNoMatch: "way note_2=foo";
|
---|
1001 | assertNoMatch: "way description_3=foo";
|
---|
1002 | assertNoMatch: "way tiger:name_base_1=bar"; /*should not warn for key tiger:name_base_1 */
|
---|
1003 | }
|
---|
1004 |
|
---|
1005 | /* #12500 */
|
---|
1006 | *[sport=skating] {
|
---|
1007 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1008 | suggestAlternative: "sport=ice_skating";
|
---|
1009 | suggestAlternative: "sport=roller_skating";
|
---|
1010 | group: tr("deprecated tagging");
|
---|
1011 | }
|
---|
1012 |
|
---|
1013 | way[barrier=wall][type=noise_barrier][!wall],
|
---|
1014 | way[barrier=wall][type=noise_barrier][wall=noise_barrier] {
|
---|
1015 | throwWarning: tr("{0} is deprecated", "{1.tag}");
|
---|
1016 | suggestAlternative: "wall=noise_barrier";
|
---|
1017 | group: tr("deprecated tagging");
|
---|
1018 | fixChangeKey: "type => wall";
|
---|
1019 | }
|
---|
1020 | way[barrier=wall][type=noise_barrier][wall][wall!=noise_barrier] {
|
---|
1021 | throwWarning: tr("{0} is deprecated", "{1.tag}");
|
---|
1022 | suggestAlternative: "wall=noise_barrier";
|
---|
1023 | group: tr("deprecated tagging");
|
---|
1024 | }
|
---|
1025 |
|
---|
1026 | /* #8978, 12588 */
|
---|
1027 | *[amenity=public_building] {
|
---|
1028 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1029 | suggestAlternative: "amenity=townhall";
|
---|
1030 | suggestAlternative: "amenity=community_centre";
|
---|
1031 | suggestAlternative: "amenity=hospital";
|
---|
1032 | suggestAlternative: "leisure=sports_centre";
|
---|
1033 | suggestAlternative: "office=government";
|
---|
1034 | suggestAlternative: "building=hospital";
|
---|
1035 | suggestAlternative: "building=public";
|
---|
1036 | suggestAlternative: "...";
|
---|
1037 | group: tr("deprecated tagging");
|
---|
1038 | }
|
---|
1039 |
|
---|
1040 | /* #12708 */
|
---|
1041 | *[vending=news_papers] {
|
---|
1042 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1043 | suggestAlternative: "vending=newspapers";
|
---|
1044 | group: tr("deprecated tagging");
|
---|
1045 | fixAdd: "vending=newspapers";
|
---|
1046 | }
|
---|
1047 |
|
---|
1048 | /* #12771 */
|
---|
1049 | *[service=drive_through] {
|
---|
1050 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1051 | suggestAlternative: "service=drive-through";
|
---|
1052 | group: tr("deprecated tagging");
|
---|
1053 | fixAdd: "service=drive-through";
|
---|
1054 | }
|
---|
1055 |
|
---|
1056 | /* #12771 */
|
---|
1057 | way[highway=service][service][service !~ /^(alley|drive-through|drive_through|driveway|emergency_access|parking_aisle|rest_area|yes)$/], /* drive_through and yes have special warnings */
|
---|
1058 | way[railway=rail][service][service !~ /^(crossover|siding|spur|yard)$/],
|
---|
1059 | way[waterway=canal][service][service !~ /^(irrigation|transportation|water_power)$/] {
|
---|
1060 | throwWarning: tr("The key {0} has an uncommon value.", "{1.key}");
|
---|
1061 | }
|
---|
1062 |
|
---|
1063 | /* #13008 */
|
---|
1064 | *[name:botanical] {
|
---|
1065 | throwWarning: tr("{0} is deprecated", "{0.key}");
|
---|
1066 | suggestAlternative: "species";
|
---|
1067 | group: tr("deprecated tagging");
|
---|
1068 | }
|
---|
1069 |
|
---|
1070 | /* #11344, #13101, #15480 */
|
---|
1071 | node[pole=air_to_ground],
|
---|
1072 | node[pole=transition] {
|
---|
1073 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1074 | suggestAlternative: "location:transition=yes";
|
---|
1075 | group: tr("deprecated tagging");
|
---|
1076 | fixAdd: "location:transition=yes";
|
---|
1077 | fixRemove: "pole";
|
---|
1078 | }
|
---|
1079 | node[tower=air_to_ground],
|
---|
1080 | node[tower=transition] {
|
---|
1081 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1082 | suggestAlternative: "location:transition=yes";
|
---|
1083 | group: tr("deprecated tagging");
|
---|
1084 | fixAdd: "location:transition=yes";
|
---|
1085 | fixRemove: "tower";
|
---|
1086 | }
|
---|
1087 |
|
---|
1088 | /* #13138 */
|
---|
1089 | area[landuse=pond] {
|
---|
1090 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1091 | suggestAlternative: "natural=water + water=pond";
|
---|
1092 | group: tr("deprecated tagging");
|
---|
1093 | fixAdd: "natural=water";
|
---|
1094 | fixAdd: "water=pond";
|
---|
1095 | fixRemove: "landuse";
|
---|
1096 | }
|
---|
1097 |
|
---|
1098 | *[shop=souvenir],
|
---|
1099 | *[shop=souvenirs],
|
---|
1100 | *[shop=souveniers] {
|
---|
1101 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1102 | suggestAlternative: "shop=gift";
|
---|
1103 | group: tr("deprecated tagging");
|
---|
1104 | fixAdd: "shop=gift";
|
---|
1105 | }
|
---|
1106 |
|
---|
1107 | *[vending=animal_food] {
|
---|
1108 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1109 | suggestAlternative: "vending=animal_feed";
|
---|
1110 | group: tr("deprecated tagging");
|
---|
1111 | fixAdd: "vending=animal_feed";
|
---|
1112 | }
|
---|
1113 |
|
---|
1114 | /* #14376 */
|
---|
1115 | node[vending=photos][amenity=vending_machine],
|
---|
1116 | node[vending=photo][amenity=vending_machine] {
|
---|
1117 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1118 | suggestAlternative: "amenity=photo_booth";
|
---|
1119 | group: tr("deprecated tagging");
|
---|
1120 | fixRemove: "vending";
|
---|
1121 | fixAdd: "amenity=photo_booth";
|
---|
1122 |
|
---|
1123 | }
|
---|
1124 | node[vending=photos][amenity!=vending_machine] {
|
---|
1125 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1126 | suggestAlternative: "amenity=photo_booth";
|
---|
1127 | group: tr("deprecated tagging");
|
---|
1128 | }
|
---|
1129 |
|
---|
1130 | /* #13653 */
|
---|
1131 | node[highway=emergency_access_point][phone][!emergency_telephone_code],
|
---|
1132 | way[highway=emergency_access_point][phone][!emergency_telephone_code] {
|
---|
1133 | throwWarning: tr("{0} is deprecated for {1}", "{1.key}", "{0.tag}");
|
---|
1134 | suggestAlternative: "emergency_telephone_code";
|
---|
1135 | group: tr("deprecated tagging");
|
---|
1136 | fixChangeKey: "phone => emergency_telephone_code";
|
---|
1137 | assertMatch: "node highway=emergency_access_point phone=123";
|
---|
1138 | assertNoMatch: "node highway=emergency_access_point emergency_telephone_code=456";
|
---|
1139 | assertNoMatch: "node highway=emergency_access_point phone=123 emergency_telephone_code=456";
|
---|
1140 | assertNoMatch: "node phone=123";
|
---|
1141 | }
|
---|
1142 | node[highway=emergency_access_point][phone=*emergency_telephone_code],
|
---|
1143 | way[highway=emergency_access_point][phone=*emergency_telephone_code] {
|
---|
1144 | throwWarning: tr("{0} is deprecated for {1}", "{1.key}", "{0.tag}");
|
---|
1145 | suggestAlternative: "emergency_telephone_code";
|
---|
1146 | group: tr("deprecated tagging");
|
---|
1147 | fixRemove: "phone";
|
---|
1148 | assertNoMatch: "node highway=emergency_access_point phone=123";
|
---|
1149 | assertNoMatch: "node highway=emergency_access_point emergency_telephone_code=123";
|
---|
1150 | assertMatch: "node highway=emergency_access_point phone=123 emergency_telephone_code=123";
|
---|
1151 | }
|
---|
1152 | node[highway=emergency_access_point][phone][emergency_telephone_code][phone!=*emergency_telephone_code],
|
---|
1153 | way[highway=emergency_access_point][phone][emergency_telephone_code][phone!=*emergency_telephone_code] {
|
---|
1154 | throwWarning: tr("{0} is deprecated for {1}", "{1.key}", "{0.tag}");
|
---|
1155 | suggestAlternative: "emergency_telephone_code";
|
---|
1156 | group: tr("deprecated tagging");
|
---|
1157 | assertNoMatch: "node highway=emergency_access_point phone=123";
|
---|
1158 | assertNoMatch: "node highway=emergency_access_point emergency_telephone_code=123";
|
---|
1159 | assertNoMatch: "node highway=emergency_access_point phone=123 emergency_telephone_code=123";
|
---|
1160 | }
|
---|
1161 |
|
---|
1162 | /* #13879 */
|
---|
1163 | way[tracktype=1] {
|
---|
1164 | throwError: tr("{0}", "{0.tag}");
|
---|
1165 | suggestAlternative: "tracktype=grade1";
|
---|
1166 | group: tr("misspelled value");
|
---|
1167 | fixAdd: "tracktype=grade1";
|
---|
1168 | }
|
---|
1169 | way[tracktype=2] {
|
---|
1170 | throwError: tr("{0}", "{0.tag}");
|
---|
1171 | suggestAlternative: "tracktype=grade2";
|
---|
1172 | group: tr("misspelled value");
|
---|
1173 | fixAdd: "tracktype=grade2";
|
---|
1174 | }
|
---|
1175 | way[tracktype=3] {
|
---|
1176 | throwError: tr("{0}", "{0.tag}");
|
---|
1177 | suggestAlternative: "tracktype=grade3";
|
---|
1178 | group: tr("misspelled value");
|
---|
1179 | fixAdd: "tracktype=grade3";
|
---|
1180 | }
|
---|
1181 | way[tracktype=4] {
|
---|
1182 | throwError: tr("{0}", "{0.tag}");
|
---|
1183 | suggestAlternative: "tracktype=grade4";
|
---|
1184 | group: tr("misspelled value");
|
---|
1185 | fixAdd: "tracktype=grade4";
|
---|
1186 | }
|
---|
1187 | way[tracktype=5] {
|
---|
1188 | throwError: tr("{0}", "{0.tag}");
|
---|
1189 | suggestAlternative: "tracktype=grade5";
|
---|
1190 | group: tr("misspelled value");
|
---|
1191 | fixAdd: "tracktype=grade5";
|
---|
1192 | }
|
---|
1193 | way[tracktype][tracktype!~/^(1|2|3|4|5|grade1|grade2|grade3|grade4|grade5)$/] {
|
---|
1194 | throwError: tr("wrong value: {0}", "{0.tag}");
|
---|
1195 | suggestAlternative: "tracktype=grade1";
|
---|
1196 | suggestAlternative: "tracktype=grade2";
|
---|
1197 | suggestAlternative: "tracktype=grade3";
|
---|
1198 | suggestAlternative: "tracktype=grade4";
|
---|
1199 | suggestAlternative: "tracktype=grade5";
|
---|
1200 | }
|
---|
1201 |
|
---|
1202 | area[area][area!=yes][area!=no] {
|
---|
1203 | throwError: tr("wrong value: {0}", "{0.tag}");
|
---|
1204 | suggestAlternative: "area=yes";
|
---|
1205 | suggestAlternative: "area=no";
|
---|
1206 | }
|
---|
1207 |
|
---|
1208 | /* #13953 */
|
---|
1209 | *[amenity=hunting_stand][lock=yes],
|
---|
1210 | *[amenity=hunting_stand][lock=no] {
|
---|
1211 | throwWarning: tr("{0} is deprecated for {1}", "{1.key}", "{0.tag}");
|
---|
1212 | suggestAlternative: "lockable";
|
---|
1213 | group: tr("deprecated tagging");
|
---|
1214 | fixChangeKey: "lock => lockable";
|
---|
1215 | }
|
---|
1216 |
|
---|
1217 | *[amenity=advertising][!advertising] {
|
---|
1218 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1219 | suggestAlternative: "advertising=*";
|
---|
1220 | group: tr("deprecated tagging");
|
---|
1221 | }
|
---|
1222 | *[amenity=advertising][advertising] {
|
---|
1223 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1224 | suggestAlternative: "advertising=*";
|
---|
1225 | group: tr("deprecated tagging");
|
---|
1226 | fixRemove: "amenity";
|
---|
1227 | }
|
---|
1228 |
|
---|
1229 | way[direction=up][incline=up],
|
---|
1230 | way[direction=down][incline=down],
|
---|
1231 | way[direction=up][!incline],
|
---|
1232 | way[direction=down][!incline] {
|
---|
1233 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1234 | suggestAlternative: "incline";
|
---|
1235 | group: tr("deprecated tagging");
|
---|
1236 | fixChangeKey: "direction => incline";
|
---|
1237 | }
|
---|
1238 | way[direction=up][incline][incline!=up],
|
---|
1239 | way[direction=down][incline][incline!=down] {
|
---|
1240 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1241 | suggestAlternative: "incline";
|
---|
1242 | group: tr("deprecated tagging");
|
---|
1243 | }
|
---|
1244 |
|
---|
1245 | way[building=y],
|
---|
1246 | way[building=1] {
|
---|
1247 | throwError: tr("{0}", "{0.tag}");
|
---|
1248 | suggestAlternative: "building=yes";
|
---|
1249 | group: tr("misspelled value");
|
---|
1250 | fixAdd: "building=yes";
|
---|
1251 | }
|
---|
1252 |
|
---|
1253 | /* #15675 */
|
---|
1254 | node[power=transformer][location=pole][transformer] {
|
---|
1255 | throwWarning: tr("{0} together with {1}", "{0.tag}", "{1.tag}");
|
---|
1256 | group: tr("deprecated tagging");
|
---|
1257 | fixChangeKey: "location => power";
|
---|
1258 | }
|
---|
1259 | node[power=transformer][location=pole][!transformer] {
|
---|
1260 | throwWarning: tr("{0} together with {1}", "{0.tag}", "{1.tag}");
|
---|
1261 | group: tr("deprecated tagging");
|
---|
1262 | fixChangeKey: "location => power";
|
---|
1263 | fixAdd: "transformer=yes";
|
---|
1264 | }
|
---|
1265 |
|
---|
1266 | node[tourism=picnic_table],
|
---|
1267 | node[amenity=picnic_table],
|
---|
1268 | node[leisure=picnic],
|
---|
1269 | node[leisure=picnic_site] {
|
---|
1270 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1271 | suggestAlternative: "tourism=picnic_site";
|
---|
1272 | suggestAlternative: "leisure=picnic_table";
|
---|
1273 | group: tr("deprecated tagging");
|
---|
1274 | }
|
---|
1275 |
|
---|
1276 | /* #15804 */
|
---|
1277 | relation[water=salt],
|
---|
1278 | way[water=salt],
|
---|
1279 | way[water=salt_pool],
|
---|
1280 | way[water=salt_panne],
|
---|
1281 | way[water=salt_pond] {
|
---|
1282 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1283 | suggestAlternative: "salt=yes";
|
---|
1284 | suggestAlternative: "landuse=salt_pond";
|
---|
1285 | group: tr("deprecated tagging");
|
---|
1286 | }
|
---|
1287 |
|
---|
1288 | /* #15805 */
|
---|
1289 | way[water=tidal] {
|
---|
1290 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1291 | suggestAlternative: "tidal=yes";
|
---|
1292 | fixAdd: "tidal=yes";
|
---|
1293 | fixRemove: "water";
|
---|
1294 | group: tr("deprecated tagging");
|
---|
1295 | }
|
---|
1296 |
|
---|
1297 | *[amenity=toilet] {
|
---|
1298 | throwError: tr("{0}", "{0.tag}");
|
---|
1299 | suggestAlternative: "amenity=toilets";
|
---|
1300 | group: tr("misspelled value");
|
---|
1301 | fixAdd: "amenity=toilets";
|
---|
1302 | }
|
---|
1303 |
|
---|
1304 | way[power=busbar] {
|
---|
1305 | throwWarning: tr("{0} is deprecated", "{0.tag}");
|
---|
1306 | suggestAlternative: "power=line + line=busbar";
|
---|
1307 | group: tr("deprecated tagging");
|
---|
1308 | fixAdd: "power=line";
|
---|
1309 | fixAdd: "line=busbar";
|
---|
1310 | }
|
---|