meta { title: "Geology Validator"; version: "6_2024-01-16"; description: "Validates mapping of geological and natural features"; author: "Kai Johnson"; link: "https://josm.openstreetmap.de/wiki/Rules/Geology"; baselanguage: "en"; seealso: "https://wiki.openstreetmap.org/wiki/Glossary_of_landforms"; } /* Abîme - see Sinkhole */ /* Abyssal fan */ /* Abyssal plain */ /* Ait - see Islet */ /* Alluvial fan */ /* Anabranch */ /* Arch */ /* Archipelago */ *["natural"="archipelago"] { group: "deprecated tagging"; throwWarning: "Use place=archipelago in place of natural=archipelago"; fixChangeKey: "natural=>place"; } node["place"="archipelago"], way["place"="archipelago"] { group: "geometry"; throwWarning: "Map place=archipelago as a relation with all the islands and islets as members"; } relation["place"="archipelago"] > *["natural"!="coastline"]["natural"!="atoll"]["place"!~/island|islet/] { group: "missing tag"; throwWarning: "All the members of an archipelago relation should have either natural=coastline, natural=atoll, or place=island/islet"; } /* Arête */ node["natural"="arete"], way["natural"="arete"]:closed, relation["natural"="arete"]:closed { group: "geometry"; throwError: "Map natural=arete as an unclosed way"; } /* Arroyo */ /* Atoll */ node["place"="atoll"], way["place"="atoll"]!:closed, relation["place"="atoll"] { group: "geometry"; throwWarning: "Map place=atoll as a single way enclosing the entire atoll"; } /* Ayre - see Beach */ /* Badlands */ /* Bajada */ /* Bar - see Reef */ /* Barchan */ /* Barren land */ /* Barrier bar - see Reef */ /* Barrier island - see Island */ /* Basin */ *["geological"="basin"] { group: "deprecated tagging"; throwWarning: "Consider using natural=basin/depression/valley/flat in place of geological=basin"; } /* Bay */ /* relation["natural"="bay"] { group: "geometry"; throwWarning: "Consider mapping natural=bay as a single node"; } */ /* Baymouth bar - see Reef */ /* Bayou */ /* Beach */ *["natural"="beach"][!"surface"] { group: "missing tag"; throwWarning: "Add surface=sand/gravel/pebblestone/* for additional detail"; } /* Beach cusps */ /* Beach ridge */ /* Bench */ *["natural"="earth_bank"][!"earth_bank"] { group: "missing tag"; throwWarning: "Add earth_bank=gully/scarp/grassy_steep_slope/cut_bank/* for additional detail"; } node["natural"="earth_bank"] { group: "geometry"; throwWarning: "Map natural=earth_bank as a way with the lower terrain to the right"; } /* Bend */ *["water"="bend"] { group: "deprecated tagging"; throwWarning: "Use waterway=bend along the flow line to tag a bend in a river or stream"; } /* Bight - see Bay */ /* Blockfield */ /* Blowhole */ /* Blowout */ /* Blue hole - see Sinkhole */ /* Bluff */ /* Boulder */ *["natural"="boulder"] { group: "deprecated tagging"; throwWarning: "Use natural=stone in place of natural=boulder"; fixAdd: "natural=stone"; } /* Bornhardt */ /* Braid bar - see Bar */ /* Braided channel - see Channel */ /* Butte */ /* Calanque - see Bay */ /* Caldera */ *["natural"="caldera"] { group: "deprecated tagging"; throwWarning: "Use geological=volcanic_caldera_rim in place of natural=caldera"; fixAdd: "geological=volcanic_caldera_rim"; fixRemove: "natural"; } /* Canyon */ *["natural"="canyon"] { group: "deprecated tagging"; throwWarning: "Use natural=valley in place of natural=canyon"; fixAdd: "natural=valley"; } /* Cape */ *["natural"="point"], *["natural"="headland"] { group: "deprecated tagging"; throwWarning: "Use natural=cape in place of {0.tag}"; fixAdd: "natural=cape"; } way["natural"="cape"], relation["natural"="cape"] { group: "geometry"; throwWarning: "Map natural=cape as a single node, not as a way or relation"; } /* Carolina bay */ /* Cave */ *["natural"="grotto"], *["geological"="grotto"] { group: "deprecated tagging"; throwWarning: "Use natural=cave_entrance in place of {0.tag}"; } /* Cenote - see Sinkhole */ /* Channel - see Strait */ /* Chenier */ /* Cirque */ /* Cliff */ /* Coast */ *["natural"="coastline_old"], *["natural"="inactive_coastline"], *["natural"="old_coastline"] { throwError: "Delete old coastline ways once the new coastline is in place"; } /* Col */ *["natural"="col"] { group: "deprecated tagging"; throwWarning: "Use natural=saddle in place of natural=col"; fixAdd: "natural=saddle"; } /* Columnar jointing */ /* Combe - see Valley */ /* Complex crater */ /* Complex volcano */ /* Confluence */ /* Continental shelf */ /* Coral reef - see Reef */ /* Couloir - see Valley */ /* Cove */ *["natural"="cove"] { group: "deprecated tagging"; throwWarning: "Use natural=bay in place of natural=cove"; fixAdd: "natural=bay"; } /* Cove (valley) - see Valley */ /* Crevasse */ /* Crevasse splay */ /* Cryovolcano */ /* Cuesta */ /* Cuspate foreland - see Cape */ /* Cut bank - see Bench */ /* Dale - see Valley */ /* Defile - see Valley */ /* Dell - see Valley */ /* Delta, River */ /* Depression */ *["geological"="maar"] { group: "deprecated tagging"; throwWarning: "Consider natural=depression + geological=volcanic_caldera_rim in place of geological=maar"; fixRemove: "geological"; fixAdd: "natural=depression"; fixAdd: "geological=volcanic_caldera_rim"; } /* Desert */ way["natural"="desert"], relation["natural"="desert"] { group: "geometry"; throwWarning: "Map natural=desert as a single node at the center of a named desert area"; } node["natural"="desert"][!"name"] { group: "missing tag"; throwWarning: "natural=desert without name=* tag"; } /* Desert pavement */ /* Diatreme */ /* Dike */ /* Dirt cone */ /* Disappearing stream */ *["waterway"="sink"] { group: "deprecated tagging"; throwWarning: "Use waterway=stream_end in place of waterway=sink"; fixAdd: "waterway=stream_end"; } node["waterway"="stream_end"] < way[!"waterway"], way["waterway"="stream_end"], relation["waterway"="stream_end"] { group: "geometry"; throwError: "Map waterway=stream_end as a single node on a waterway"; } /* Dissected plateau */ /* Doab */ /* Doline - see Sinkhole */ /* Dome */ /* Drainage basin */ /* Drainage divide */ /* Draw - see Valley */ /* Drumlin */ /* Dry lake */ *["natural"="dry_lake"][!"surface"] { group: "missing tag"; throwWarning: "Add surface=salt/silt/clay/* for additional detail"; } /* Dry wash */ /* Dune */ /* Dune system */ /* Earthflow - see Landslide */ /* Ejecta blanket */ /* Endorheic basin */ /* Endorheic lake */ /* Erg */ /* Escarpment */ /* Esker */ /* Estuary */ *["estuary"="yes"] { group: "deprecated tagging"; throwWarning: "Consider tidal=yes in place of estuary=yes"; fixChangeKey: "estuary=>tidal"; } /* Estavelle - see Sinkhole */ /* Exhumed river channel */ /* Faceted spur */ /* Fault */ *["natural"="fault"] { group: "deprecated tagging"; throwWarning: "Use geological=fault in place of natural=fault"; fixChangeKey: "natural=>geological"; } /* Fault scarp - see Bench */ /* Firth - see Bay */ /* Fissure */ /* Fissure vent */ /* Fjard - see Bay */ /* Fjord - see Bay */ /* Flat */ /* Flatiron */ /* Floodplain */ /* Fluvial island - see Island */ /* Fluvial terrace - see Cut bank */ /* Foiba - see Sinkhole */ /* Fumarole */ /* Gat - see Strait */ /* Geo - see Bay */ /* Geyser */ *["geological"="volcanic_geyser"] { group: "deprecated tagging"; throwWarning: "Use natural=geyser + geyser:type=volcanic in place of geological=volcanic_geyser"; fixAdd: "natural=geyser"; fixAdd: "geyser:type=volcanic"; fixRemove: "geological"; } *["natural"="geyser"][!"geyser:type"] { group: "missing tag"; throwWarning: "Add geyser_type=volcanic/co2 for additional detail"; } /* Giant's kettle */ *["geological"="giants_kettle"][!"natural"] { group: "missing tag"; throwWarning: "Add natural=depression for additional detail"; fixAdd: "natural=depression"; } /* Glacial erratic */ *["geological"="glacial_erratic"]["natural"!="stone"] { group: "missing tag"; throwWarning: "Add natural=stone for additional detail"; fixAdd: "natural=stone"; } /* Glacial lake */ /* Glacial polish */ /* Glacier */ *["natural"="glacier"][!"glacier:type"] { group: "missing tag"; throwWarning: "Add glacier:type=mountain/valley/shelf/* for additional detail"; } /* Glacier cave */ /* Glacier foreland */ /* Glen - see Valley */ /* Gorge - see Valley */ /* Graben */ /* Gulch - see Valley */ /* Gulf */ way["place"="ocean"], relation["place"="ocean"], way["place"="sea"], relation["place"="sea"] { group: "geometry"; throwError: "Map {0.tag} as a single node, not as a way or relation"; } /* Gully - see Valley */ /* Gut (coastal geography) - see Strait */ /* Guyot */ /* Hanging valley */ /* Headland - see Cape */ /* Hill */ /* Hilly area */ /* Hogback */ /* Hollow */ /* Homoclinal ridge */ /* Hoodoo */ *["geological"="hoodoo"]["natural"!="cliff"] { group: "deprecated tagging"; throwWarning: "Use natural=cliff with geological=hoodoo to outline the vertical rock face of the pinnacle"; fixAdd: "natural=cliff"; } /* Horst */ /* Hot spring */ *["geological"="geothermal"] { group: "deprecated tagging"; throwWarning: "Use natural=hot_spring in place of geological=geothermal"; fixAdd: "natural=hot_spring"; fixRemove: "geological"; } /* Ice cap - see Glacier */ /* Ice field - see Glacier */ /* Ice sheet - see Glacier */ /* Impact crater */ *["natural"="crater"] { group: "deprecated tagging"; throwWarning: "Use geological=meteor_crater/volcanic_caldera_rim in place of natural=crater"; } /* Inlet */ *["natural"="inlet"] { group: "deprecated tagging"; throwWarning: "Use natural=bay in place of natural=inlet"; fixAdd: "natural=bay"; } /* Inselberg */ /* Interfluve */ /* Inverted relief */ /* Island */ *["natural"="island"] { group: "deprecated tagging"; throwWarning: "Use place=island in place of natural=island"; fixChangeKey: "natural=>place"; } *["natural"="land"] { group: "deprecated tagging"; throwWarning: "Use place=island/islet in place of natural=land"; } /* Islet */ *["natural"="islet"] { group: "deprecated tagging"; throwWarning: "Use place=islet in place of natural=islet"; fixChangeKey: "natural=>place"; } /* Isthmus */ /* Joint */ /* Kame */ /* Kame delta */ /* Karst */ /* Karst fenster */ /* Karst valley */ /* Kettle */ *["geological"="kettle"]["natural"!="depression"] { group: "missing tag"; throwWarning: "Add natural=depression for additional detail"; fixAdd: "natural=depression"; } /* Kīpuka */ /* Knoll */ *["natural"="knoll"] { group: "deprecated tagging"; throwWarning: "Use natural=hill in place of natural=knoll"; fixAdd: "natural=hill"; } /* Lacustrine plain */ /* Lacustrine terrace */ /* Lagoon - see Lake */ /* Lake */ *["natural"="lagoon"], *["natural"="lake"], *["natural"="pond"] { group: "deprecated tagging"; throwWarning: "Use natural=water + water={0.value} in place of {0.tag}"; fixChangeKey: "natural=>water"; fixAdd: "natural=water"; } *["natural"="water"]["waterway"][!"water"] { group: "incompatible tags"; throwWarning: "Use water=* in place of waterway=* in combination with natural=water"; fixChangeKey: "waterway=>water"; } *["water"]["waterway"] { group: "incompatible tags"; throwWarning: "Map water=* as an area and waterway=* as a linear feature"; } *["water"]!:closed { group: "geometry"; throwWarning: "Use water=* only on areas"; } /* Landslide */ *["natural"="landslide"][!"landslide"], *["geological"="landslide"][!"landslide"] { group: "missing tag"; throwWarning: "Add landslide=* for additional detail"; } *["geological"="landslip"], *["geological"="gravitational_creep"] { group: "deprecated tagging"; throwWarning: "Use natural=landslide + landslide=* in place of {0.tag}"; } /* Lava */ *["natural"="lava"] { group: "deprecated tagging"; throwWarning: "Use natural=bare_rock + geological=volcanic_lava_flow in place of natural=lava"; fixAdd: "natural=bare_rock"; fixAdd: "geological=volcanic_lava_flow"; } /* Lava dome */ /* Lava field */ /* Lava flow */ /* Lava lake */ /* Lava spine */ /* Lava tube */ /* Lavaka */ /* Levee */ /* Limestone pavement */ *["natural"="bare_rock"][!"material"] { group: "missing tag"; throwWarning: "Add material=granite/sandstone/marble/limestone/basalt/* for additional detail"; } *["geological"="lapiaz"] { group: "deprecated tagging"; throwWarning: "Use natural=bare_rock + material=limestone in place of geological=lapiaz"; fixAdd: "shop=gemstones"; fixRemove: "geological"; } /* Loess */ /* Maar */ /* Machair */ /* Malpaís */ /* Mamelon */ /* Marine terrace */ /* Marsh - see Wetland */ /* Massif */ /* Meander */ /* Mesa */ /* Mid-ocean ridge */ /* Mogote */ /* Moraine */ *["natural"="moraine"] { group: "deprecated tagging"; throwWarning: "Use natural=hill + geological=moraine in place of natural=moraine"; fixAdd: "natural=hill"; fixAdd: "geological=moraine"; } *["geological"="moraine"][!"natural"] { group: "missing tag"; throwWarning: "Consider adding natural=hill/ridge for additional detail"; } /* Moulin */ /* Mountain - see Summit */ /* Mountain pass */ node["mountain_pass"="yes"] < way[!"highway"], way["mountain_pass"="yes"], relation["mountain_pass"="yes"] { group: "geometry"; throwError: "Map mountain_pass=yes as a node at the highest point on a highway"; } /* Mountain range */ *["natural"="range"] { group: "deprecated tagging"; throwWarning: "Use natural=mountain_range in place of natural=range"; fixAdd: "natural=mountain_range"; } /* Mud volcano */ /* Mudflat - see Wetland */ /* Mushroom rock */ /* Nadir */ /* Narrows */ /* Natural arch */ /* Nunatak */ /* Oasis */ /* Oceanic basin */ /* Oceanic plateau */ /* Oceanic ridge */ /* Oceanic trench */ /* Outcrop */ *["geological"="outcrop"]["natural"!~/bare_rock|rock/] { group: "missing tag"; throwWarning: "Add natural=bare_rock for additional detail"; fixAdd: "natural=bare_rock"; } *["natural"="bedrock"], *["natural"="rock_formation"] { group: "deprecated tagging"; throwWarning: "Use natural=bare_rock + geological=outcrop in place of {0.tag}"; fixAdd: "natural=bare_rock"; fixAdd: "geological=outcrop"; } /* Outwash fan */ /* Outwash plain */ /* Oxbow lake - see Lake */ /* Paleoplain */ /* Panhole */ /* Parasitic cone - see Volcano */ /* Pediment */ /* Pediplain */ /* Peneplain */ /* Peninsula */ /* Pingo */ /* Pinnacle */ /* Pit crater - see Sinkhole */ /* Plain */ /* Plate boundary */ /* Plateau */ *["geological"="plateau"] { group: "deprecated tagging"; throwWarning: "Use natural=plateau in place of geological=plateau"; fixChangeKey: "geological=>natural"; } /* Playa - see Dry Lake */ /* Plunge pool */ /* Point bar */ /* Polje */ /* Pond - see Lake */ /* Ponor - see Sinkhole */ /* Pothole */ /* Potrero */ /* Proglacial lake */ /* Promontory */ /* Pseudocrater */ /* Pull-apart basin */ /* Pyramidal peak */ /* Raised beach */ /* Rapid */ *["natural"="rapids"] { group: "deprecated tagging"; throwWarning: "Use waterway=rapids in place of natural=rapids"; fixChangeKey: "natural=>waterway"; } *["waterway"="rapids"]:closed { group: "deprecated tagging"; throwWarning: tr("Map an area of rapids as natural=water + water=rapids"); fixAdd: "natural=water"; fixAdd: "water=rapids"; fixRemove: "waterway"; fixRemove: "area"; } /* Ravine - see Valley */ /* Reef */ *["natural"="reef"][!"reef"] { group: "missing tag"; throwWarning: "Add reef=coral/rock/sand/* for additional detail"; } *["natural"="sandbar"] { group: "deprecated tagging"; throwWarning: "Use natural=reef + reef=sand in place of natural=sandbar"; fixAdd: "natural=reef"; fixAdd: "reef=sand"; } /* Ria */ /* Ridge */ /* Riffle */ /* Rift valley - see Valley */ /* River */ *["natural"="riverbed"] { group: "deprecated tagging"; throwWarning: "Use natural=water + water=river in place of {0.tag}"; fixAdd: "natural=water"; fixAdd: "water=river"; } /* River delta */ /* River island - see Islet */ /* Rôche moutonnée */ /* Rock glacier */ *["natural"="glacier"]["glacier:type"="rock"] { group: "deprecated tagging"; throwWarning: "Use geological=rock_glacier + natural=scree in place of natural=glacier + glacier:type=rock"; fixAdd: "geological=rock_glacier"; fixAdd: "natural=scree"; fixRemove: "glacier:type"; } *["geological"="rock_glacier"][!"natural"] { group: "missing tag"; throwWarning: "Consider adding natural=scree for additional detail"; fixAdd: "natural=scree"; } /* Rock shelter */ *["natural"="rock_shelter"] { group: "deprecated tagging"; throwWarning: "Use natural=rock_overhang in place of natural=rock_shelter"; fixAdd: "natural=rock_overhang"; } /* Rock-cut basin */ /* Rogen moraine - see Moraine */ /* Saddle */ way["natural"="saddle"], relation["natural"="saddle"] { group: "geometry"; throwError: "Map natural=saddle as a node, not as a way or relation"; } *["natural"="gap"], *["natural"="mountain_pass"], *["natural"="notch"], *["natural"="pass"] { group: "deprecated tagging"; throwWarning: "Use natural=saddle in place of {0.tag}"; fixAdd: "natural=saddle"; } /* Salt marsh - see Wetland */ /* Salt pan */ *["geological"="salt_pan"] { group: "deprecated tagging"; throwWarning: "Consider natural=dry_lake + surface=salt in place of geological=salt_pan"; fixAdd: "natural=dry_lake"; fixAdd: "surface=salt"; fixRemove: "geological"; } /* Sand boil */ /* Sandhill */ /* Sandur */ /* Scowle */ /* Scree */ /* Sea cave */ /* Seamount */ /* Shield volcano - see Volcano */ /* Shoal */ /* Shore - see Coast*/ /* Shut-in */ /* Side valley - see Valley */ /* Sinkhole */ *["natural"="sinkhole"][!"sinkhole"] { group: "missing tag"; throwWarning: "Add sinkhole=bluehole/doline/estavelle/pit/ponor for additional detail"; } /* Slickenside */ /* Slope */ /* Snow field */ /* Sound - see Strait */ /* Spit - see Cape */ /* Spring */ /* Stack */ /* Strait */ *["natural"="channel"] { group: "deprecated tagging"; throwWarning: "Use natural=strait in place of natural=channel"; fixAdd: "natural=strait"; } /* Strandflat */ /* Strath - see Valley */ /* Stratovolcano - see Volcano */ /* Stream */ *["natural"="creek"], *["natural"="stream"] { group: "deprecated tagging"; throwWarning: "Use waterway=stream in place of {0.tag}"; fixAdd: "waterway=stream"; fixRemove: "natural"; } *["natural"="waterway"] { group: "deprecated tagging"; throwWarning: "Use waterway=river/stream in place of natural=waterway"; } *["waterway"]:closed { group: "geometry"; throwWarning: "Use waterway=* only on linear features"; } /* Stream pool - see Lake */ /* Strike ridge */ /* Structural bench - see Bench */ /* Structural terrace */ /* Subglacial mound - see Volcano */ /* Submarine canyon */ /* Submarine volcano */ /* Summit */ *["natural"="summit"] { group: "deprecated tagging"; throwWarning: "Use natural=peak in place of natural=summit"; fixAdd: "natural=peak"; } way["natural"="peak"], relation["natural"="peak"] { group: "geometry"; throwError: "Map natural=peak as a single node at the highest point of elevation, not as a way or relation"; } /* Supervolcano - see Volcano */ /* Surge channel */ /* Swamp */ /* Talus slope */ /* Tar pit */ /* Tepui */ /* Terrace */ /* Terracette */ /* Tessellated pavement */ /* Thalweg */ /* Tidal marsh */ /* Tide pool */ /* Tombolo */ /* Tor */ *["geological"="tor"] { group: "deprecated tagging"; throwWarning: "Use geological=outcrop in place of geological=tor"; fixAdd: "geological=outcrop"; } /* Tower karst */ /* Towhead - see Islet */ /* Trim line */ /* Truncated spur */ /* Tundra polygon */ /* Tunnel valley */ /* Turlough */ /* Tuya */ /* U-shaped valley - see Valley */ /* Uvala */ /* Vale - see Valley */ /* Valley */ way["natural"="valley"]:closed, way["natural"="gorge"]:closed, way["natural"="gully"]:closed, relation["natural"="valley"]:closed, relation["natural"="gorge"]:closed, relation["natural"="gully"]:closed { group: "geometry"; throwError: "Map {0.tag} as an unclosed way"; } /* Valley shoulder */ /* Vein */ /* Ventifact */ /* Volcanic arc */ /* Volcanic cone */ /* Volcanic crater */ *["natural"="caldera"], *["natural"="crater_rim"] { group: "deprecated tagging"; throwWarning: "Use geological=volcanic_caldera_rim in place of {0.tag}"; fixAdd: "geological=volcanic_caldera_rim"; fixRemove: "natural"; } /* Volcanic crater lake */ /* Volcanic dam */ /* Volcanic field */ /* Volcanic group */ /* Volcanic island */ /* Volcanic plateau */ /* Volcanic plug */ /* Volcanic vent */ /* Volcano */ *["natural"="volcano"][!"volcano:type"], *["natural"="volcano"][!"volcano:status"] { group: "missing tag"; throwWarning: "Add {1.key}=* for additional detail"; } /* Wadi */ *["natural"="wadi"] { group: "deprecated tagging"; throwWarning: "Use waterway=stream + intermittent=yes in place of natural=wadi"; fixAdd: "waterway=stream"; fixAdd: "intermittent=yes"; fixRemove: "natural"; } /* Waterfall */ node["waterway"="waterfall"]["intermittent"!="yes"] < way["waterway"]["intermittent"="yes"] { group: "missing tag"; throwWarning: "Add intermittent=yes to a waterfall on an intermittent waterway"; fixAdd: "intermittent=yes"; } /* Water gap */ /* Watershed */ /* Wave-cut platform */ /* Wetland */ *["natural"="wetland"][!"wetland"] { group: "missing tag"; throwWarning: "Add wetland=bog/swamp/marsh/tidalflat/* for additional detail"; } /* Wind gap */ /* Yardang */ /* Other */ *["geological"="geotope"], *["geological"="yes"], *["natural"="landform"] { group: "deprecated tagging"; throwWarning: "Use a more specific tag for the landform in place of {0.tag}"; } *["natural"="oilfield"] { group: "deprecated tagging"; throwWarning: "Use man_made=oilfield in place of natural=oilfield"; fixChangeKey: "natural=>man_made"; }
Last modified
14 months ago
Last modified on 2024-01-16T18:03:54+01:00
Note:
See TracWiki
for help on using the wiki.