Skip to content

Commit 8427420

Browse files
geographikarouault
authored andcommitted
Use Case Insensitive Filters for SLD Output (#5980)
Fixes #5526 Also fixes memory leak in msSLDParseLogicalExpression()
1 parent cca2744 commit 8427420

14 files changed

+538
-72
lines changed

mapogcsld.c

+75-72
Large diffs are not rendered by default.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<StyledLayerDescriptor version="1.1.0" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd" xmlns="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc" xmlns:se="http://www.opengis.net/se" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
2+
<NamedLayer>
3+
<se:Name>Test1</se:Name>
4+
<UserStyle>
5+
<se:FeatureTypeStyle>
6+
<se:Rule>
7+
<ogc:Filter><ogc:And><ogc:PropertyIsGreaterThan><ogc:PropertyName>FID</ogc:PropertyName><ogc:Literal>1</ogc:Literal></ogc:PropertyIsGreaterThan><ogc:PropertyIsLessThanOrEqualTo><ogc:PropertyName>FID</ogc:PropertyName><ogc:Literal>10 </ogc:Literal></ogc:PropertyIsLessThanOrEqualTo></ogc:And></ogc:Filter>
8+
<se:PointSymbolizer>
9+
<se:Graphic>
10+
<se:Mark>
11+
<se:WellKnownName>square</se:WellKnownName>
12+
<se:Fill>
13+
<se:SvgParameter name="fill">#dc0000</se:SvgParameter>
14+
</se:Fill>
15+
</se:Mark>
16+
<se:Size>1</se:Size>
17+
</se:Graphic>
18+
</se:PointSymbolizer>
19+
</se:Rule>
20+
</se:FeatureTypeStyle>
21+
</UserStyle>
22+
</NamedLayer>
23+
</StyledLayerDescriptor>
24+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<StyledLayerDescriptor version="1.1.0" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd" xmlns="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc" xmlns:se="http://www.opengis.net/se" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
2+
<NamedLayer>
3+
<se:Name>Test10</se:Name>
4+
<UserStyle>
5+
<se:FeatureTypeStyle>
6+
<se:Rule>
7+
<ogc:Filter><ogc:And><ogc:PropertyIsGreaterThan><ogc:PropertyName>FID</ogc:PropertyName><ogc:Literal>1</ogc:Literal></ogc:PropertyIsGreaterThan><ogc:PropertyIsLessThanOrEqualTo><ogc:PropertyName>FID</ogc:PropertyName><ogc:Literal>10</ogc:Literal></ogc:PropertyIsLessThanOrEqualTo></ogc:And></ogc:Filter>
8+
<se:PointSymbolizer>
9+
<se:Graphic>
10+
<se:Mark>
11+
<se:WellKnownName>square</se:WellKnownName>
12+
<se:Fill>
13+
<se:SvgParameter name="fill">#dc0000</se:SvgParameter>
14+
</se:Fill>
15+
</se:Mark>
16+
<se:Size>1</se:Size>
17+
</se:Graphic>
18+
</se:PointSymbolizer>
19+
</se:Rule>
20+
</se:FeatureTypeStyle>
21+
</UserStyle>
22+
</NamedLayer>
23+
</StyledLayerDescriptor>
24+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<StyledLayerDescriptor version="1.1.0" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd" xmlns="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc" xmlns:se="http://www.opengis.net/se" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
2+
<NamedLayer>
3+
<se:Name>Test11</se:Name>
4+
<UserStyle>
5+
<se:FeatureTypeStyle>
6+
<se:Rule>
7+
<ogc:Filter><ogc:Or><ogc:PropertyIsEqualTo><ogc:PropertyName>FID</ogc:PropertyName><ogc:Literal>1</ogc:Literal></ogc:PropertyIsEqualTo><ogc:PropertyIsEqualTo><ogc:PropertyName>FID</ogc:PropertyName><ogc:Literal>10</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Or></ogc:Filter>
8+
<se:PointSymbolizer>
9+
<se:Graphic>
10+
<se:Mark>
11+
<se:WellKnownName>square</se:WellKnownName>
12+
<se:Fill>
13+
<se:SvgParameter name="fill">#dc0000</se:SvgParameter>
14+
</se:Fill>
15+
</se:Mark>
16+
<se:Size>1</se:Size>
17+
</se:Graphic>
18+
</se:PointSymbolizer>
19+
</se:Rule>
20+
</se:FeatureTypeStyle>
21+
</UserStyle>
22+
</NamedLayer>
23+
</StyledLayerDescriptor>
24+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<StyledLayerDescriptor version="1.1.0" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd" xmlns="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc" xmlns:se="http://www.opengis.net/se" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
2+
<NamedLayer>
3+
<se:Name>Test12</se:Name>
4+
<UserStyle>
5+
<se:FeatureTypeStyle>
6+
<se:Rule>
7+
<ogc:Filter><ogc:Not><ogc:PropertyIsEqualTo><ogc:PropertyName>FID</ogc:PropertyName><ogc:Literal>1</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Not></ogc:Filter>
8+
<se:PointSymbolizer>
9+
<se:Graphic>
10+
<se:Mark>
11+
<se:WellKnownName>square</se:WellKnownName>
12+
<se:Fill>
13+
<se:SvgParameter name="fill">#dc0000</se:SvgParameter>
14+
</se:Fill>
15+
</se:Mark>
16+
<se:Size>1</se:Size>
17+
</se:Graphic>
18+
</se:PointSymbolizer>
19+
</se:Rule>
20+
</se:FeatureTypeStyle>
21+
</UserStyle>
22+
</NamedLayer>
23+
</StyledLayerDescriptor>
24+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<StyledLayerDescriptor version="1.1.0" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd" xmlns="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc" xmlns:se="http://www.opengis.net/se" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
2+
<NamedLayer>
3+
<se:Name>Test2</se:Name>
4+
<UserStyle>
5+
<se:FeatureTypeStyle>
6+
<se:Rule>
7+
<ogc:Filter><ogc:And><ogc:PropertyIsGreaterThan><ogc:PropertyName>FID</ogc:PropertyName><ogc:Literal>1</ogc:Literal></ogc:PropertyIsGreaterThan><ogc:PropertyIsLessThanOrEqualTo><ogc:PropertyName>FID</ogc:PropertyName><ogc:Literal>10 </ogc:Literal></ogc:PropertyIsLessThanOrEqualTo></ogc:And></ogc:Filter>
8+
<se:PointSymbolizer>
9+
<se:Graphic>
10+
<se:Mark>
11+
<se:WellKnownName>square</se:WellKnownName>
12+
<se:Fill>
13+
<se:SvgParameter name="fill">#dc0000</se:SvgParameter>
14+
</se:Fill>
15+
</se:Mark>
16+
<se:Size>1</se:Size>
17+
</se:Graphic>
18+
</se:PointSymbolizer>
19+
</se:Rule>
20+
</se:FeatureTypeStyle>
21+
</UserStyle>
22+
</NamedLayer>
23+
</StyledLayerDescriptor>
24+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<StyledLayerDescriptor version="1.1.0" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd" xmlns="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc" xmlns:se="http://www.opengis.net/se" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
2+
<NamedLayer>
3+
<se:Name>Test3</se:Name>
4+
<UserStyle>
5+
<se:FeatureTypeStyle>
6+
<se:Rule>
7+
<ogc:Filter><ogc:And><ogc:PropertyIsGreaterThan><ogc:PropertyName>FID</ogc:PropertyName><ogc:Literal>1</ogc:Literal></ogc:PropertyIsGreaterThan><ogc:PropertyIsLessThanOrEqualTo><ogc:PropertyName>FID</ogc:PropertyName><ogc:Literal>10 </ogc:Literal></ogc:PropertyIsLessThanOrEqualTo></ogc:And></ogc:Filter>
8+
<se:PointSymbolizer>
9+
<se:Graphic>
10+
<se:Mark>
11+
<se:WellKnownName>square</se:WellKnownName>
12+
<se:Fill>
13+
<se:SvgParameter name="fill">#dc0000</se:SvgParameter>
14+
</se:Fill>
15+
</se:Mark>
16+
<se:Size>1</se:Size>
17+
</se:Graphic>
18+
</se:PointSymbolizer>
19+
</se:Rule>
20+
</se:FeatureTypeStyle>
21+
</UserStyle>
22+
</NamedLayer>
23+
</StyledLayerDescriptor>
24+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<StyledLayerDescriptor version="1.1.0" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd" xmlns="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc" xmlns:se="http://www.opengis.net/se" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
2+
<NamedLayer>
3+
<se:Name>Test4</se:Name>
4+
<UserStyle>
5+
<se:FeatureTypeStyle>
6+
<se:Rule>
7+
<ogc:Filter><ogc:Or><ogc:PropertyIsEqualTo><ogc:PropertyName>FID</ogc:PropertyName><ogc:Literal>1</ogc:Literal></ogc:PropertyIsEqualTo><ogc:PropertyIsEqualTo><ogc:PropertyName>FID</ogc:PropertyName><ogc:Literal>10 </ogc:Literal></ogc:PropertyIsEqualTo></ogc:Or></ogc:Filter>
8+
<se:PointSymbolizer>
9+
<se:Graphic>
10+
<se:Mark>
11+
<se:WellKnownName>square</se:WellKnownName>
12+
<se:Fill>
13+
<se:SvgParameter name="fill">#dc0000</se:SvgParameter>
14+
</se:Fill>
15+
</se:Mark>
16+
<se:Size>1</se:Size>
17+
</se:Graphic>
18+
</se:PointSymbolizer>
19+
</se:Rule>
20+
</se:FeatureTypeStyle>
21+
</UserStyle>
22+
</NamedLayer>
23+
</StyledLayerDescriptor>
24+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<StyledLayerDescriptor version="1.1.0" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd" xmlns="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc" xmlns:se="http://www.opengis.net/se" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
2+
<NamedLayer>
3+
<se:Name>Test5</se:Name>
4+
<UserStyle>
5+
<se:FeatureTypeStyle>
6+
<se:Rule>
7+
<ogc:Filter><ogc:Or><ogc:PropertyIsEqualTo><ogc:PropertyName>FID</ogc:PropertyName><ogc:Literal>1</ogc:Literal></ogc:PropertyIsEqualTo><ogc:PropertyIsEqualTo><ogc:PropertyName>FID</ogc:PropertyName><ogc:Literal>10 </ogc:Literal></ogc:PropertyIsEqualTo></ogc:Or></ogc:Filter>
8+
<se:PointSymbolizer>
9+
<se:Graphic>
10+
<se:Mark>
11+
<se:WellKnownName>square</se:WellKnownName>
12+
<se:Fill>
13+
<se:SvgParameter name="fill">#dc0000</se:SvgParameter>
14+
</se:Fill>
15+
</se:Mark>
16+
<se:Size>1</se:Size>
17+
</se:Graphic>
18+
</se:PointSymbolizer>
19+
</se:Rule>
20+
</se:FeatureTypeStyle>
21+
</UserStyle>
22+
</NamedLayer>
23+
</StyledLayerDescriptor>
24+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<StyledLayerDescriptor version="1.1.0" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd" xmlns="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc" xmlns:se="http://www.opengis.net/se" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
2+
<NamedLayer>
3+
<se:Name>Test6</se:Name>
4+
<UserStyle>
5+
<se:FeatureTypeStyle>
6+
<se:Rule>
7+
<ogc:Filter><ogc:Or><ogc:PropertyIsEqualTo><ogc:PropertyName>FID</ogc:PropertyName><ogc:Literal>1</ogc:Literal></ogc:PropertyIsEqualTo><ogc:PropertyIsEqualTo><ogc:PropertyName>FID</ogc:PropertyName><ogc:Literal>10 </ogc:Literal></ogc:PropertyIsEqualTo></ogc:Or></ogc:Filter>
8+
<se:PointSymbolizer>
9+
<se:Graphic>
10+
<se:Mark>
11+
<se:WellKnownName>square</se:WellKnownName>
12+
<se:Fill>
13+
<se:SvgParameter name="fill">#dc0000</se:SvgParameter>
14+
</se:Fill>
15+
</se:Mark>
16+
<se:Size>1</se:Size>
17+
</se:Graphic>
18+
</se:PointSymbolizer>
19+
</se:Rule>
20+
</se:FeatureTypeStyle>
21+
</UserStyle>
22+
</NamedLayer>
23+
</StyledLayerDescriptor>
24+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<StyledLayerDescriptor version="1.1.0" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd" xmlns="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc" xmlns:se="http://www.opengis.net/se" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
2+
<NamedLayer>
3+
<se:Name>Test7</se:Name>
4+
<UserStyle>
5+
<se:FeatureTypeStyle>
6+
<se:Rule>
7+
<ogc:Filter><ogc:Not><ogc:PropertyIsEqualTo><ogc:PropertyName>FID</ogc:PropertyName><ogc:Literal>1</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Not></ogc:Filter>
8+
<se:PointSymbolizer>
9+
<se:Graphic>
10+
<se:Mark>
11+
<se:WellKnownName>square</se:WellKnownName>
12+
<se:Fill>
13+
<se:SvgParameter name="fill">#dc0000</se:SvgParameter>
14+
</se:Fill>
15+
</se:Mark>
16+
<se:Size>1</se:Size>
17+
</se:Graphic>
18+
</se:PointSymbolizer>
19+
</se:Rule>
20+
</se:FeatureTypeStyle>
21+
</UserStyle>
22+
</NamedLayer>
23+
</StyledLayerDescriptor>
24+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<StyledLayerDescriptor version="1.1.0" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd" xmlns="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc" xmlns:se="http://www.opengis.net/se" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
2+
<NamedLayer>
3+
<se:Name>Test8</se:Name>
4+
<UserStyle>
5+
<se:FeatureTypeStyle>
6+
<se:Rule>
7+
<ogc:Filter><ogc:Not><ogc:PropertyIsEqualTo><ogc:PropertyName>FID</ogc:PropertyName><ogc:Literal>1</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Not></ogc:Filter>
8+
<se:PointSymbolizer>
9+
<se:Graphic>
10+
<se:Mark>
11+
<se:WellKnownName>square</se:WellKnownName>
12+
<se:Fill>
13+
<se:SvgParameter name="fill">#dc0000</se:SvgParameter>
14+
</se:Fill>
15+
</se:Mark>
16+
<se:Size>1</se:Size>
17+
</se:Graphic>
18+
</se:PointSymbolizer>
19+
</se:Rule>
20+
</se:FeatureTypeStyle>
21+
</UserStyle>
22+
</NamedLayer>
23+
</StyledLayerDescriptor>
24+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<StyledLayerDescriptor version="1.1.0" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd" xmlns="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc" xmlns:se="http://www.opengis.net/se" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
2+
<NamedLayer>
3+
<se:Name>Test9</se:Name>
4+
<UserStyle>
5+
<se:FeatureTypeStyle>
6+
<se:Rule>
7+
<ogc:Filter><ogc:Not><ogc:PropertyIsEqualTo><ogc:PropertyName>FID</ogc:PropertyName><ogc:Literal>1</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Not></ogc:Filter>
8+
<se:PointSymbolizer>
9+
<se:Graphic>
10+
<se:Mark>
11+
<se:WellKnownName>square</se:WellKnownName>
12+
<se:Fill>
13+
<se:SvgParameter name="fill">#dc0000</se:SvgParameter>
14+
</se:Fill>
15+
</se:Mark>
16+
<se:Size>1</se:Size>
17+
</se:Graphic>
18+
</se:PointSymbolizer>
19+
</se:Rule>
20+
</se:FeatureTypeStyle>
21+
</UserStyle>
22+
</NamedLayer>
23+
</StyledLayerDescriptor>
24+

0 commit comments

Comments
 (0)