[OSM-talk] Connecting tags using array syntax

Tobias Knerr osm at tobias-knerr.de
Wed Apr 1 11:46:29 BST 2009


Candid Dauth schrieb:
> The problem I am seeing is that there seems to be no way to define a relationship between single tags of a way or a node.
> 
> 1. Different things in one node or area have different opening hours.

These should simply be individual objects, imo. For example, buildings
should be mapped in a more detailled way, with building outline and the
shops in them being separated. There have been proposals for a building
relation to unambiguously associate those objects.

Even if you don't map buildings at that level of detail yet, using a
bunch of nodes works for most applications.

> 2. A restriction only applies for a specified class of vehicles.
> 3. A restriction only applies in one direction of the way.
> 4. A combination of the above.

Are you aware of
http://wiki.openstreetmap.org/wiki/Proposed_features/Conditions_for_access_tags
http://wiki.openstreetmap.org/wiki/Proposed_features/Extended_conditions_for_access_tags
(single tag per restriction, using almighty colons ;-))

or the alternative proposal
http://wiki.openstreetmap.org/wiki/Proposed_features/Access_restrictions
(using relations as tag bundles -- page is still a bit messy)

which both deal with complex restrictions?

Array syntax or similar options have indeed been discussed, too, e.g.
over there:
http://wiki.openstreetmap.org/index.php/WikiProject_Germany/Workshops/Linienbündel
http://forum.openstreetmap.org/viewtopic.php?pid=13730#p13730
(German wiki/forum)

> 5. A road has a pavement on both sides, but the pavements have different surfaces.

That's the one case where I think your solution might indeed be better
than what has been proposed so far, especially the footway:left
"solution" that cannot handle anything but the most simple cases.

Again, however, the use of individual objects is likely preferable. It's
sometimes necessary anyway (actually modelling complicated junctions)
and could be sufficiently convenient with a bit of editor magic (moving
all lanes in a lane group together, for example).

See also: draft for way+relation based mapping (possibly too complex
because of the option to use relations for lanes):
http://wiki.openstreetmap.org/wiki/Proposed_features/lane_and_lane_group

> I think this could solve a whole bunch of problems, in fact it is the only way I can think of that can solve some of the cases I mentioned above.

Imo, all of these cases could be solved by using individual objects,
most notably relations. Some of them can alternatively be solved by
other means (such as conditional tagging). Your array syntax simply
seems to be a method of creating "virtual" objects and could be
considered a workaround for the poor relation support in present
editors. It's not inherently superior to individual objects, though.

Tobias Knerr




More information about the talk mailing list