Closed matkoniecz closed 10 years ago
Thank you for the report. I agree that it's too noticeable especially at a low zoom level. I've noticed this a while as well but could not determine the precise cause.
See #197 for more information. (close this issue).
highway
coverage is selective, I mean that not all values are targeted by carto rules.
This value should be handled. But I wonder if this is the right scheme.
Shouldn't it be something like, say, highway=residential
and then construction=highway
? With highway=construction
we totally lose the info of which kind of road is being constructed.
I think that semantically it's not correct. And also at rendering level this means that we have no other choice than to render both highway or service roads the same, which is far from ideal.
Anyway, it can't stay as it is, it's clearly a rendering bug.
I would expect rather highway=construction, construction=residential.
highway=residential and then construction=highway would cause problems with data consumers that are not checking for construction key. Good tagging scheme should be fail-safe - not recognising it should not cause blatant misrepresentation of other, especially widely used tagging scheme.
For example it would be a bad idea to tag prisons as amenity=hotel, involuntary=yes, access=customers. I think that it is a similar case.
I would expect rather highway=construction, construction=residential.
Good point!
Started working on this. A few elements:
highway=construction
without any construction=*
tag will be filtered outhighway=construction
with a construction
tag will be displayed with dash, only starting at zoom 15highway=xxxx
and construction=yes
will also be taken into account (a bit magically)This is work in progress, I need to go on more edge cases before I can pull on the server.
Before/after:
highway=xxxx and construction=yes will also be taken into account (a bit magically)
Is it a good idea? It encourages less popular and worse tagging scheme (because everybody needs to be aware about it to avoid reating roads in conctruction as a ready).
Let's take this as a real life version of the mantra "We should be liberal in what we receive & strict on what we send" :)
For the record, 3000 cases on Taginfo: http://taginfo.openstreetmap.org/tags/construction=yes#combinations
vs 75k for http://taginfo.openstreetmap.org/tags/highway=construction
We should be liberal in what we receive & strict on what we send
I think that in case of OSM data it is better to encourage proper tagging chemes - at least in cases where competition is between better, more popular and worse, less popular one.
Yes, absolutely, I totally agree on this. And there is not doubt around the good scheme to use. But in the mean time it's good to be a bit open, because I don't think someone will clean all the 3000 cases in one day when our rendering doesn't support the construction=yes
scheme anymore.
So we have three options:
construction=yes
as we do with my last commit, as a "be liberal" philosophyconstruction=yes
will not appear at allconstruction=yes
into account, so the roads will appear as normal roads (which is the case with the current prod version of the rendering)I think option 3 is clearly worst, because we are displaying a wrong information, so I would definitely avoid it. Option 2 is a bit radical, but I'm fine going this way if arguments and consensus make this the strong choice. As said, I've a small preference for option 1, but without any strong argument more than "be liberal when the database is various".
@skorasaurus, @severinmenard, @jaakkoh, thoughts?
Hmm. I actually agree that supporting highway=* + construction=yes in rendering sends a bit of a wrong signal. The only related exception to this is highway=* + construction=minor, which I'm not sure is actually supported by any rendering -- and doesn't seem have gained much use (940 way occurrances : http://taginfo.openstreetmap.org/tags/construction=minor#overview ; it could be a handy tag in noting that this road is under construction but still in use -- expect delays / don't expect to necessarily be able to drive through with your Maserati). .. A real-life example from the Old Highway to Leon (from Managua), about 25 km of which is currently being re-built. This will take over half a year (if things go well) and if OSM was even relatively mature in Nicaragua this stretch of road should definitely be tagged with construction=minor and routing engines should avoid the road -- and it would be good if it was also visible in map renderings .. at least road specialized ones: http://www.mapillary.com/map/im/2d30YZoShGI4lxx1GZXgFg
So to the question: The right thing to do would be the 2nd option -- and perhaps the cleanup should be facilitated? That would be a good job for MapRoulette .. or/and perhaps could be added to Osmose? .. Of course this is just my wise-assing because my ability to do anything else but fix those occurrences in JOSM is, well, non-existent.
That would be a good job for MapRoulette .. or/and perhaps could be added to Osmose?
I am even considering an automated change of [highway=foo, construction=yes] to [highway=construction, construction=foo].
OK, I'm filtering construction=yes
explicitly now :)
Good idea @mkoniecz . Double checking the wiki page http://wiki.openstreetmap.org/wiki/Key:construction it's clear that the use of construction=yes is not documented -- and as you commented before it's actually quite problematic. .. If someone's meant construction=yes to actually mean construction=minor then IMO it's just too bad. So yea, do you want to go ahead with that fix of the =yes tag? (I was first thinking if it should be consulted over some list but given the wiki page + the problems I think it's a pretty pure tagging mistake and could be just fixed without further consultations .. I've done a bunch of these in limited areas that I know but realize that I'm contemplating on consulting as this is a global fix.)
@jaakkoh For now I am editing it manually, starting from my region to check whatever there are some things that I failed to predict ( finder: http://overpass-turbo.eu/?key=construction&value=yes&template=key-value ).
@jaakkoh
it's clear that the use of construction=yes is not documented
Unfortunately there is "Another option is to set the tag construction=yes." on this wiki page.
@mkoniecz Right. Yea, I wouldn't be surprised if even I would have used the construction=yes in some cases simply because of earlier days' ignorance or later days' momentary lapse of reason. And surely better to verify cases, which might well render better outcomes in some/many(?) cases (if e.g. a new road has been finished already and it's visible in new imagery). But with the time I was pondering about this I just couldn't think what would be a case where the documented proper tagging would be bad vs. the undocumented construction=yes. .. By now and digging into this you may well already have ideas on this. Thanks anyways for grabbing this.
I hope that I am not going into unimportant details but I am learning that there is a distinction between roads that are under construction but still passable as @jaakkoh mentioned, and roads that are closed (not passable from vehicles) because of construction.
I don't know whether any rendering or tool that exists that support the 'roads that are under construction but still passable'. If we want this map to be the first one, we can go for it. If that's the case, one idea that I have would be highway=tertiary and construction=minor to denote that there's construction on a tertiary road but it's still passable. It's also mentioned on the wiki page as well.
I agree that construction=yes a bit unclear of what it means and we don't know of documentation anywhere stating its purpose. I'm for option 2, not rendering it at all.
Lastly, I see that our preset is continuing incorrect tagging and needs to be fixed. Right the HOT preset allows you tag a road as highway=construction with no other tags!
see http://www.openstreetmap.org/?mlat=50.0686&mlon=19.9850#map=15/50.0686/19.9850&layers=H
one of roads: http://www.openstreetmap.org/way/236994871