﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
20130	Use mapcss rules instead of CrossingWays java code to find overlapping areas	GerdP	team	"Today we use the java code in `CrossingWays` to find e.g. ""Crossing building/residential area"".
This should better be done using a rule like this
{{{
#!mapcss
/* Building overlapping landuse residential (spatial test) */
area[building][building!~/no|entrance/] ⧉ area[landuse=residential]{
  throwWarning: tr(""Overlapping buildings/residential area"");
}
}}}

Reasoning: 
- it also handles multipolygons (if they are complete)
- it marks the overlapping area, not the crossing segments
- it also handles overlaps where the two areas share nodes

In !r17084 `CrossingWays` also finds crossings between 
- building/waterway=riverbank (""Crossing building/waterway"")
- building/railway=platform (""Crossing building/railway"" (false positive?)
It doesn't find other crossing like those between building/natural=water, see #20121

Maybe it is possible to create a single mapcss test to catch different types of areas which shouldn't overlap a building?

I didn't test the impact on performance, I assume it is rather small."	enhancement	new	normal		Core				Klumbumbus
