<div dir="ltr"><div><div>Hello,<br><br>I have created a pull request that should fix all inconsistencies/bugs in WMS GetFeatureInfo response, one for master and one for relese-2_2 branch. I wasn't able to test mapserver from current master cause it is probably broken, but the same changes in release2_2 branch works as expected.<br>
<br></div>Master branch: <a href="https://github.com/qgis/QGIS/pull/1227">https://github.com/qgis/QGIS/pull/1227</a><br></div>Release-2_2 branch: <a href="https://github.com/qgis/QGIS/pull/1226">https://github.com/qgis/QGIS/pull/1226</a><br>
<div><br><br>Regards,<br>
Marcel</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-03-04 10:53 GMT+01:00 Marcel Dancak <span dir="ltr"><<a href="mailto:dancakm@gmail.com" target="_blank">dancakm@gmail.com</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">I made a mistake in summarization, global bounding box in point identification shouldn't be computed and returned<br>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-03-04 10:36 GMT+01:00 Marcel Dancak <span dir="ltr"><<a href="mailto:dancakm@gmail.com" target="_blank">dancakm@gmail.com</a>></span>:<div><div class="h5">
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div><div><div>Hi Marco,<br><br></div>It's more complicated to fix all issues and let server to return bounding boxes of matched features in proper CRS and without transforming features geometries. The best solution that I could find is to add QgsCoordinateTransform* transform parameter into QDomElement QgsWMSServer::createFeatureGML method. I will perform more tests on my version, but to be sure what should mapserver return for both text/xml and application/vnd.ogc.gml formats, here is quick summarization:<br>


<br></div>* in point identification, return features geometries, bounding boxes and global bounding box in requested CRS only if 'Add geometry to feature response' is checked<br></div>* in search with FILTER parameter, always return features bounding boxes and global bounding box in requested CRS, and return also features geometries in requested CRS if 'Add geometry to feature response' is checked<br>


<br></div>Could you please confirm it?<br><br><br></div>Marcel<br></div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-02-28 8:17 GMT+01:00 Marco Hugentobler <span dir="ltr"><<a href="mailto:marco.hugentobler@sourcepole.ch" target="_blank">marco.hugentobler@sourcepole.ch</a>></span>:<div>

<div><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Marcel<br>
<br>
Thanks for spotting this issue, it will be good to have a consistent behaviour with / without filter and for all output formats.<br>
<br>
Adding geometry / bounding box has been done for showing rubberbands and for handling search results (zoom to features that match the filter). Therefore, the bounding boxes need to be included even if 'add geometry to feature response' is not checked. The added bounding box was meant for cases where the geometry data should be kept private, but searching should be possible.<br>



<br>
I agree with the other points, please prepare a pull request.<br>
<br>
Regards,<br>
Marco<div><div><br>
<br>
<br>
On <a href="tel:27.02.2014%2014" value="+12702201414" target="_blank">27.02.2014 14</a>:11, Marcel Dancak wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hello,<br>
<br>
I found some inconsistencies in QGIS Mapserver in GetFeatureInfo WMS responses in GML format:<br>
<br>
Identification by point coordinates (X/Y or I/J parameters):<br>
------------------------------<u></u>------------------------------<br>
 - returns geometry data of every feature in layer's CRS only if 'Add geometry to feature response' in project settings is checked<br>
 - returns bounding box of every feature in layer's CRS only if 'Add geometry to feature response' in project settings is checked<br>
 - doesn't returns global bounding box of all matched features collection<br>
<br>
Searching by attributes (FILTER parameter)<br>
------------------------------<u></u>------------<br>
 - always returns geometry data of every feature in layer's CRS<br>
 - always returns bounding box of every feature in layer's CRS<br>
 - always returns global bounding box of all matched features collection in requested CRS (SRS/CRS parameter), but this value (whole XML element) is correct only for text/xml format, because bounding box value is computed only for text/xml format, but it's XML element is included in server response regardless of concrete XML output format.<br>



<br>
<br>
I'm able to fix these issues and prepare pull request(s). This is my suggestion:<br>
 - return geometry data of every feature in requested CRS only if 'Add geometry to feature response' is checked<br>
 - return bounding box of every feature in requested CRS only if 'Add geometry to feature response' is checked<br>
 - return global bounding box of all matched features collection in requested CRS only if 'Add geometry to feature response' is checked, and in proper XML element depending on output format - <BoundingBox CRS="EPSG:4326" maxx="1" minx="-1" maxy="1" miny="-1"/> for text/xml and <gml:boundedBy><gml:Box srsName="EPSG:4326"><gml:<u></u>coordinates cs="," ts=" ">-1,-1 1,1</gml:coordinates></gml:<u></u>boundedBy> for GML format.<br>



<br>
<br>
Marcel Dancak<br>
</blockquote>
<br>
<br></div></div><span><font color="#888888">
-- <br>
Dr. Marco Hugentobler<br>
Sourcepole -  Linux & Open Source Solutions<br>
Weberstrasse 5, CH-8004 Zürich, Switzerland<br>
<a href="mailto:marco.hugentobler@sourcepole.ch" target="_blank">marco.hugentobler@sourcepole.<u></u>ch</a> <a href="http://www.sourcepole.ch" target="_blank">http://www.sourcepole.ch</a><br>
Technical Advisor QGIS Project Steering Committee<br>
<br>
</font></span></blockquote></div></div></div><br></div>
</blockquote></div></div></div><br></div>
</blockquote></div><br></div>