Henry Loenwind wrote:
> first, the following are some half-baked ideas I just want to get out of 
> my head because I need the space they are taking up ;)

I think you brought up some valid points. The echo so far proves that
you touched regions "for the experts only"[TM], nothing the average
mapper feels able to discuss. But nevertheless it has to be discussed.

> Reoccurring problem 1: Way splitting. At the moment we need split ways 
> at every point there is some change to them. While this is much better 
> than segments were, recombining them with relations just demotes ways to 
> segments and makes relations our new ways. Nothing gained. Going the 
> opposite way, by not splitting the ways and giving parts of them 
> different properties with relations is not much better---there is no 
> support for including parts of a way in a relation, so the relations 
> will contain one way and (hopefully) two nodes an some obscure meaning 
> how to cut the way. (Note: "obscure" meaning "not in the data model".)

As Frederik pointed out: Why in general are split ways bad? No matter
how you turn it around, a way will always be split at a certain level.

As an example: A primary street running from village A to B might change
its name somewhere in the middle, but using the same reference number.
And each part of the named street has two different maxspeeds (inside
the village and outside).

With the current model, we have four ways.

Using relations, one could group each two ways with the same name to be
"one named street". From the data models perspective, this sounds
preferable. But what is gained with this approach? The current tools
force mappers to think in internal data structures. But that's because
the tools do not comfortably, automagically create relations based on
user input. There are two ways with a shared node and the same name?
Then make the name a relation. Of course this could be done internally
in the API, transparently, just to optimize data storage or whatever
this is good for, and me might end up having two different API modes,
one with relations, and one without (all tags within relations mapped as
attributes to every single way), or the API data model becomes more and
more obscured by the editing tools, because it simply does not help
mappers to be forced to think about all the internal stuff.

The point is: If the development goes away from presenting ways and
relations to the mapper, then it becomes less and less relevant to the
mapper to worry about how it is all stored in the "data blackbox".

> Reoccurring problem 2: Two side of a coin, oops, a way. Most ways have 
> two sides, often they are the same, but also often they are not. 
> Different maximum speeds, or different access rules, sometimes even 
> different highway types (highway=residential, oneway=yes on one side, 
> highway=cycleway the other). No clean way to model this, too. There are 
> some tags for common cases, like cycleway=opposite, but that's all.

While I don't see the point with splitting ways, here you have a valid
point - but let me state the problem I see a bit different.

I don't like the method of current "oneway street" tagging, because it
interferes with other street tagging relying on the direction of the street.

This somehow relates to your suggestion:

>    <tag k="bridge" v="yes" from="P1" to="P2" side="both"/>
>    <tag k="maxspeed" v="30" from="P1" to="P2" side="left"/>
>    <tag k="maxspeed" v="50" from="P2" to="P1" side="right"/>
> 
> ...
>    <tag k="highway" v="bus_stop" from="P1" to="P1" side="left"/>
>    <tag k="highway" v="bus_stop" from="P2" to="P2" side="right"/>
> ...

The problem I see is not where streets are actually tagged as oneway
streets - it's all streets without them that make the problem. Because
if a oneway street is accidentially reversed, this error will eventually
be noticed and corrected. But every normal street might be reversed
without any noticable impact as of today.

But there is a need to tag not just the direction of the main traffic
component of the street (e.g. motorized, fast, four-wheeled), but to add
facilities for "the others": pedestrians, cyclists and so on.

Using current tagging, you would be able to add a tag "both sides of
this street have a cycleway". And this might be rendered as a blue (or
blue dotted, to mimik the pure cycleway) border on the street. How do I
tag that only one side of the street has a cycleway or a
sidewalk/pavement. I could use "cycleway=left", but where is "left". It
has to depend on the direction of the way (although I don't really like
this directional word for this task, there should be some other way to
encode this fact). But the direction is directly connected with the
oneway tag, and I really doubt that the editors, which until now have an
easy task reversing a way, will be able to consider and adjust all tags
connected with the direction of the way.

I'd suggest to let the original creator of a way define its direction,
and then to never touch it again. Every tagging which relies on the ways
direction can either be along it's direction, or against it. All current
oneway streets would be "oneway=1" or "oneway=yes". This would be
extended to "onway=-1" for new oneway streets which run agains the new
ways direction. If a mapper has to change the direction of the oneway
street, he will only change the oneway tag - not the way, avoiding to
mess with any other directional tagging which might be invented in the
future.

If the direction of a way cannot be changed, every additional tagging
(cycleways, bus stations, maxspeeds and so on) can rely on this
information to be eternal. If it really has to be changed, there's
always the option to create a new way, deleting the old one, and
apropriately move the tagging from the old to the new way.

I'd think that this suggestion has a much smaller impact on the current
database, because it could be implemented ad hoc through a generel
agreement not to use the "reverse way" features currently available in
the editors, eventually removing them and enforcing the "no reverse"
rule in the API (there will always be mappers who "mess" with the data
unintentionally, that's normal OSM business). Useful tagging schemes
would be created almost instantly, I think.


Disclaimer: ;)
I hope I explained my point as precise as I could, but I apologize if I
upset anyone by making any words to harsh or by ignoring any gentleman
behaviour - it is unintentional, English is not my native language.

Regards,
Sven

_______________________________________________
talk mailing list
talk@openstreetmap.org
http://lists.openstreetmap.org/listinfo/talk

Reply via email to