On Sat, Sep 29, 2018 at 8:41 PM Kevin Kenny <kevin.b.ke...@gmail.com> wrote:

> On Sat, Sep 29, 2018 at 6:58 PM Paul Johnson <ba...@ursamundi.org> wrote:
> > I'm still against using forward/backward on nodes, it really feels like
> a hacky way to avoid using a relation (up there with using ref=* on ways to
> describe routes), which would disambiguate things without being so brittle
> just because a way reversed, and handle more complex situations like "right
> turn permitted without stopping" sign below a "stop" sign, or allow a data
> consumer to be able to display a diagram indicating which ways a stop
> applies to (handy if you encounter, say, a six way intersection with a four
> way stop).
> >
> > I honestly don't understand why, ten years since it's introduction as
> OSM's third basic primitive, there's still this weirdly unnatural aversion
> to relations, even though they're quite a powerful primitive in our toolbox.
>
> I agree with you that we need to design relations for the complex
> cases such as what you describe, but I've no problem with the 'hacky'
> approach as well - on the principle of 'make simple things easy and
> complex things possible'. JOSM (and from what I understand, iD, but I
> rarely use it) handles directional nodes on ways fairly competently,
> detecting that the mapper is reversing a way that has such nodes
> attached and asking what to do about them.
>

It still feels a bit brittle, especially if the data consumer is assuming
(correctly) that nodes by themselves lack a direction.  Which is fine when
the traffic control applies to all possible ways and approaches connected
to a node.  A relation does explicitly define how it applies, however, by
defining which nodes are affecting which ways and how without having to
make a lot of assumptions.


> As far as the aversion to relations goes, I think a big part of it is
> simply that the downstream support just isn't there.  The tools do
> multipolygons fairly well, but that is the only relation that is
> really handled well. A bit part of that is that once OSM data has been
> through a stock osm2pgsql, there are no relations any more.
> Multipolygons become first class objects, and all other relations are
> handled at best by devolving their tags upon their components.
>
> (The rest of this message is off the topic of stop signs.)
>

I don't see a regression in some downstream application as being a reason
not to do it.


> You raise the issue of ref=* on ways, and why we still use it. That's
> a clear case where we use it because the downstream systems can't do
> route relations.


Osmand handles it fine.


> I've been trying to help with this - at least to the
> extent of trying to revive Phil! Gold's route relation processing. My
> version is at https://github.com/kennykb/osm-shields, and you can see
> one rendering with shaped shields based on relations at
> https://kbk.is-a-geek.net/catskills/test4.html?la=42.7440&lo=-72.4830&z=11
> .
> That link is chosen to illustrate an area that intermixes 'tag on way'
> with 'tag on relation'. Unfortunately, my time is limited, so the
> project has stagnated for a few weeks.  I've not given up, though; the
> next task will have to be to generate a pull request to adapt
> osm2pgsql optionally to preserve relations, with two new tables to
> track them.
>

Doing good work there, fixing the problem.
_______________________________________________
Tagging mailing list
Tagging@openstreetmap.org
https://lists.openstreetmap.org/listinfo/tagging

Reply via email to