Talk:Tag:highway=no

From OpenStreetMap Wiki
Jump to navigation Jump to search

Should not be marked as deprecated

I believe that this tag has a valid use, and therefore should not be marked as deprecated. Occasionally there are ways that one might expect to be a type of highway, but are not. In such cases, while it would be correct to miss out the highway=* tag, doing so may lead other mappers to believe that it's an error, or that the precise highway value needs to be checked. Allowing the use of highway=no allows mappers to explicitly tag that the way is not a highway of any sort. Without this option, there would be no machine-readable way to distinguish between a way that has been surveyed and found not to be a highway, and one that hasn't been surveyed and hence its highway status is uncertain. The suggested alternative of highway=*, access=no does not capture this circumstance, as it would involve incorrectly marking the way as a highway when it is not.

The particular use-case that I have in mind is for Public Rights of Way in England and Wales. Here there are legal "Definitive Lines" of routes along which there is a legal right to travel. However, sometimes these legal lines are not present on the ground, and may even be obstructed by hedges, ditches, buildings etc. In order to correctly map and tag the legal lines it is necessary to record: (a) the legal right to travel here, (b) whether there is a physical highway present and if so what sort, and (c) if the physical access differs from the legal access. All four combinations of (b) and (c) are possible. (No highway and inaccessible, no highway but accessible, highway but obstructed so inaccessible, and highway and accessible.) highway=no is the best option for marking the cases where there is no highway physically present on the ground. This may or may not also mean that access is physically impossible.

Rjw62 (talk) 11:12, 6 February 2017 (UTC)

Problem with `highway=no` is that many data consumers will take any use of primary tag `highway=*` to mean that there is some sort of highway, thus doing exactly what you don't want. I've updated the wiki to more clearly mention no:highway=* and not:highway=* as non-problematic machine-readable alternatives to tag the same thing. You may also wish to add note=* for human readable alternative for other mappers including more details. There are also other lifecycle prefixes which might be more appropriate in some circumstances. See also the discussion at https://github.com/openstreetmap/id-tagging-schema/issues/105#issuecomment-754722538 --mnalis (talk) 13:19, 10 June 2023 (UTC)

"Many data consumers will take any highway=* to mean that there is some sort of highway"

@Something B: - can you give 10 examples where it happens and results in problems (so for example not in editors)? This actually happens with building=* or shop=* but which data consumers do it with highway=*? There is such wild variety of values here (from highway=proposed through highway=cycleway and highway=corridor to highway=motorway AND number of used values is small, so such behaviour does not make any sense. Mateusz Konieczny (talk) 05:01, 11 June 2023 (UTC)

Hi, Mateusz! This text has been added by mnalis. Something B (talk) 08:58, 11 June 2023 (UTC)
Sorry! @Mnalis: then Mateusz Konieczny (talk) 05:29, 12 June 2023 (UTC)
@Mateusz Konieczny: With the exception of highway=proposed (which also has red warning AmBox!), all the values you mention are some type of surface for of moving people (with vehicles or not) from one place to another. highway=no isn't. So I think it should have more visible warning about its use (if not Questioned, then AmBox or something). 10 examples is pretty high bar to require for mentioning that problem, though - don't you think? See that github issue linked too. But anyway, here is one example: Humanitarian layer on osm.org. Here is another: OsmAnd default offline vector map style "OsmAnd". Here is yet another: Brouter web default trekking profile. And another: facilmap.org winter. Many of the overpass examples (and real world usage) will simply use way[highway] instead of way[highway ~ "residential|service|track|footway|unclassified|path|tertiary|secondary|primary|living_street|trunk|cycleway|steps|motorway|motorway_link|pedestrian|trunk_link|primary_link|construction|secondary_link|tertiary_link|platform|bridleway|road|corridor|raceway|services|rest_area|busway|bus_stop|elevator|via_ferrata|abandoned|escape|emergency_bay|planned|bus_guideway|trailhead|yes|traffic_signals|piste|...."], both for ease of use, coverage, and performance reasons. I don't really agree that "number of used values is small" (there is 149 highway=* used on ways, according to taginfo - that gargantuan overpass example (which probably breaks wiki formatting) is extremely simplified with just several dozen top used values, yet it is still way too huge.
In conclusion I'd recommend some succinct yet highly visible AmBox is put back on that page explaining the problems and why other alternatives (including not mapping it at all!) should be used instead. --mnalis (talk) 14:32, 12 June 2023 (UTC)
Not entirely sure whether bad support by data consumers really qualifies for that... And going as far that "other alternatives (including not mapping it at all!) should be used instead". Unlike say shop=not_open or shop=vacant or building=collapsed or building=no this is not really trap, highway=* is not open ended and you can and should just use closed set of values. Also, I opened https://github.com/hotosm/HDM-CartoCSS/issues/334 an https://github.com/FacilMap/facilmap/issues/247 There was already https://github.com/abrensch/brouter/issues/402 I have not checked Osmand yet. Mateusz Konieczny (talk) 04:00, 17 September 2023 (UTC)