[talk-au] Tagging Culverts on Roads
Ben Ritter
benjaminaritter at gmail.com
Fri Feb 17 09:42:34 UTC 2023
Hi All,
I don't have any skin in the game of waterways or infrastructure ids, but I
would like to offer my perspective as a software developer working with
road networks in osm2streets <https://github.com/a-b-street/osm2streets>.
First of all, these proprietary S*tructure Numbers* are not a perfect fit
for inclusion in OSM, unless they are actually marked on the culverts
themselves in the real world. This is because of the principle of
Verifiability <https://wiki.openstreetmap.org/wiki/Verifiability>. That
being said, I find it hard to discourage any local community from
maintaining their own clear and consistent tags if it doesn't increase the
burden on anyone else.
The inconvenient fact here is that `highway=*` ways describe the navigable
road surfaces with a focus on routability rather than describing the road
as a whole. For instance, when there is a physical median dividing a road,
the road is split into two ways because from a routability perspective, the
two sides of the road are unrelated. The decision to connect a `highway`
feature to some other feature is made based on the routing connectivity
between them, even at the expense of spatial correctness. (This is
certainly a pain in the arse for a lot of use-cases, but it's the
convention that exists, and in my opinion is a reasonable compromise given
the competing requirements.) Another example: traffic lights exist as nodes
on the `highway` because they are relevant to someone navigating along that
portion of roadway. Same with `surface`, `maxweight` and `maxwidth` tags,
etc.
So, the road infrastructure is represented not just by the `highway`, but
by other OSM features too, like seperate `kerb=*` nodes and ways,
`man_made=bridge` areas, etc.
In my view, it would not be appropriate to tag properties of a culvert on a
`highway=*` way. A node on the way would not be appropriate either, because
the culvert is not a feature of the driving surface. Also, such a node
would ideally be placed right where the culvert crosses the road, but
because the culvert and the road should not be connected (due to the
routing connectivity constraint), the approach would be very fiddly and
error prone.
With all that in mind, I think an appropriately namespaced `ref` tag on the
`tunnel=culvert` itself would be appropriate (assuming proper
licensing and importing
procedures <https://wiki.openstreetmap.org/wiki/Import/Guidelines>).
I like working within the `ref:AU` namespace to signify to the global
community that the Australian community has defined the tag. After that, I
agree that it should be kept simple with an identifier of the
issuing authority. That identifier shouldn't have more colons in it,
because they signify another level of the tag hierarchy. Given that the DoT
has just renamed to "Department of Transport and Planning"
<https://dtp.vic.gov.au/about/governance> I would propose
ref:AU:vic_dtp=SN1234
I share your disappointment with the difficulty in working with features
associated with roads like this. To me, this feels like the street address
case. "Street" is in the name, but the addresses aren't directly connected
with the road features. This is why I am contributing to osm2streets,
because I want a simple way to work with data at a "road" level, instead of
the "OSM feature" level.
Though we are not there yet, associating things like culverts with the
roads they cross - in the way you desire - is in scope for osm2streets. I
would love to discuss this use case over on the github forum
<https://github.com/a-b-street/osm2streets/discussions>. Or hear of any
good solutions that people out there are using!
Cheers,
Ben
On Sat, 11 Feb 2023 at 08:03, Andrew Davidson <theswavu at gmail.com> wrote:
> On Thu, Feb 9, 2023 at 5:21 PM Andrew Hughes <ahhughes at gmail.com> wrote:
> > For the structure number, I like the look of...
> >
> > ref:AU:VIC:DOT:SN=SN12345
> >
>
> Does it really need to be that complicated? How many different systems
> of culvert references are there in Victoria. I'd be happy with just
> ref=* on the culvert.
>
> _______________________________________________
> Talk-au mailing list
> Talk-au at openstreetmap.org
> https://lists.openstreetmap.org/listinfo/talk-au
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstreetmap.org/pipermail/talk-au/attachments/20230217/bac8b0da/attachment.htm>
More information about the Talk-au
mailing list