[Talk-GB] Relations

Peter Reed peter.reed at aligre.co.uk
Mon Mar 1 16:58:32 GMT 2010


Bob,

 

Adding boundaries really isn't all that difficult. Like most of these things
it's easy to get hung up on some of the details beforehand, but it works out
that it's fairly straightforward in practice. 

 

You seem to have understood the main points already.

 

For boundaries you will need to add a way where the boundary doesn't follow
an existing feature. 

 

Where the boundary does follow a feature then practice seems to vary a bit,
depending on what kind of feature.

 

I've come round to the view that where the boundary follows a stream or
river, then the best thing is to use the existing way, because the boundary
normally goes down the middle. Where it follows a road, I'm inclined to add
another way alongside - because most of the boundaries really fall to one
side of the road or the other, rather than following the centre line. But
people do it different ways, and I can't say that I've always done it this
way, or that I am completely consistent. On some of my early attempts other
people came along afterwards and fixed things, which is good. 

As with so many parts of the map, things get tightened up as the level of
detail grows.

 

Whether or not you are using existing ways you will have to use relations to
link all the bits together. 

It may be a bit "belts and braces", but in my view it's also best to tag the
ways themselves as boundary=administrative and admin_level=x number as well
as tagging the relation. But that's just because I have an irrational fear
of accidentally deleting a whole relation and never being able to recreate
it all. I suspect it's not really necessary.

 

Somebody may put me right, but I think the left-boundary and right-boundary
stuff was an early way of approaching this before all problem of the
hierarchies became apparent. I found it raised other practical complications
around which is left and what is right. O I've avoided doing it that way,
but there are some old tags still around, and I am not inclined to remove
them in case I've missed something. It seems to me that every boundary way
is part of at least two boundaries, and often more. There has to be a
boundary for each side, except at the coast, and then it is always part of a
higher level boundary anyway. So I reckon you need to use relations to cover
all the different things that are going on. 

 

On the way itself, adding boundary=admin covers all the combinations. If the
way is part of more than one boundary at more than one level then
admin_level=x;y seems best practice. After that each relation can cover
details like names, and anything else that is unique to each relation.

 

The order of ways in a relation don't matter. For rendering it's irrelevant
anyway. Other types of processing need to figure out how to join all the
bits together, but on a good boundary each segment only touches at the end
points. So if all is well, there is only one sensible way that they can be
linked.

 

I have no idea what a primitive is, but I seem to manage. Maybe someone else
will enlighten us both.

 

I hope this helps, but I suspect that any explanation is going to make this
appear more difficult than you will find it is in practice.

 

 

 

 

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstreetmap.org/pipermail/talk-gb/attachments/20100301/f7e91509/attachment-0001.html>


More information about the Talk-GB mailing list