#6363 closed defect (fixed)
Color Style cause Validator Warning (Style for inner way equals multipolygon)
Reported by: | SunCobalt | Owned by: | team |
---|---|---|---|
Priority: | normal | Milestone: | 15.02 |
Component: | Core validator | Version: | |
Keywords: | Cc: | Mkyral |
Description (last modified by )
create a MP with outer and inner ways that get the same color in JOSM. Use, for example, landuse=farmland as outer and landuse=vineyard (meadown does the same) as inner. It will produce a "Style for inner way equals multipolygon" warning.
Attachments (0)
Change History (22)
comment:1 by , 14 years ago
Resolution: | → wontfix |
---|---|
Status: | new → closed |
comment:2 by , 14 years ago
the suggestion "You can simply fix this by applying the outer style to the relation instead, as is recommended." wasn't helpful. I did it as suggested (landuse= tag to relation) but got the wrong warning. Please try relation: http://www.openstreetmap.org/browse/relation/1592325
The wrong warning only come up for inner areas, which are visualised by the same color in JOSM. So having a MP-relation with landuse=farmland (tag in the relation) and an inner polygon with landuse=vineyard, I am getting this warning. If I have an inner polygon that is visualised in a different color like landuse=farmyard, no warning is displayed.
comment:3 by , 14 years ago
Resolution: | wontfix |
---|---|
Status: | closed → reopened |
follow-up: 5 comment:4 by , 14 years ago
Yes, right. Maybe we should degrade that warning to info level in case the style is applied to the multipolygon.
follow-up: 7 comment:5 by , 14 years ago
Replying to stoecker:
Yes, right. Maybe we should degrade that warning to info level in case the style is applied to the multipolygon.
No, there is definitively a problem in code as it does not work only with some combinations but works with others.
comment:6 by , 14 years ago
As it says: "Style for inner way equals multipolygon". It does not say tags or whatever, but style. When two styles are equal, JOSM can't distinguish them any more. When all areas are drawn alike, then this will always issue a warning.
comment:7 by , 14 years ago
comment:9 by , 13 years ago
The check "style for inner way equals multipolygon" still does not appear to take differences in tagging of the multipolygon and its inner members into account at all when issuing a warning. This leads to incorrect warnings where the colors JOSM uses for the two features happen to be identical.
I've observed some more combinations where this happens:
- amenity=school and amenity=parking
- leisure=track and leisure=pitch, even with different sport and surface tags
When switching from "internal style" to "Potlatch 2 style", these validator warnings disappear. It does not make a difference whether the tags for the multipolygon are on the relation or the outer way.
IMO this validator feature should either check for identical tags instead of identical rendering style, or be downgraded to info.
comment:10 by , 12 years ago
Description: | modified (diff) |
---|---|
Reporter: | changed from | to
comment:12 by , 11 years ago
I want to bring this back to focus.
quote from #8161:
bastiK:
Replying to Don-vip:
What about making some light changes in the rendering style ? We currently have the exact same green color for various landuses, we could use small variants to disable this warning ? Like a greener green for grass :)
Some users prefer the Potlatch 2 style and so far I kept it in sync with upstream.
I don't understand why Potlatch style should dictate style rules for the josm default style.
I would create a patch, which changes the colors for the areas which are currently rendered the same in elemstyles.mapcss by just a bit. So the warning "Style for inner way equals multipolygon" should no longer appear for e.g. landuse=meadow in landuse=farmland or landuse=garages in landuse=residential.
Example:
residential color: f0f0f0
garages color: f0f0f1
I think you can't even see the difference.
Would such a patch get accepted?
follow-up: 14 comment:13 by , 11 years ago
This warning should be degraded to information level. OSM is happy with different landuses in one multipolygon. JOSM styles are not so relevant in such situation. If you want to help mappers, you should check tags, not styles.
comment:14 by , 11 years ago
Replying to pl71:
This warning should be degraded to information level. OSM is happy with different landuses in one multipolygon. JOSM styles are not so relevant in such situation. If you want to help mappers, you should check tags, not styles.
If you define a working system to check if two sets of tags are equal regarding the style, your welcome.
I think you can't even see the difference.
Would such a patch get accepted?
Does no harm, why not?
follow-up: 16 comment:15 by , 11 years ago
Yes, I agree, that this warning could warn a mapper for a possible incorrectness - for example landuse=farmland inside landuse=farmland is not an error, but just nonsense.
But I can not see any other reason - for example same color(style) for farmland and for meadow inside JOSM is not a warning at all. You can warn users when they choose color schemes or colors or styles, but not inside validator, when they expect warnings connected with OSM rules.
Also - if you add name=foo to the inner way, the style immediately becoming different and the warning disappears.
For example you can check the following way: Is there a same tag=value combination for the inner way and for the relation itself (outer ways also) - raise warning.
If the inner way is tagged with natural=water and is supposed to be an island inside a multipolygon which is lake (natural=water) - Yes, this is warning or error. Landuse=farmland inside landuse=farmland, etc...
Of course you could have same tags on both ways: a green island inside green sea, both tagged with color=green, but this case is considered rare. You raise warning, not error. At least this method will produce less false positive warnings and less questions in users of JOSM.
comment:16 by , 11 years ago
Replying to pl71:
Yes, I agree, that this warning could warn a mapper for a possible incorrectness - for example landuse=farmland inside landuse=farmland is not an error, but just nonsense.
It was a very common nonsense some years ago - don't know current situation.
Also - if you add name=foo to the inner way, the style immediately becoming different and the warning disappears.
Where do you get this idea from? Tested it some minutes ago and this is not the case.
For example you can check the following way: Is there a same tag=value combination for the inner way and for the relation itself (outer ways also) - raise warning.
I alread said: "If you define a working system to check if two sets of tags are equal regarding the style, your welcome". This is a very complex topic as we don't have a defined set of tags which influence the area type, but an unlimited number. And also an unlimited number of tags which do not relate to the area type. So we choose the only working way simply using our own styles for detection of equality instead of repeating the same efforts in the validator again.
comment:17 by , 11 years ago
Also - if you add name=foo to the inner way, the style immediately becoming different and the warning disappears.
Where do you get this idea from? Tested it some minutes ago and this is not the case.
Nop, tested again:
relation tagged with:
type=multipoligon
landuse=farmland
outer way - closed, no tags
inner way - closed tagged with:
landuse=farmland
name=foo
If you validate above MP there is no warning, if you delete tag name=foo, then you will have the subject warning.
I don't want to upload above to OSM, but you can check it easily. (JOSM 7480)
If you define a working system to check if two sets of tags are equal regarding the style, your welcome
Yes, this task is for artificial intelligence, I agree it would be difficult.
But using styles instead is like going easy way which lead to misunderstanding, false positives and finally ignoring this type of warning. An other option is to use many different colors, just to avoid the warning.
There could be anything inside anything - meadow inside farmland, lake inside farmland, volcano inside farmland, etc. The world is colorful.
If you explain what exactly this warning is trying to warn the user, then maybe I can give you some further advice.
If the warning is to avoid simple farmland inside farmland, then such a working system is not necessary, just check for same tag=value as mentioned before.
comment:19 by , 10 years ago
Cc: | added |
---|
comment:21 by , 10 years ago
Milestone: | → 15.02 |
---|
A validator who checks for equal tags on inner and MP would still be nice, but is not invented yet.
comment:22 by , 10 years ago
Yes, please. Check on tags, not resulting color. I think OSM Inspector has the check for inner=outer tags.
You can simply fix this by applying the outer style to the relation instead, as is recommended.