[Openstreetmap] Re: Naming segments using applet

Immanuel Scholz immanuel.scholz at gmx.de
Wed Dec 7 19:36:41 GMT 2005


> Do you (as a theorist) have a better suggestion?  Should we just
> rename all the streets in the world so they are consistent?  How would
> your "street" datatype work?

My suggestion is the follow:

Line segments are just connections between two points. They describe a
linear component of the physical layout of the map we want to draw. So
segments alone are not a street, but only a line segment. If you define
a segment you say: "Here is something linear in the world."

A "track" (or a special type of track: "street") is a list of line
segments forming a logical path on those segments.

This implies to me, that if you have a "two names for a street", you
have two tracks with two names who happen to share the same physical
location. The fact something is a "street" is an attribute of the
physical line. The name is an attribute of the logical connection of
these lines.

> a ---- b ---- c ---- d --- e ---- f
> where there is a "street" data type from a to f named "route 66" and
> all the segments (a-b, b-c, c-d, etc) are also named "route 66" but
> d-e is named "baker street" on the server.

My solution:
There is a track data type named "route 66" from a to f and there is
another track data type named "baker street" from d to e (only one
segment). The line segments (a-b, b-c, c-d, d-e, e-f) have common
physical attributes, as example that they are "streets" (maybe
class=street) and that they are 2,4m in width or whatever.

The fact, that the baker street indeed IS the route 66 is determined
from the fact, that both tracks share a common physical world
representation: The line segment d-e.

This is my theory. It isn't foolproof, it has problems of its own kind
but it is the naturally look I have on the data types. ;-)

There can be two very pragmatic relaxes to this:
1) If a street only spans one segment and no other street occupies the
same segment, then the segment is interpreted as a street.
2) If a street spans more than one segment but no other street occupies
any of these segments and all segments named the same and all segments
are in a chain next to each other, then these segments are interpreted
as a street.

This should fit the most common cases of small streets in the city
without the need of adding additional track data types over them.

Of course, all this can only be happen when the server understand tracks
(streets, rivers, fences, bus_routes or whatever a "list of segments"
are finally called) at all...... ;-)

Ciao, Imi.

PS: My preference of the word "track" comes only from the fact, that I
named my variables in JOSM already after this ;-). And I think a data
type called "street" is uncool for representing a river in the
world ;-).

More information about the talk mailing list