[OSM-talk] Bridges / viaducts for railways
matthew-osm at newtoncomputing.co.uk
matthew-osm at newtoncomputing.co.uk
Wed Jan 30 00:52:59 GMT 2008
Hi,
On Mon, Jan 28, 2008 at 07:16:25PM -0000, Andy Robinson (blackadder) wrote:
> >> Why is it not a property like bridge, cutting etc. and
> >> will it render correctly? Should it be changed to
> >> viaduct=yes?
> >
> >Ewww, yuck... boolean flags.
> >
> >Personally I would tag as:
> >
> > railway=rail
> > bridge=viaduct
> >
>
> bridge and viaduct are two separate types of structure so
> strictly speaking bridge=viaduct is incorrect.
They might be different to you as a civil engineer... to me
a viaduct looks like lots of bridges next to each other
(i.e. huh, what's the difference, really?) ;-)
Actually, it's more of a thing I have about using on/off,
yes/no, true/false type tags - they generally are not right
in my opinion.
For instance, take the same principle applied to roads
highway=yes
motorway=yes
We use highway=motorway here - if nothing else it stops you doing the silly
highway=yes
motorway=yes
secondary=yes
Similarly, something can't be both a bridge and a viaduct.
Therefore you want something like
over=bridge
or
over=viaduct
a) you reduce the keyspace, and b) you can't have
bridge=yes
viaduct=yes
As usual in my case "over" is a bad name for a key. I guess
that's why I stuck to the more generic "bridge" before, with
"bridge=yes" being the general case. It's the same as saying
bridge=suspension, rather than bridge=yes, suspension=yes
(or even bridge_type=suspension - eugh).
Maybe something like "transit=" would be better (in the
sense of "how this way gets from A to B") and could then
include tunnel, cutting, embankment, etc in the list of
values as well as bridge and viaduct.
Basically, I would say that every "object-type" key (i.e.
not things like name=) should have as many non-coexistant
values* as possible (if that makes sense), and that single
flags (i.e. where a key only ever has one value) should be
discouraged wherever possible.
* i.e. you can't have both on the same "object", such as
suspension and viaduct
> We already use layer=+/-5 for setting display layering and
> I always envisaged the same simple system could be used
> for cuttings and embankments.
Yes. I guess the issue here is that cuttings/embankments are
usually drawn in on maps. Maybe it's a renderer problem.
> I'd prefer to see railway=rail for all rail corridors and
> a secondary tag for the type of service/stock used - ie
> metrorail/subway/underground/freight etc etc etc
Ditto to the above. railway=rail is basically the same as
railway=yes if you say that. A railway can't be both subway
and normal rail, so you therefore use railway=rail or
railway=subway etc. If nothing else you know that it's some
type or other of railway, without even having to look at the
value (same for bridge, etc).
Anyway, that's my computer science thinking - back to your
civil engineer ideas... ;-)
Cheers,
--
Matthew
More information about the talk
mailing list