Last change
on this file since 15997 was 15102, checked in by GerdP, 6 years ago |
fix #10391: Add support for "not element of" operator
- implement 4 new operators: ⊆,⊈,⊇,⊉
- ⊆ is a synonym for the existing ∈ operator that uses the
ContainsFinder , it
matches for elements which contain one or more elements matching the left Selectors
- ⊈ matches for elements which do not contain any element matching the left Selectors (also uses the
ContainsFinder )
- ⊇ matches for elements which are contained in an element matching the left Selectors, it uses the InsideOrEqualFinder and is typically slower than ⊆, so it is probably only usefull for the search dialog
- ⊉ matches for elements which are NOT contained in any element matching the left Selector
- Both
ContainsFinder and InsideOrEqualFinder work with areas, an area is either descibed by a closed way or a valid, complete relation of type=multipolygon or type=boundary. Incomplete objects do not contain something, invalid objects produce unpredictable results.
- An element A contains another element B when it is an area and when B is either a Node inside the area of A, or when it is also an area that is fully inside or equal to A. An element is not inside a relation when it is a member of that relation.
- hint: with ∈,⊆,⊈ prefer to use
area selector instead of * for the right side, for ⊇,⊉ use area selector on the left side
|
File size:
1.6 KB
|
Line | |
---|
1 | <?xml version='1.0' encoding='UTF-8'?>
|
---|
2 | <osm version='0.6' upload='never' generator='JOSM'>
|
---|
3 | <node id='-3879' action='modify' visible='true' lat='-22.69072960433' lon='-48.5607904595' />
|
---|
4 | <node id='-3877' action='modify' visible='true' lat='-22.69078106744' lon='-48.56082153115' />
|
---|
5 | <node id='-3875' action='modify' visible='true' lat='-22.6907376271' lon='-48.56085907164' />
|
---|
6 | <node id='-3871' action='modify' visible='true' lat='-22.69070289438' lon='-48.56081834975' />
|
---|
7 | <node id='-3863' visible='true' lat='-22.69071631095' lon='-48.56081028236' />
|
---|
8 | <node id='-3862' visible='true' lat='-22.69074204865' lon='-48.56081115962' />
|
---|
9 | <node id='-3861' visible='true' lat='-22.69071809155' lon='-48.56082765213' />
|
---|
10 | <node id='-3860' visible='true' lat='-22.69074528609' lon='-48.56083782836' />
|
---|
11 | <node id='123' version='3' lat='-22.69073023197' lon='-48.56082133585'>
|
---|
12 | <tag k='amenity' v='hospital' />
|
---|
13 | </node>
|
---|
14 | <way id='-3880' action='modify' visible='true'>
|
---|
15 | <nd ref='-3877' />
|
---|
16 | <nd ref='-3879' />
|
---|
17 | <nd ref='-3871' />
|
---|
18 | </way>
|
---|
19 | <way id='-3876' action='modify' visible='true'>
|
---|
20 | <nd ref='-3871' />
|
---|
21 | <nd ref='-3875' />
|
---|
22 | <nd ref='-3877' />
|
---|
23 | </way>
|
---|
24 | <way id='123' version='3' visible='true'>
|
---|
25 | <nd ref='-3861' />
|
---|
26 | <nd ref='-3860' />
|
---|
27 | <nd ref='-3862' />
|
---|
28 | <nd ref='-3863' />
|
---|
29 | <nd ref='-3861' />
|
---|
30 | <tag k='amenity' v='hospital' />
|
---|
31 | </way>
|
---|
32 | <relation id='123' version='3' action='modify' visible='true'>
|
---|
33 | <member type='way' ref='-3876' role='outer' />
|
---|
34 | <member type='way' ref='-3880' role='outer' />
|
---|
35 | <tag k='amenity' v='hospital' />
|
---|
36 | <tag k='type' v='multipolygon' />
|
---|
37 | </relation>
|
---|
38 | </osm>
|
---|
Note:
See
TracBrowser
for help on using the repository browser.