source: josm/trunk/data/validator/deprecated.mapcss@ 9030

Last change on this file since 9030 was 8730, checked in by Klumbumbus, 9 years ago

fix #11491 - add/enhance validator rules for postcode/postal_code/addr:postcode

  • Property svn:eol-style set to native
File size: 15.4 KB
Line 
1*[barrier=wire_fence] {
2 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
3 fixAdd: "barrier=fence";
4 fixAdd: "fence_type=chain_link";
5 assertMatch: "way barrier=wire_fence";
6 assertNoMatch: "way barrier=fence";
7}
8
9*[barrier=wood_fence] {
10 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
11 fixAdd: "barrier=fence";
12 fixAdd: "fence_type=wood";
13}
14
15*[highway=ford] {
16 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
17 fixRemove: "highway";
18 fixAdd: "ford=yes";
19}
20
21*[class] {
22 /* from http://wiki.openstreetmap.org/wiki/Deprecated_features */
23 throwWarning: tr("{0} is deprecated", "{0.key}");
24 suggestAlternative: "highway";
25}
26
27*[highway=stile] {
28 /* from http://wiki.openstreetmap.org/wiki/Deprecated_features */
29 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
30 fixRemove: "highway";
31 fixAdd: "barrier=stile";
32}
33
34*[highway=incline] {
35 /* from http://wiki.openstreetmap.org/wiki/Deprecated_features */
36 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
37 suggestAlternative: "incline";
38}
39
40*[highway=incline_steep] {
41 /* from http://wiki.openstreetmap.org/wiki/Deprecated_features */
42 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
43 suggestAlternative: "incline";
44}
45
46*[highway=unsurfaced] {
47 /* from http://wiki.openstreetmap.org/wiki/Deprecated_features */
48 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
49 fixAdd: "highway=road";
50 fixAdd: "surface=unpaved";
51}
52
53*[landuse=wood] {
54 /* from http://wiki.openstreetmap.org/wiki/Deprecated_features */
55 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
56 suggestAlternative: "landuse=forest";
57 suggestAlternative: "natural=wood";
58}
59
60*[natural=marsh] {
61 /* from http://wiki.openstreetmap.org/wiki/Deprecated_features */
62 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
63 fixAdd: "natural=wetland";
64 fixAdd: "wetland=marsh";
65}
66
67*[highway=byway] {
68 /* from http://wiki.openstreetmap.org/wiki/Deprecated_features */
69 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
70}
71
72*[power_source] {
73 /* from http://wiki.openstreetmap.org/wiki/Deprecated_features */
74 throwWarning: tr("{0} is deprecated", "{0.key}");
75 suggestAlternative: "generator:source";
76}
77
78*[power_rating] {
79 /* from http://wiki.openstreetmap.org/wiki/Deprecated_features */
80 throwWarning: tr("{0} is deprecated", "{0.key}");
81 suggestAlternative: "generator:output";
82}
83
84*[shop=antique] {
85 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
86 fixAdd: "shop=antiques";
87}
88
89*[shop=bags] {
90 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
91 fixAdd: "shop=bag";
92}
93
94*[shop=organic] {
95 /* from http://wiki.openstreetmap.org/wiki/Tag:shop=organic */
96 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
97 fixAdd: "shop=supermarket";
98 fixAdd: "organic=only";
99}
100
101*[shop=pets] {
102 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
103 fixAdd: "shop=pet";
104}
105
106*[shop=pharmacy] {
107 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
108 fixChangeKey: "shop => amenity";
109}
110
111*[bicycle_parking=sheffield] {
112 /* from http://wiki.openstreetmap.org/wiki/Key:bicycle_parking */
113 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
114 fixAdd: "bicycle_parking=stands";
115}
116
117*[amenity=emergency_phone] {
118 /* http://wiki.openstreetmap.org/wiki/Tag:emergency=phone */
119 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
120 fixRemove: "amenity";
121 fixAdd: "emergency=phone";
122}
123
124*[sport=gaelic_football] {
125 /* fix #8132 - http://wiki.openstreetmap.org/wiki/Tag:sport=gaelic_football */
126 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
127 fixAdd: "sport=gaelic_games";
128}
129
130*[power=station] {
131 /* see #8847 / #8961 - http://wiki.openstreetmap.org/wiki/Tag:power=station */
132 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
133 suggestAlternative: "power=plant";
134 suggestAlternative: "power=substation";
135}
136
137*[power=sub_station] {
138 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
139 fixAdd: "power=substation";
140}
141
142*[generator:method=dam] {
143 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
144 fixAdd: "generator:method=water-storage";
145}
146
147*[generator:method=pumped-storage] {
148 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
149 fixAdd: "generator:method=water-pumped-storage";
150}
151
152*[generator:method=pumping] {
153 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
154 fixAdd: "generator:method=water-pumped-storage";
155}
156
157*[fence_type=chain] {
158 /* see #8962 - http://wiki.openstreetmap.org/wiki/Key:fence_type */
159 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
160 suggestAlternative: "barrier=chain";
161 suggestAlternative: "fence_type=chain_link";
162}
163
164*[building=entrance] {
165 /* see #9000 - http://wiki.openstreetmap.org/wiki/Key:entrance */
166 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
167 suggestAlternative: "entrance";
168}
169
170*[board_type=board] {
171 /* see #9213 - Useless tag proposed in internal preset for years */
172 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
173 fixRemove: "board_type";
174}
175
176*[man_made=measurement_station] {
177 /* see #8434 - http://wiki.openstreetmap.org/wiki/Proposed_features/monitoring_station */
178 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
179 fixAdd: "man_made=monitoring_station";
180}
181
182*[measurement=water_level] {
183 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
184 fixRemove: "measurement";
185 fixAdd: "monitoring:water_level=yes";
186}
187
188*[measurement=weather] {
189 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
190 fixRemove: "measurement";
191 fixAdd: "monitoring:weather=yes";
192}
193
194*[measurement=seismic] {
195 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
196 fixRemove: "measurement";
197 fixAdd: "monitoring:seismic_activity=yes";
198}
199
200*[monitoring:river_level] {
201 throwWarning: tr("{0} is deprecated", "{0.key}");
202 fixChangeKey: "monitoring:river_level => monitoring:water_level";
203}
204
205*[stay] {
206 throwWarning: tr("{0} is deprecated", "{0.key}");
207 fixChangeKey: "stay => maxstay";
208}
209
210*[emergency=aed] {
211 /* see #9554 - http://wiki.openstreetmap.org/wiki/Proposed_features/automated_external_defibrillator */
212 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
213 fixAdd: "emergency=defibrillator";
214}
215
216/* from http://wiki.openstreetmap.org/wiki/Conditional_restrictions#Deprecated_tags */
217*[day_on][!restriction],
218*[day_off][!restriction],
219*[date_on][!restriction],
220*[date_off][!restriction],
221*[hour_on][!restriction],
222*[hour_off][!restriction] {
223 throwWarning: tr("{0} is deprecated", "{0.key}");
224 suggestAlternative: "*:conditional";
225 assertMatch: "node day_on=0-12";
226}
227
228/* see #10000, http://wiki.openstreetmap.org/wiki/Tag%3Aaccess%3Ddesignated */
229*[access=designated] {
230 throwWarning: tr("''{0}'' is meaningless, use more specific tags, e.g. ''{1}''", "access=designated", "bicycle=designated");
231 assertMatch: "way access=designated";
232}
233*[access=official] {
234 throwWarning: tr("''{0}'' does not specify the official mode of transportation, use ''{1}'' for example", "access=official", "bicycle=official");
235 assertMatch: "way access=official";
236}
237
238/* see #10085 - give warning for fixme=yes */
239*[fixme=yes], *[FIXME=yes] {
240 throwWarning: tr("{0}={1} is unspecific. Instead of ''{1}'' please give more information about what exactly should be fixed.", "{0.key}", "{0.value}");
241 assertMatch: "way fixme=yes";
242}
243
244/* see #10107, #10108, #10929 - http://wiki.openstreetmap.org/wiki/Proposed_features/leaftype#Features.2FPages_affected */
245*[wood=deciduous],
246*[type=broad_leaved],
247*[type=broad_leafed] {
248 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
249 fixRemove: "{0.key}";
250 fixAdd: "leaf_type=broadleaved";
251}
252
253*[wood=coniferous],
254*[type=coniferous],
255*[type=conifer] {
256 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
257 fixRemove: "{0.key}";
258 fixAdd: "leaf_type=needleleaved";
259}
260
261*[wood=mixed] {
262 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
263 fixRemove: "wood";
264 fixAdd: "leaf_type=mixed";
265}
266
267*[wood=evergreen],
268*[type=evergreen] {
269 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
270 fixRemove: "{0.key}";
271 fixAdd: "leaf_cycle=evergreen";
272}
273
274*[type=deciduous],
275*[type=deciduos] {
276 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
277 fixRemove: "type";
278 fixAdd: "leaf_cycle=deciduous";
279}
280
281*[natural=land] {
282 throwWarning: tr("{0}={1} is deprecated. Please use instead a multipolygon.", "{0.key}", "{0.value}");
283 assertMatch: "way natural=land";
284}
285
286/* see #10447 - https://wiki.openstreetmap.org/wiki/Proposed_features/Bridge_types#Deprecated_bridge_key_values */
287*[bridge=causeway] {
288 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
289 suggestAlternative: "ford=yes";
290 suggestAlternative: "bridge=low_water_crossing";
291 suggestAlternative: "embankment=yes";
292}
293
294*[bridge=swing] {
295 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
296 suggestAlternative: "bridge:movable=swing";
297 suggestAlternative: "bridge:structure=simple-suspension";
298}
299
300*[bridge=suspension] {
301 throwWarning: tr("{0}={1} is deprecated", "{0.key}", "{0.value}");
302 fixAdd: "bridge=yes";
303 fixAdd: "bridge:structure=suspension";
304}
305
306/* See #10530 - Incorrect tag proposed in internal preset for years */
307*[fee=interval],
308*[lit=interval],
309*[supervised=interval] {
310 throwWarning: tr("{0} is deprecated. Please specify interval by using opening_hours syntax", "{0.tag}");
311}
312
313/* See #10582 - JOSM supported this tag as "don't upload this" feature, before the introduction of upload flag at layer level */
314*[/josm\/ignore/] {
315 throwError: tr("{0} is deprecated. Please delete this object and use a private layer instead", "{0.key}");
316 fixDeleteObject: this;
317}
318
319/* see #8281 */
320*[sport=diving] {
321 throwWarning: tr("{0} is deprecated", "{0.tag}");
322 suggestAlternative: "sport=scuba_diving";
323 suggestAlternative: "sport=cliff_diving";
324}
325
326/* see #8281 */
327*[parking=park_and_ride] {
328 throwWarning: tr("{0} is deprecated", "{0.tag}");
329 fixRemove: "parking";
330 fixAdd: "amenity=parking";
331 fixAdd: "park_ride=yes";
332}
333
334/* see #10661, #10837, #11737 */
335*[access=restricted],
336*[barrier=yes],
337*[aerialway=yes][!public_transport],
338*[amenity=yes],
339*[place=yes] {
340 throwWarning: tr("{0}={1} is unspecific. Please replace ''{1}'' by a specific value.", "{0.key}", "{0.value}");
341}
342
343/* see #10693 - http://wiki.openstreetmap.org/wiki/Proposed_features/drop_recommendation_for_place_name , #10837 */
344*[place_name][!name] {
345 throwWarning: tr("{0} should be replaced with {1}", "{0.key}", "{1.key}");
346 fixChangeKey: "place_name => name";
347}
348*[place][place_name = *name] {
349 throwWarning: tr("{0} = {1}; remove {0}", "{1.key}", "{1.value}");
350 fixRemove: "{1.key}";
351}
352
353way[sidewalk=yes] {
354 throwWarning: tr("{0}={1} is unspecific. Please replace ''{1}'' by ''left'', ''right'' or ''both''.", "{0.key}", "{0.value}");
355}
356
357*[waterway=water_point],
358*[waterway=waste_disposal] {
359 throwWarning: tr("{0} is deprecated", "{0.tag}");
360 fixChangeKey: "waterway => amenity";
361}
362*[waterway=mooring] {
363 throwWarning: tr("{0} is deprecated", "{0.tag}");
364 fixRemove: "waterway";
365 fixAdd: "mooring=yes";
366}
367
368/* see #10837 */
369*[building][levels],
370*[building:part=yes][levels] {
371 throwWarning: tr("{0} is deprecated", "{1.key}");
372 suggestAlternative: "building:levels";
373 fixChangeKey: "levels => building:levels";
374}
375
376/* see #10691 */
377*[protected_class] {
378 throwWarning: tr("{0} is deprecated", "{0.key}");
379 suggestAlternative: "protect_class";
380 fixChangeKey: "protected_class => protect_class";
381}
382
383/* see #11070 */
384*[lock=unknown],
385*[hide=unknown],
386*[shelter=unknown],
387*[access=unknown],
388*[capacity:parent=unknown],
389*[capacity:women=unknown],
390*[capacity:disabled=unknown],
391*[crossing=unknown],
392*[foot=unknown] {
393 throwWarning: tr("Unspecific tag {0}", "{0.tag}");
394}
395
396/* unclear definition, see #11183 */
397*[sport=skiing][!piste:type] {
398 throwWarning: tr("Definition of {0} is unclear", "{0.tag}");
399 suggestAlternative: {1.key};
400}
401
402/* see #11223 */
403*[waterway=wadi] {
404 throwWarning: tr("{0} is deprecated", "{0.tag}");
405 suggestAlternative: "{0.key}=* + intermittent=yes";
406 suggestAlternative: "natural=valley";
407}
408
409/* see #10346 */
410way[oneway=1] {
411 throwWarning: tr("{0} is deprecated", "{0.tag}");
412 suggestAlternative: "oneway=yes";
413 fixAdd: "oneway=yes";
414}
415
416/* see #11329 */
417way[oneway=-1] {
418 throwWarning: tr("{0} is not recommended. Use the Reverse Ways function from the Tools menu.", "{0.tag}");
419}
420
421*[drinkable] {
422 throwWarning: tr("{0} is deprecated", "{0.key}");
423 suggestAlternative: "drinking_water";
424}
425
426/* see #10329 */
427*[color][!colour] {
428 throwWarning: tr("{0} is deprecated", "{0.key}");
429 suggestAlternative: "colour";
430 fixChangeKey: "color => colour";
431}
432*[color][colour][tag(color)=tag(colour)] {
433 throwWarning: tr("{0} together with {1}", "{0.tag}", "{1.tag}");
434 set samecolor;
435 fixRemove: "color";
436}
437*[color][colour]!.samecolor {
438 throwWarning: tr("{0} together with {1}", "{0.tag}", "{1.tag}");
439}
440*[/:color/]{
441 throwWarning: tr("{0} is deprecated", "{0.key}");
442 suggestAlternative: ":colour";
443}
444*[/color:/] {
445 throwWarning: tr("{0} is deprecated", "{0.key}");
446 suggestAlternative: "colour:";
447}
448
449/* see #11234 */
450*[/=|\+|\/|&|<|>|;|'|"|%|#|@|\\|,|\.|\{|\}|\?|\*|\^|\$/] {
451 throwWarning: tr("key with uncommon character");
452}
453
454/* see #11330 */
455*[/^.$/],
456node[/^..$/],
457way[/^..$/],
458relation[/^..$/][!to] {
459 throwWarning: tr("uncommon short key");
460}
461
462/* see #11344 */
463*[tower=air_to_ground] {
464 throwWarning: tr("{0} is deprecated", "{0.tag}");
465 suggestAlternative: "tower=transition";
466 fixAdd: "tower=transition";
467}
468*[pole=air_to_ground] {
469 throwWarning: tr("{0} is deprecated", "{0.tag}");
470 suggestAlternative: "pole=transition";
471 fixAdd: "pole=transition";
472}
473
474/* see #11439 */
475*[sport=hockey] {
476 throwWarning: tr("{0} is inaccurate", "{0.tag}");
477 suggestAlternative: "sport=field_hockey";
478 suggestAlternative: "sport=ice_hockey";
479}
480
481/* see #11471 */
482*[sport=billard],
483*[sport=billards],
484*[sport=billiard] {
485 throwWarning: tr("{0} is deprecated", "{0.tag}");
486 suggestAlternative: "sport=billiards";
487 fixAdd: "sport=billiards";
488}
489
490/* see #11499 */
491*[payment:credit_cards=yes] {
492 throwWarning: tr("{0} is inaccurate", "{0.tag}");
493 suggestAlternative: "payment:mastercard=yes";
494 suggestAlternative: "payment:visa=yes";
495 suggestAlternative: "...";
496}
497*[payment:debit_cards=yes] {
498 throwWarning: tr("{0} is inaccurate", "{0.tag}");
499 suggestAlternative: "payment:maestro=yes";
500 suggestAlternative: "payment:girocard=yes";
501 suggestAlternative: "...";
502}
503*[payment:electronic_purses=yes] {
504 throwWarning: tr("{0} is inaccurate", "{0.tag}");
505 suggestAlternative: "payment:ep_geldkarte=yes";
506 suggestAlternative: "payment:ep_quick=yes";
507 suggestAlternative: "...";
508}
509*[payment:cryptocurrencies=yes] {
510 throwWarning: tr("{0} is inaccurate", "{0.tag}");
511 suggestAlternative: "payment:bitcoin=yes";
512 suggestAlternative: "payment:litecoin=yes";
513 suggestAlternative: "...";
514}
515
516/* see #8717 */
517*[kp][highway=milestone],
518*[kp][railway=milestone],
519*[kp][waterway=milestone] {
520 throwWarning: tr("{0} is deprecated", "{0.key}");
521 suggestAlternative: "distance";
522 fixChangeKey: "kp => distance";
523}
524*[pk][highway=milestone],
525*[pk][railway=milestone],
526*[pk][waterway=milestone] {
527 throwWarning: tr("{0} is deprecated", "{0.key}");
528 suggestAlternative: "distance";
529 fixChangeKey: "pk => distance";
530}
531
532*[postcode] {
533 throwWarning: tr("{0} is deprecated", "{0.key}");
534 suggestAlternative: "addr:postcode";
535 suggestAlternative: "postal_code";
536}
Note: See TracBrowser for help on using the repository browser.