﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
13958	Warn about nested sports_centres also if both are on areas	Hufkratzer	team	"==== What steps will reproduce the problem?
1. load [http://www.openstreetmap.org/way/35470113 outer sports_centre] and [http://www.openstreetmap.org/way/197860827 inner sports_centre].
2. Execute the validator. 

==== What is the expected result?
Validator should give a warning about the nesting.

==== What happens instead?
Validator gives no warning about the nesting.

==== Please provide any additional information below. 
It seems the validator only warns if the inner sports_centre is a node, not if is an area.

Wiki: [https://wiki.openstreetmap.org/wiki/Tag:leisure=sports_centre]: ""''Note that you should not place the leisure=sports_centre on inner elements. Use this tag once on the outer area of the sports centre [https://wiki.openstreetmap.org/wiki/One_feature,_one_OSM_element {One feature, one OSM element)]''""

There seems to be the same behaviour for pitches. Do nested pitches make sense?

{{{
URL:http://josm.openstreetmap.de/svn/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2016-11-06 20:18:38 +0100 (Sun, 06 Nov 2016)
Build-Date:2016-11-06 21:45:03
Revision:11223
Relative:URL: ^/trunk

Identification: JOSM/1.5 (11223 en) Windows XP 32-Bit
Memory Usage: 150 MB / 989 MB (46 MB allocated, but free)
Java version: 1.8.0_91-b14, Oracle Corporation, Java HotSpot(TM) Client VM
Screen: \Display0 800x600
Maximum Screen Size: 800x600
Dataset consistency test: No problems found

Plugins:
+ PicLayer (32796)
+ apache-commons (32699)
+ scripting (30760)

Tagging presets:
+ https://josm.openstreetmap.de/josmfile?page=Presets/NewTags&zip=1

Map paint styles:
- https://josm.openstreetmap.de/josmfile?page=Styles/MTB&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Surface&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Surface-DataEntry&zip=1

Last errors/warnings:
- W: Unable to remove primitives from TestError [tester=MapCSSTagCheckerAndRule [rule=GroupedMapCSSRule [selectors=[node[ParameterFunction~equal(class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>),class java.lang.Object ParameterFunction~parent_tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>))] >LinkSelector{conditions=null} *[leisure]], declaration=Declaration [instructions=[throwWarning: ArrayFunction~tr(class java.lang.String <{0} inside {1}>,class java.lang.String ArrayFunction~concat(class java.lang.Object <leisure=>,class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>)),class java.lang.String ArrayFunction~concat(class java.lang.Object <leisure=>,class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>)));, group: ArrayFunction~tr(class java.lang.String <{0} inside {1}>,class java.lang.String <leisure>,class java.lang.String <leisure>);], idx=16]]], code=3000, message=leisure inside leisure].: java.lang.UnsupportedOperationException
- W: Unable to remove primitives from TestError [tester=MapCSSTagCheckerAndRule [rule=GroupedMapCSSRule [selectors=[node[ParameterFunction~equal(class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>),class java.lang.Object ParameterFunction~parent_tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>))] >LinkSelector{conditions=null} *[leisure]], declaration=Declaration [instructions=[throwWarning: ArrayFunction~tr(class java.lang.String <{0} inside {1}>,class java.lang.String ArrayFunction~concat(class java.lang.Object <leisure=>,class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>)),class java.lang.String ArrayFunction~concat(class java.lang.Object <leisure=>,class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>)));, group: ArrayFunction~tr(class java.lang.String <{0} inside {1}>,class java.lang.String <leisure>,class java.lang.String <leisure>);], idx=16]]], code=3000, message=leisure inside leisure].: java.lang.UnsupportedOperationException
- W: Unable to remove primitives from TestError [tester=MapCSSTagCheckerAndRule [rule=GroupedMapCSSRule [selectors=[node[ParameterFunction~equal(class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>),class java.lang.Object ParameterFunction~parent_tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>))] >LinkSelector{conditions=null} *[leisure]], declaration=Declaration [instructions=[throwWarning: ArrayFunction~tr(class java.lang.String <{0} inside {1}>,class java.lang.String ArrayFunction~concat(class java.lang.Object <leisure=>,class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>)),class java.lang.String ArrayFunction~concat(class java.lang.Object <leisure=>,class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>)));, group: ArrayFunction~tr(class java.lang.String <{0} inside {1}>,class java.lang.String <leisure>,class java.lang.String <leisure>);], idx=16]]], code=3000, message=leisure inside leisure].: java.lang.UnsupportedOperationException
- W: Unable to remove primitives from TestError [tester=MapCSSTagCheckerAndRule [rule=GroupedMapCSSRule [selectors=[node[ParameterFunction~equal(class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>),class java.lang.Object ParameterFunction~parent_tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>))] >LinkSelector{conditions=null} *[leisure]], declaration=Declaration [instructions=[throwWarning: ArrayFunction~tr(class java.lang.String <{0} inside {1}>,class java.lang.String ArrayFunction~concat(class java.lang.Object <leisure=>,class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>)),class java.lang.String ArrayFunction~concat(class java.lang.Object <leisure=>,class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>)));, group: ArrayFunction~tr(class java.lang.String <{0} inside {1}>,class java.lang.String <leisure>,class java.lang.String <leisure>);], idx=16]]], code=3000, message=leisure inside leisure].: java.lang.UnsupportedOperationException
- W: Unable to remove primitives from TestError [tester=MapCSSTagCheckerAndRule [rule=GroupedMapCSSRule [selectors=[node[ParameterFunction~equal(class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>),class java.lang.Object ParameterFunction~parent_tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>))] >LinkSelector{conditions=null} *[leisure]], declaration=Declaration [instructions=[throwWarning: ArrayFunction~tr(class java.lang.String <{0} inside {1}>,class java.lang.String ArrayFunction~concat(class java.lang.Object <leisure=>,class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>)),class java.lang.String ArrayFunction~concat(class java.lang.Object <leisure=>,class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>)));, group: ArrayFunction~tr(class java.lang.String <{0} inside {1}>,class java.lang.String <leisure>,class java.lang.String <leisure>);], idx=16]]], code=3000, message=leisure inside leisure].: java.lang.UnsupportedOperationException
- W: Unable to remove primitives from TestError [tester=MapCSSTagCheckerAndRule [rule=GroupedMapCSSRule [selectors=[node[ParameterFunction~equal(class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>),class java.lang.Object ParameterFunction~parent_tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>))] >LinkSelector{conditions=null} *[leisure]], declaration=Declaration [instructions=[throwWarning: ArrayFunction~tr(class java.lang.String <{0} inside {1}>,class java.lang.String ArrayFunction~concat(class java.lang.Object <leisure=>,class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>)),class java.lang.String ArrayFunction~concat(class java.lang.Object <leisure=>,class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>)));, group: ArrayFunction~tr(class java.lang.String <{0} inside {1}>,class java.lang.String <leisure>,class java.lang.String <leisure>);], idx=16]]], code=3000, message=leisure inside leisure].: java.lang.UnsupportedOperationException
- W: Unable to remove primitives from TestError [tester=MapCSSTagCheckerAndRule [rule=GroupedMapCSSRule [selectors=[node[ParameterFunction~equal(class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>),class java.lang.Object ParameterFunction~parent_tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>))] >LinkSelector{conditions=null} *[leisure]], declaration=Declaration [instructions=[throwWarning: ArrayFunction~tr(class java.lang.String <{0} inside {1}>,class java.lang.String ArrayFunction~concat(class java.lang.Object <leisure=>,class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>)),class java.lang.String ArrayFunction~concat(class java.lang.Object <leisure=>,class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>)));, group: ArrayFunction~tr(class java.lang.String <{0} inside {1}>,class java.lang.String <leisure>,class java.lang.String <leisure>);], idx=16]]], code=3000, message=leisure inside leisure].: java.lang.UnsupportedOperationException
- W: Unable to remove primitives from TestError [tester=MapCSSTagCheckerAndRule [rule=GroupedMapCSSRule [selectors=[node[ParameterFunction~equal(class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>),class java.lang.Object ParameterFunction~parent_tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>))] >LinkSelector{conditions=null} *[leisure]], declaration=Declaration [instructions=[throwWarning: ArrayFunction~tr(class java.lang.String <{0} inside {1}>,class java.lang.String ArrayFunction~concat(class java.lang.Object <leisure=>,class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>)),class java.lang.String ArrayFunction~concat(class java.lang.Object <leisure=>,class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>)));, group: ArrayFunction~tr(class java.lang.String <{0} inside {1}>,class java.lang.String <leisure>,class java.lang.String <leisure>);], idx=16]]], code=3000, message=leisure inside leisure].: java.lang.UnsupportedOperationException
- W: Unable to remove primitives from TestError [tester=MapCSSTagCheckerAndRule [rule=GroupedMapCSSRule [selectors=[node[ParameterFunction~equal(class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>),class java.lang.Object ParameterFunction~parent_tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>))] >LinkSelector{conditions=null} *[leisure]], declaration=Declaration [instructions=[throwWarning: ArrayFunction~tr(class java.lang.String <{0} inside {1}>,class java.lang.String ArrayFunction~concat(class java.lang.Object <leisure=>,class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>)),class java.lang.String ArrayFunction~concat(class java.lang.Object <leisure=>,class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>)));, group: ArrayFunction~tr(class java.lang.String <{0} inside {1}>,class java.lang.String <leisure>,class java.lang.String <leisure>);], idx=16]]], code=3000, message=leisure inside leisure].: java.lang.UnsupportedOperationException
- W: Unable to remove primitives from TestError [tester=MapCSSTagCheckerAndRule [rule=GroupedMapCSSRule [selectors=[node[ParameterFunction~equal(class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>),class java.lang.Object ParameterFunction~parent_tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>))] >LinkSelector{conditions=null} *[leisure]], declaration=Declaration [instructions=[throwWarning: ArrayFunction~tr(class java.lang.String <{0} inside {1}>,class java.lang.String ArrayFunction~concat(class java.lang.Object <leisure=>,class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>)),class java.lang.String ArrayFunction~concat(class java.lang.Object <leisure=>,class java.lang.Object ParameterFunction~tag(class org.openstreetmap.josm.gui.mappaint.Environment <leisure>)));, group: ArrayFunction~tr(class java.lang.String <{0} inside {1}>,class java.lang.String <leisure>,class java.lang.String <leisure>);], idx=16]]], code=3000, message=leisure inside leisure].: java.lang.UnsupportedOperationException
}}}"	defect	closed	normal		Core validator	tested	invalid	leisure sports_centre	
