How to best map paths that don’t quite connect? I’ve included an example local to me below, as you can see the path doesn’t quite connect to the road, it’s seperated by about a meter of grass. Of course IRL it is perfectly walkable, and people regularly do. Should I connect the path to the road?:
Also on lock gates, how to best map them, and the paths over them, the two approached I have seen are to make a break in the waterway, or just add a “point”. Which is the best approach?
If people regularly use the path over the lock gate, then it’s totally fine to map it. The path should be connected to the road, otherwise it’s not usable for routing. The section on the grass can just be tagged with footway=link + surface=grass.
I support this, I’m of the belief that footway=link should only be meant for aiding routing at intersections. For this reason it also shouldn’t take any surface tags
I may not have explained my position properly. The fact that we are able to assign a surface tag to this way so happily is proof that it shouldn’t be a link and should be something else instead, since links are supposed to be mostly semantic and not represent a real way on the ground that we can observe and draw values from
Why is it weren’t always being told not to tag for the renderer, but continually being told to tag for the routing algorithm?
Don’t we just need better routing algorithms?
You’re being told not to mistag for the renderer, i.e. using incorrect tags to achieve a specific visual result on a rendered map (usually for one specific map style), while messing up the data for other use cases.
OSM is an abstraction of reality that is structured in a way to make it a) possible to actually represent and record the data in the first place, and b) suitable for consumption by data processors like renderers, routers, etc…
There are multiple different and overlapping levels of abstraction for different purposes. For example, the abstraction for traversible paths in OSM is a connected graph of linear ways. Yet, we all know that in reality roads (and all physical objects) actually have a physical extent and are not infinitesimally slim lines.
highway=* in OSM is used to fulfill multiple functions:
It indicates common routes of travel (on foot, by car, …)
It is used to convey information about the physical properties of the area
These abstractions and other similar ones throughout OSM are, and will never be, perfect for all purposes simultaneously and there will always be friction at the interfaces.
Don’t we simply need routing algorithms that have comparable intelligence to that of a 5 year old member of the Tufty Club who is being taught how to cross the road by Dave Prowse?
Yet, we all know that in reality roads (and all physical objects) actually have a physical extent and are not infinitesimally slim lines.
Well, routing algorithms seemingly don’t yet know this. So they sometimes come up with absurd results. Can’t someone teach them how to cross the road or to walk across bits of grass?
I prefer Chateau Chunder, which is an Appellation Controlée specially grown for those keen on regurgitation. A fine wine which really opens up the sluices at both ends.