<div dir="ltr">Hi,<div>I'm looking into improving the SLD export, and stumbled into a schema violation</div><div>that, if fixed, may cause other regression.</div><div>In particular, the root element StyledLayerDescriptor contains a "units" attribute that</div><div>is not part of the SLD/SE specification, and thus makes validation fail:</div><div><br></div><div><div><?xml version="1.0" encoding="UTF-8"?></div><div><StyledLayerDescriptor xmlns="<a href="http://www.opengis.net/sld">http://www.opengis.net/sld</a>" xmlns:ogc="<a href="http://www.opengis.net/ogc">http://www.opengis.net/ogc</a>" xmlns:xsi="<a href="http://www.w3.org/2001/XMLSchema-instance">http://www.w3.org/2001/XMLSchema-instance</a>" version="1.1.0" xmlns:xlink="<a href="http://www.w3.org/1999/xlink">http://www.w3.org/1999/xlink</a>" <b>units="mm" </b>xsi:schemaLocation="<a href="http://www.opengis.net/sld">http://www.opengis.net/sld</a> <a href="http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd">http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd</a>" xmlns:se="<a href="http://www.opengis.net/se">http://www.opengis.net/se</a>"></div><div>   ...</div><div></StyledLayerDescriptor><br></div><div><br></div><div>It's in particular the units="mm" element. Checking the git history I found it has been introduced by this commit:</div><div><br></div><div>---------------------</div><div><br></div><div><div>b54b159 - rldhont <<a href="mailto:rldhont@gmail.com">rldhont@gmail.com</a>> 23-ott-2015</div><div>[BUGFIX] Set default units to mm in exportSld</div><div><br></div><div>The default units in QgsMapRenderer is Millimeters. The default units in SLD</div><div> is Pixel but exportSld does not convert all millimeters in pixels.</div><div><br></div><div>We notes this bug by comparing default QGS Server rendering and rendering with</div><div> the SLD generated by QGIS.</div><div><br></div><div>To resolve it, we just have to add units to the document element.</div></div><div><br></div><div>---------------------</div><div><br></div><div>The above comments seems to suggest something is actually using that attribute, but I'm not sure what.</div><div><br></div><div>Mind, GeoServer can parse the file the same, but if users try to validate it (there is a validation button in the style editor), they will get the following error:</div><div><br></div><div>"ine 2: cvc-complex-type.3.2.2: Attribute 'units' is not allowed to appear in element 'StyledLayerDescriptor'."</div><div><br></div><div>Also, the attribute per se does nothing in a compliant client, since SLD 1.1 lacks the very concept of "on screen unit", the uom allowed</div><div>are pixel (on screen), meter (on ground), feet (on ground).</div><div>A SLD export trying to be compliant should convert mm to pixels assuming some DPI conversion factor (which means,</div><div>making many changes around... bummer). I see there is already a uomScale in the conversion properties, but I see it's not</div><div>used for point symbol sizes (as the commit message says.. I actually don't see it being used anywhere).</div><div><br></div><div>Would it be ok to remove that attribute and use uomScale to properly adapt sizes from mm to px instead?</div><div><br></div><div>Cheers</div><div>Andrea</div><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div><div><div>==</div><div>GeoServer Professional Services from the experts! Visit</div><div><a href="http://goo.gl/it488V" target="_blank">http://goo.gl/it488V</a> for more information.</div><div><span style="font-size:12.8px">==</span><br></div></div><div><br></div></div><div>Ing. Andrea Aime <br></div><div>@geowolf</div><div>Technical Lead</div><div><br></div><div><span style="font-size:12.8px">GeoSolutions S.A.S.</span><br style="font-size:12.8px"><span style="font-size:12.8px">Via di Montramito 3/A</span><br style="font-size:12.8px"><span style="font-size:12.8px">55054  Massarosa (LU)</span></div><div><span style="font-size:12.8px">phone: +39 0584 962313</span><br></div><div>fax: +39 0584 1660272</div><div>mob: +39  339 8844549</div><div><br></div><div><a href="http://www.geo-solutions.it" target="_blank">http://www.geo-solutions.it</a></div><div><a href="http://twitter.com/geosolutions_it" target="_blank">http://twitter.com/geosolutions_it</a></div><div><br></div><div><p><span lang="IT"><font size="1"><b>AVVERTENZE AI SENSI DEL D.Lgs. 196/2003</b></font></span></p><p><span lang="IT"><font size="1">Le informazioni contenute in questo messaggio di posta elettronica e/o nel/i file/s allegato/i sono da considerarsi strettamente riservate. Il loro utilizzo è consentito esclusivamente al destinatario del messaggio, per le finalità indicate nel messaggio stesso. Qualora riceviate questo messaggio senza esserne il destinatario, Vi preghiamo cortesemente di darcene notizia via e-mail e di procedere alla distruzione del messaggio stesso, cancellandolo dal Vostro sistema. Conservare il messaggio stesso, divulgarlo anche in parte, distribuirlo ad altri soggetti, copiarlo, od utilizzarlo per finalità diverse, costituisce comportamento contrario ai principi dettati dal D.Lgs. 196/2003.</font></span></p><p><span lang="IT"><font size="1"> </font></span></p><p><font size="1">The information in this message and/or attachments, is intended solely for the attention and use of the named addressee(s) and may be confidential or proprietary in nature or covered by the provisions of privacy act (Legislative Decree June, 30 2003, no.196 - Italy's New Data Protection Code).Any use not in accord with its purpose, any disclosure, reproduction, copying, distribution, or either dissemination, either whole or partial, is strictly forbidden except previous formal approval of the named addressee(s). If you are not the intended recipient, please contact immediately the sender by telephone, fax or e-mail and delete the information in this message that has been received in error. The sender does not give any warranty or accept liability as the content, accuracy or completeness of sent messages and accepts no responsibility  for changes made after they were sent or for other risks which arise as a result of e-mail transmission, viruses, etc.</font></p></div><div><br></div><div>-------------------------------------------------------</div></div></div></div></div></div></div></div></div></div></div>
</div></div>