Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problem with exportation of complex SLD #42348

Closed
MaxDragonheart opened this issue Mar 20, 2021 · 9 comments · Fixed by #50342
Closed

Problem with exportation of complex SLD #42348

MaxDragonheart opened this issue Mar 20, 2021 · 9 comments · Fixed by #50342
Assignees
Labels
Bug Either a bug report, or a bug fix. Let's hope for the latter! SLD support Symbology Related to vector layer symbology or renderers

Comments

@MaxDragonheart
Copy link

MaxDragonheart commented Mar 20, 2021

I need to public a webmap using GeoServer 2.17; this represent a complex polygons symbology from QGIS 3.16.
I've exported an SLD file from QGIS and I've used it on GeoServer but the render is complete different.

So I've opened the SLD and I've seen some Parser Error:

    <?xml version="1.0" encoding="UTF-8"?>
    <StyledLayerDescriptor xmlns="http://www.opengis.net/sld" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1.0" xmlns:ogc="http://www.opengis.net/ogc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:se="http://www.opengis.net/se">
      <NamedLayer>
        <se:Name>strutturale-puc</se:Name>
        <UserStyle>
          <se:Name>strutturale-puc</se:Name>
          <se:FeatureTypeStyle>
            <se:Rule>
              <se:Name>CA - Centro antico</se:Name>
              <se:Description>
                <se:Title>CA - Centro antico</se:Title>
              </se:Description>
              <!--Parser Error: 
    syntax error, unexpected NAME, expecting $end - Expression was: Tipo area = 'Centro antico'-->
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:SvgParameter name="fill">#a71c1c</se:SvgParameter>
                </se:Fill>
                <se:Stroke>
                  <se:SvgParameter name="stroke">#791919</se:SvgParameter>
                  <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                  <se:SvgParameter name="stroke-linejoin">bevel</se:SvgParameter>
                </se:Stroke>
              </se:PolygonSymbolizer>
            </se:Rule>
            <se:Rule>
              <se:Name>CS _ Urbanizzato di formazione storica</se:Name>
              <se:Description>
                <se:Title>CS _ Urbanizzato di formazione storica</se:Title>
              </se:Description>
              <!--Parser Error: 
    syntax error, unexpected NAME, expecting $end - Expression was: Tipo area = 'Urbanizzato di formazione storica'-->
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:SvgParameter name="fill">#ff5500</se:SvgParameter>
                </se:Fill>
                <se:Stroke>
                  <se:SvgParameter name="stroke">#602323</se:SvgParameter>
                  <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                  <se:SvgParameter name="stroke-linejoin">bevel</se:SvgParameter>
                </se:Stroke>
              </se:PolygonSymbolizer>
            </se:Rule>
            <se:Rule>
              <se:Name>CR - Urbanizzato di recente formazione denso</se:Name>
              <se:Description>
                <se:Title>CR - Urbanizzato di recente formazione denso</se:Title>
              </se:Description>
              <!--Parser Error: 
    syntax error, unexpected NAME, expecting $end - Expression was: Tipo area = 'Urbanizzato di recente formazione denso'-->
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:SvgParameter name="fill">#dca612</se:SvgParameter>
                </se:Fill>
                <se:Stroke>
                  <se:SvgParameter name="stroke">#602323</se:SvgParameter>
                  <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                  <se:SvgParameter name="stroke-linejoin">bevel</se:SvgParameter>
                </se:Stroke>
              </se:PolygonSymbolizer>
            </se:Rule>
            <se:Rule>
              <se:Name>AUR - Urbanizzato di recente formazione rado</se:Name>
              <se:Description>
                <se:Title>AUR - Urbanizzato di recente formazione rado</se:Title>
              </se:Description>
              <!--Parser Error: 
    syntax error, unexpected NAME, expecting $end - Expression was: Tipo area = 'Urbanizzato di recente formazione rado'-->
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:SvgParameter name="fill">#f7f40c</se:SvgParameter>
                </se:Fill>
                <se:Stroke>
                  <se:SvgParameter name="stroke">#000000</se:SvgParameter>
                  <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                  <se:SvgParameter name="stroke-linejoin">bevel</se:SvgParameter>
                </se:Stroke>
              </se:PolygonSymbolizer>
            </se:Rule>
            <se:Rule>
              <se:Name>ATR - Area residenziale in  fase di urbanizzazione</se:Name>
              <se:Description>
                <se:Title>ATR - Area residenziale in  fase di urbanizzazione</se:Title>
              </se:Description>
              <!--Parser Error: 
    syntax error, unexpected NAME, expecting $end - Expression was: Tipo area = 'In fase di urbanizzazione rado'-->
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:SvgParameter name="fill">#ffffff</se:SvgParameter>
                </se:Fill>
                <se:Stroke>
                  <se:SvgParameter name="stroke">#000000</se:SvgParameter>
                  <se:SvgParameter name="stroke-opacity">0</se:SvgParameter>
                  <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                  <se:SvgParameter name="stroke-linejoin">bevel</se:SvgParameter>
                </se:Stroke>
              </se:PolygonSymbolizer>
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:GraphicFill>
                    <se:Graphic>
                      <se:Mark>
                        <se:WellKnownName>horline</se:WellKnownName>
                        <se:Stroke>
                          <se:SvgParameter name="stroke">#f7f40c</se:SvgParameter>
                          <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                        </se:Stroke>
                      </se:Mark>
                      <se:Size>4</se:Size>
                      <se:Rotation>
                        <ogc:Literal>135</ogc:Literal>
                      </se:Rotation>
                    </se:Graphic>
                  </se:GraphicFill>
                </se:Fill>
              </se:PolygonSymbolizer>
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:GraphicFill>
                    <se:Graphic>
                      <se:Mark>
                        <se:WellKnownName>horline</se:WellKnownName>
                        <se:Stroke>
                          <se:SvgParameter name="stroke">#f0f70c</se:SvgParameter>
                          <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                        </se:Stroke>
                      </se:Mark>
                      <se:Size>4</se:Size>
                      <se:Rotation>
                        <ogc:Literal>45</ogc:Literal>
                      </se:Rotation>
                    </se:Graphic>
                  </se:GraphicFill>
                </se:Fill>
              </se:PolygonSymbolizer>
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:SvgParameter name="fill">#0000ff</se:SvgParameter>
                  <se:SvgParameter name="fill-opacity">0</se:SvgParameter>
                </se:Fill>
                <se:Stroke>
                  <se:SvgParameter name="stroke">#000000</se:SvgParameter>
                  <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                  <se:SvgParameter name="stroke-linejoin">bevel</se:SvgParameter>
                </se:Stroke>
              </se:PolygonSymbolizer>
            </se:Rule>
            <se:Rule>
              <se:Name>ATI - Area produttiva in fase di urbanizzazione</se:Name>
              <se:Description>
                <se:Title>ATI - Area produttiva in fase di urbanizzazione</se:Title>
              </se:Description>
              <!--Parser Error: 
    syntax error, unexpected NAME, expecting $end - Expression was: Tipo area = 'In fase di urbanizzazione industriale'-->
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:SvgParameter name="fill">#ffffff</se:SvgParameter>
                </se:Fill>
                <se:Stroke>
                  <se:SvgParameter name="stroke">#000000</se:SvgParameter>
                  <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                  <se:SvgParameter name="stroke-linejoin">bevel</se:SvgParameter>
                </se:Stroke>
              </se:PolygonSymbolizer>
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:GraphicFill>
                    <se:Graphic>
                      <se:Mark>
                        <se:WellKnownName>horline</se:WellKnownName>
                        <se:Stroke>
                          <se:SvgParameter name="stroke">#794d8f</se:SvgParameter>
                          <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                        </se:Stroke>
                      </se:Mark>
                      <se:Size>4</se:Size>
                      <se:Rotation>
                        <ogc:Literal>45</ogc:Literal>
                      </se:Rotation>
                    </se:Graphic>
                  </se:GraphicFill>
                </se:Fill>
              </se:PolygonSymbolizer>
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:GraphicFill>
                    <se:Graphic>
                      <se:Mark>
                        <se:WellKnownName>horline</se:WellKnownName>
                        <se:Stroke>
                          <se:SvgParameter name="stroke">#794d8f</se:SvgParameter>
                          <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                        </se:Stroke>
                      </se:Mark>
                      <se:Size>4</se:Size>
                      <se:Rotation>
                        <ogc:Literal>135</ogc:Literal>
                      </se:Rotation>
                    </se:Graphic>
                  </se:GraphicFill>
                </se:Fill>
              </se:PolygonSymbolizer>
            </se:Rule>
            <se:Rule>
              <se:Name>PIP - Area PIP in fase di urbanizzazione</se:Name>
              <se:Description>
                <se:Title>PIP - Area PIP in fase di urbanizzazione</se:Title>
              </se:Description>
              <!--Parser Error: 
    syntax error, unexpected NAME, expecting $end - Expression was: Tipo area = 'Area PIP'-->
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:SvgParameter name="fill">#ffffff</se:SvgParameter>
                </se:Fill>
                <se:Stroke>
                  <se:SvgParameter name="stroke">#000000</se:SvgParameter>
                  <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                  <se:SvgParameter name="stroke-linejoin">bevel</se:SvgParameter>
                </se:Stroke>
              </se:PolygonSymbolizer>
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:GraphicFill>
                    <se:Graphic>
                      <se:Mark>
                        <se:WellKnownName>horline</se:WellKnownName>
                        <se:Stroke>
                          <se:SvgParameter name="stroke">#5f83d2</se:SvgParameter>
                          <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                        </se:Stroke>
                      </se:Mark>
                      <se:Size>7</se:Size>
                      <se:Rotation>
                        <ogc:Literal>45</ogc:Literal>
                      </se:Rotation>
                    </se:Graphic>
                  </se:GraphicFill>
                </se:Fill>
              </se:PolygonSymbolizer>
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:GraphicFill>
                    <se:Graphic>
                      <se:Mark>
                        <se:WellKnownName>horline</se:WellKnownName>
                        <se:Stroke>
                          <se:SvgParameter name="stroke">#5f83d2</se:SvgParameter>
                          <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                        </se:Stroke>
                      </se:Mark>
                      <se:Size>7</se:Size>
                      <se:Rotation>
                        <ogc:Literal>45</ogc:Literal>
                      </se:Rotation>
                    </se:Graphic>
                  </se:GraphicFill>
                </se:Fill>
              </se:PolygonSymbolizer>
            </se:Rule>
            <se:Rule>
              <se:Name>SI - Area interclusa priva di urbanizzazione</se:Name>
              <se:Description>
                <se:Title>SI - Area interclusa priva di urbanizzazione</se:Title>
              </se:Description>
              <!--Parser Error: 
    syntax error, unexpected NAME, expecting $end - Expression was: Tipo area = 'Area interclusa priva di urbanizzazione'-->
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:SvgParameter name="fill">#ffffff</se:SvgParameter>
                </se:Fill>
                <se:Stroke>
                  <se:SvgParameter name="stroke">#000000</se:SvgParameter>
                  <se:SvgParameter name="stroke-opacity">0</se:SvgParameter>
                  <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                  <se:SvgParameter name="stroke-linejoin">bevel</se:SvgParameter>
                </se:Stroke>
              </se:PolygonSymbolizer>
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:SvgParameter name="fill">#bc6c63</se:SvgParameter>
                  <se:SvgParameter name="fill-opacity">0</se:SvgParameter>
                </se:Fill>
                <se:Stroke>
                  <se:SvgParameter name="stroke">#000000</se:SvgParameter>
                  <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                  <se:SvgParameter name="stroke-linejoin">bevel</se:SvgParameter>
                </se:Stroke>
              </se:PolygonSymbolizer>
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:GraphicFill>
                    <se:Graphic>
                      <se:Mark>
                        <se:WellKnownName>horline</se:WellKnownName>
                        <se:Stroke>
                          <se:SvgParameter name="stroke">#ff9b00</se:SvgParameter>
                          <se:SvgParameter name="stroke-width">4</se:SvgParameter>
                        </se:Stroke>
                      </se:Mark>
                      <se:Size>7</se:Size>
                      <se:Rotation>
                        <ogc:Literal>45</ogc:Literal>
                      </se:Rotation>
                    </se:Graphic>
                  </se:GraphicFill>
                </se:Fill>
              </se:PolygonSymbolizer>
            </se:Rule>
            <se:Rule>
              <se:Name>SN - Aree di trasformazione esterne ai piani</se:Name>
              <se:Description>
                <se:Title>SN - Aree di trasformazione esterne ai piani</se:Title>
              </se:Description>
              <!--Parser Error: 
    syntax error, unexpected NAME, expecting $end - Expression was: Tipo area = 'Trasformazione agricolo'-->
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:SvgParameter name="fill">#ffffff</se:SvgParameter>
                </se:Fill>
                <se:Stroke>
                  <se:SvgParameter name="stroke">#e31a1c</se:SvgParameter>
                  <se:SvgParameter name="stroke-width">2</se:SvgParameter>
                  <se:SvgParameter name="stroke-linejoin">bevel</se:SvgParameter>
                  <se:SvgParameter name="stroke-dasharray">4 2</se:SvgParameter>
                </se:Stroke>
              </se:PolygonSymbolizer>
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:GraphicFill>
                    <se:Graphic>
                      <se:Mark>
                        <se:WellKnownName>horline</se:WellKnownName>
                        <se:Stroke>
                          <se:SvgParameter name="stroke">#e31a1c</se:SvgParameter>
                          <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                        </se:Stroke>
                      </se:Mark>
                      <se:Size>4</se:Size>
                      <se:Rotation>
                        <ogc:Literal>45</ogc:Literal>
                      </se:Rotation>
                    </se:Graphic>
                  </se:GraphicFill>
                </se:Fill>
              </se:PolygonSymbolizer>
            </se:Rule>
            <se:Rule>
              <se:Name>Parco pubblico</se:Name>
              <se:Description>
                <se:Title>Parco pubblico</se:Title>
              </se:Description>
              <!--Parser Error: 
    syntax error, unexpected NAME, expecting $end - Expression was: Tipo area = 'Parco pubblico'-->
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:SvgParameter name="fill">#c3e76e</se:SvgParameter>
                </se:Fill>
                <se:Stroke>
                  <se:SvgParameter name="stroke">#809848</se:SvgParameter>
                  <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                  <se:SvgParameter name="stroke-linejoin">bevel</se:SvgParameter>
                </se:Stroke>
              </se:PolygonSymbolizer>
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:GraphicFill>
                    <se:Graphic>
                      <se:Mark>
                        <se:WellKnownName>line</se:WellKnownName>
                        <se:Fill>
                          <se:SvgParameter name="fill">#ff0000</se:SvgParameter>
                        </se:Fill>
                        <se:Stroke>
                          <se:SvgParameter name="stroke">#72873f</se:SvgParameter>
                          <se:SvgParameter name="stroke-width">0.5</se:SvgParameter>
                        </se:Stroke>
                      </se:Mark>
                      <se:Size>4</se:Size>
                    </se:Graphic>
                  </se:GraphicFill>
                </se:Fill>
                <se:VendorOption name="distance">7,7</se:VendorOption>
              </se:PolygonSymbolizer>
            </se:Rule>
            <se:Rule>
              <se:Name>Aree edd edifici di pubblico interesse</se:Name>
              <se:Description>
                <se:Title>Aree edd edifici di pubblico interesse</se:Title>
              </se:Description>
              <!--Parser Error: 
    syntax error, unexpected NAME, expecting $end - Expression was: Tipo area = 'Scuola'-->
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:SvgParameter name="fill">#a5bfdd</se:SvgParameter>
                </se:Fill>
                <se:Stroke>
                  <se:SvgParameter name="stroke">#728584</se:SvgParameter>
                  <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                  <se:SvgParameter name="stroke-linejoin">bevel</se:SvgParameter>
                </se:Stroke>
              </se:PolygonSymbolizer>
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:GraphicFill>
                    <se:Graphic>
                      <se:Mark>
                        <se:WellKnownName>horline</se:WellKnownName>
                        <se:Stroke>
                          <se:SvgParameter name="stroke">#000000</se:SvgParameter>
                          <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                        </se:Stroke>
                      </se:Mark>
                      <se:Size>7</se:Size>
                      <se:Rotation>
                        <ogc:Literal>45</ogc:Literal>
                      </se:Rotation>
                      <se:Displacement>
                        <se:DisplacementX>3</se:DisplacementX>
                        <se:DisplacementY>2</se:DisplacementY>
                      </se:Displacement>
                    </se:Graphic>
                  </se:GraphicFill>
                </se:Fill>
              </se:PolygonSymbolizer>
            </se:Rule>
            <se:Rule>
              <se:Name>Attrezzature sportive</se:Name>
              <se:Description>
                <se:Title>Attrezzature sportive</se:Title>
              </se:Description>
              <!--Parser Error: 
    syntax error, unexpected NAME, expecting $end - Expression was: Tipo area = 'Attrezzature sportive'-->
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:SvgParameter name="fill">#cbe497</se:SvgParameter>
                </se:Fill>
                <se:Stroke>
                  <se:SvgParameter name="stroke">#809848</se:SvgParameter>
                  <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                  <se:SvgParameter name="stroke-linejoin">bevel</se:SvgParameter>
                </se:Stroke>
              </se:PolygonSymbolizer>
            </se:Rule>
            <se:Rule>
              <se:Name>Aree dstinate a standard pubblici</se:Name>
              <se:Description>
                <se:Title>Aree dstinate a standard pubblici</se:Title>
              </se:Description>
              <!--Parser Error: 
    syntax error, unexpected NAME, expecting $end - Expression was: Tipo area = 'Standard pubblici'-->
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:SvgParameter name="fill">#567f93</se:SvgParameter>
                </se:Fill>
                <se:Stroke>
                  <se:SvgParameter name="stroke">#000000</se:SvgParameter>
                  <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                  <se:SvgParameter name="stroke-linejoin">bevel</se:SvgParameter>
                </se:Stroke>
              </se:PolygonSymbolizer>
            </se:Rule>
            <se:Rule>
              <se:Name>Vasca ed impianti per l'irrigazione Vianini</se:Name>
              <se:Description>
                <se:Title>Vasca ed impianti per l'irrigazione Vianini</se:Title>
              </se:Description>
              <!--Parser Error: 
    syntax error, unexpected NAME, expecting $end - Expression was: Tipo area = 'Vasca'-->
              <!--SymbolLayerV2 GradientFill not implemented yet-->
              <se:PolygonSymbolizer>
                <se:Fill>
                  <se:SvgParameter name="fill">#d8f2f1</se:SvgParameter>
                  <se:SvgParameter name="fill-opacity">0</se:SvgParameter>
                </se:Fill>
                <se:Stroke>
                  <se:SvgParameter name="stroke">#567f93</se:SvgParameter>
                  <se:SvgParameter name="stroke-width">1</se:SvgParameter>
                  <se:SvgParameter name="stroke-linejoin">bevel</se:SvgParameter>
                </se:Stroke>
              </se:PolygonSymbolizer>
            </se:Rule>
          </se:FeatureTypeStyle>
        </UserStyle>
      </NamedLayer>
    </StyledLayerDescriptor>

Anyone has my same problem?
From GIS Stackexcenge suggest me that this is a QGIS's bug.

@MaxDragonheart MaxDragonheart added the Bug Either a bug report, or a bug fix. Let's hope for the latter! label Mar 20, 2021
@gioman
Copy link
Contributor

gioman commented Mar 20, 2021

@MaxDragonheart see https://github.com/qgis/QGIS/issues?q=is%3Aissue+label%3ABug+label%3ASymbology+is%3Aopen+SLD

QGIS symbology export to SLD isn't and never was perfect, it works only for relatively simple styles.

@gioman gioman added Feedback Waiting on the submitter for answers Symbology Related to vector layer symbology or renderers labels Mar 20, 2021
@MaxDragonheart
Copy link
Author

Thank you!
Hope that this problem will be solved as soon as possible. Do you think is useful a fundraising campaign?

@gioman
Copy link
Contributor

gioman commented Mar 21, 2021

Hope that this problem will be solved as soon as possible

@MaxDragonheart I would not have many hopes, it is a matter that raised only limited interest in the past years.

Do you think is useful a fundraising campaign

I guess, but you would need to define a plan first, and also of course have the plan backed by a developer.

@Gustry
Copy link
Contributor

Gustry commented Mar 21, 2021

@MaxDragonheart You might have a look to qgis/QGIS-Enhancement-Proposals#187

@agiudiceandrea
Copy link
Contributor

It seems the issue is due to the field name that contains a space: this generates the Parser Error in the exported sld file.
I think that to fix this issue it could be used an approach similar to 6006359#diff-bb1e5e5037fcc6610e0b1774e1f7eef7094d6e1787cb6dd9ebdf2530ea14c8fe

QString filterFunc = QStringLiteral( "\"%1\" %2 %3 AND \"%1\" <= %4" )
.arg( attrName.replace( '\"', QLatin1String( "\"\"" ) ),
firstRange ? QStringLiteral( ">=" ) : QStringLiteral( ">" ),
qgsDoubleToString( mLowerValue ),
qgsDoubleToString( mUpperValue ) );

i.e. enclosing the field name with quotes in the "filterFunc" in other parts of the code e.g.:

QString filterFunc;
if ( mValue.isNull() || mValue.toString().isEmpty() )
{
filterFunc = QStringLiteral( "%1 = '%2' or %1 is null" )
.arg( attrName.replace( '\"', QLatin1String( "\"\"" ) ),
mValue.toString().replace( '\'', QLatin1String( "''" ) ) );
}
else
{
filterFunc = QStringLiteral( "%1 = '%2'" )
.arg( attrName.replace( '\"', QLatin1String( "\"\"" ) ),
mValue.toString().replace( '\'', QLatin1String( "''" ) ) );
}

@nyalldawson
Copy link
Collaborator

I agree with @agiudiceandrea -- this is a bug rather than a limitation in QGIS' sld export.

@nyalldawson
Copy link
Collaborator

@MaxDragonheart are you able to supply a sample project demonstrating this issue?

@nyalldawson
Copy link
Collaborator

(oops, clicked the wrong button!)

@MaxDragonheart
Copy link
Author

If I remove the space, like @agiudiceandrea suggest, some problems are solved, but other complex symbolgies are ignored.

@nyalldawson this is the project, hope it is useful :)

@gioman gioman removed the Feedback Waiting on the submitter for answers label Mar 22, 2021
@elpaso elpaso self-assigned this Sep 26, 2022
elpaso added a commit to elpaso/QGIS that referenced this issue Sep 26, 2022
nyalldawson pushed a commit that referenced this issue Sep 26, 2022
qgis-bot pushed a commit that referenced this issue Sep 26, 2022
nyalldawson pushed a commit that referenced this issue Sep 26, 2022
nyalldawson pushed a commit that referenced this issue Oct 21, 2022
nyalldawson pushed a commit that referenced this issue Oct 22, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Either a bug report, or a bug fix. Let's hope for the latter! SLD support Symbology Related to vector layer symbology or renderers
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants