Opened 17 years ago

Closed 16 years ago

#2160 closed defect (duplicate)

[MapServer]wfs CONTAINS spatial filter returns null

Reported by: nsavard Owned by: assefa
Priority: normal Milestone: 5.2 release
Component: WFS Server Version: 5.0
Severity: normal Keywords:
Cc: assefa, tomkralidis

Description

I ran (msautotest: wfs_filter.map) the following GetFeature request which has a CONTAINS WFS spatial filter and it returns null. The response should be as specified in reference #1 below.

QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST= GetFeature&TYPENAME=province&FILTER=<Filter><Contains><PropertyName> Geometry</PropertyName><gml:Polygon><gml:outerBoundaryIs> <gml:LinearRing><gml:coordinates>2398347.49,454364.78 2403150.67,454364.78 2403150.67,458544.16 2398347.49,458544.16</gml:coordinates></gml:LinearRing> </gml:outerBoundaryIs></gml:Polygon></Contains></Filter>"


Reference #1:

Content-type: text/xml <?xml version='1.0' encoding="ISO-8859-1" ?> <wfs:FeatureCollection

xmlns:ms="http://mapserver.gis.umn.edu/mapserver" xmlns:wfs="http://www.opengis.net/wfs" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/wfs http://ogc.dmsolutions.ca/wfs/1.0.0/WFS-basic.xsd

http://mapserver.gis.umn.edu/mapserver http://localhost/path/to/wfs_simple?SERVICE=WFS&amp;VERSION=1.0.0&amp;REQUEST=DescribeFeatureType&amp;TYPENAME=province&amp;OUTPUTFORMAT=XMLSCHEMA">

<gml:boundedBy>

<gml:Box srsName="EPSG:4269">

<gml:coordinates>2397218.000000,436961.250000 2421720.250000,500409.562500</gml:coordinates>

</gml:Box>

</gml:boundedBy>

<gml:featureMember>

<ms:province>

<gml:boundedBy>

<gml:Box srsName="EPSG:4269">

<gml:coordinates>-62.076968,47.191069 -61.433227,47.627593</gml:coordinates>

</gml:Box>

</gml:boundedBy> <ms:msGeometry> <gml:Polygon srsName="EPSG:4269">

<gml:outerBoundaryIs>

<gml:LinearRing>

<gml:coordinates>-62.010515,47.241088 -61.966742,47.246040 -61.947548,47.238311 -61.932708,47.228257 -61.906997,47.222202 -61.864694,47.233116 -61.842210,47.242674 -61.828736,47.238572 -61.828048,47.227311 -61.838414,47.215824 -61.895286,47.191069 -61.910866,47.195878 -61.930279,47.207300 -61.943690,47.211466 -61.980541,47.200682 -62.009180,47.202105 -62.057130,47.211273 -62.073040,47.219864 -62.076968,47.230193 -62.025236,47.300625 -62.012584,47.327971 -62.014128,47.354223 -62.001451,47.381572 -61.974280,47.406325 -61.875844,47.460730 -61.744027,47.556462 -61.659750,47.596818 -61.589874,47.619458 -61.532104,47.620068

-61.492444,47.626271 -61.467016,47.627593 -61.443646,47.625790 -61.433227,47.617067 -61.440203,47.602653 -61.482632,47.584451 -61.501965,47.571983 -61.527322,47.546702 -61.554237,47.531009 -61.580413,47.524411 -61.602124,47.536685 -61.592755,47.546644 -61.553676,47.564103 -61.540355,47.583872 -61.575318,47.596569 -61.628933,47.581754 -61.673230,47.560421 -61.707530,47.537886 -61.771983,47.502438 -61.811839,47.463236 -61.843632,47.439850 -61.867341,47.428764 -61.888445,47.413176 -61.910824,47.379589 -61.919309,47.354617 -61.918598,47.343351 -61.947480,47.328320 -61.983069,47.315363 -62.021449,47.257309 -62.010515,47.241088 </gml:coordinates>

</gml:LinearRing>

</gml:outerBoundaryIs>

</gml:Polygon> </ms:msGeometry> <ms:AREA>328572864.000</ms:AREA> <ms:PERIMETER>194691.391</ms:PERIMETER> <ms:PROVINCE_>982</ms:PROVINCE_> <ms:PROVINCE_I>982</ms:PROVINCE_I> <ms:STATUS>Province</ms:STATUS> <ms:NAME></ms:NAME> <ms:NAME_E>Quebec</ms:NAME_E> <ms:NAME_F>Quebec</ms:NAME_F> <ms:REG_CODE>24</ms:REG_CODE> <ms:POLY_FEATU>0</ms:POLY_FEATU> <ms:ISLAND>?les de la Madeleine</ms:ISLAND> <ms:ISLAND_E></ms:ISLAND_E> <ms:ISLAND_F></ms:ISLAND_F>

</ms:province>

</gml:featureMember>

</wfs:FeatureCollection>

Change History (9)

comment:1 by nsavard, 17 years ago

Component: AGGWFS Server
Owner: changed from sdlime to mapserverbugs

Additionnal information: the response is corresponding to the expected result on Windows.

comment:2 by dmorissette, 17 years ago

Owner: changed from mapserverbugs to assefa

Asseigned to Assefa. Please update status and/or target milestone.

comment:3 by tomkralidis, 17 years ago

When I run the same test (on FC6), I get segfault for each of these tests:

wfs_filter_beyond.xml wfs_filter_contains.xml wfs_filter_crosses.xml wfs_filter_disjoint.xml wfs_filter_dwithin.xml wfs_filter_equals.xml wfs_filter_intersects_line.xml wfs_filter_intersects.xml wfs_filter_overlaps.xml wfs_filter_touches.xml wfs_filter_within.xml

Note these are all GEOS functions (using geos 2.2.3)

comment:4 by tomkralidis, 17 years ago

Cc: tomkralidis added

comment:5 by assefa, 17 years ago

Status: newassigned

Tom, Norm

I have run the msausto test this morning using Mapserver svn on windows successfuly:

  • Is the last comment from Tom (all tests crashing) still valid ?
  • Norm, do you still get a blank reslut for the contains request ?

in reply to:  5 comment:6 by nsavard, 17 years ago

Replying to assefa:

Tom, Norm

I have run the msausto test this morning using Mapserver svn on windows successfuly:

  • Is the last comment from Tom (all tests crashing) still valid ?
  • Norm, do you still get a blank reslut for the contains request ?

Assefa,

Yes I still get a blank result on Linux. If you read comment 07/18/07 11:20:44 I noticed that it works for Windows.

My MapServer configuration is:

MapServer version 5.0.0-beta4 OUTPUT=GIF OUTPUT=PNG OUTPUT=JPEG OUTPUT=WBMP OUTPUT=SVG SUPPORTS=PROJ SUPPORTS=AGG SUPPORTS=FREETYPE SUPPORTS=WMS_SERVER SUPPORTS=WMS_CLIENT SUPPORTS=WFS_SERVER SUPPORTS=WFS_CLIENT SUPPORTS=WCS_SERVER SUPPORTS=GEOS INPUT=EPPL7 INPUT=POSTGIS INPUT=OGR INPUT=GDAL INPUT=SHAPEFILE

comment:7 by tomkralidis, 17 years ago

Still valid:

   test wfs_filter_bbox.xml
     results match.
   test wfs_filter_intersects.xml
sh: line 1: 28710 Segmentation fault      mapserv QUERY_STRING="map=wfs_filter.map&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=<Filter><Intersect><PropertyName>Geometry</PropertyName><gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><gml:coordinates>2488789,289552 2588789,289552 2588789,389552 2488789,389552 2488789,289552</gml:coordinates></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon></Intersect></Filter>" >result/wfs_filter_intersects.xml
*    results dont match, TEST FAILED.
   test wfs_filter_dwithin.xml
sh: line 1: 28712 Segmentation fault      mapserv QUERY_STRING="map=wfs_filter.map&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=<Filter><DWithin><PropertyName>Geometry</PropertyName><gml:Point><gml:coordinates>2587598.000000,404010.531250</gml:coordinates></gml:Point><Distance units='m'>1000</Distance></DWithin></Filter>" >result/wfs_filter_dwithin.xml
*    results dont match, TEST FAILED.
   test wfs_filter_beyond.xml
sh: line 1: 28714 Segmentation fault      mapserv QUERY_STRING="map=wfs_filter.map&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=<Filter><Beyond><PropertyName>Geometry</PropertyName><gml:Point><gml:coordinates>2587598.000000,404010.531250</gml:coordinates></gml:Point><Distance units='m'>1000</Distance></Beyond></Filter>" >result/wfs_filter_beyond.xml
*    results dont match, TEST FAILED.
   test wfs_filter_equals.xml
sh: line 1: 28716 Segmentation fault      mapserv QUERY_STRING="map=wfs_filter.map&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=<Filter><Equals><PropertyName>Geometry</PropertyName><gml:Point><gml:coordinates>2503805.5,427872.65625</gml:coordinates></gml:Point></Equals></Filter>" >result/wfs_filter_equals.xml
*    results dont match, TEST FAILED.
   test wfs_filter_overlaps.xml
sh: line 1: 28718 Segmentation fault      mapserv QUERY_STRING="map=wfs_filter.map&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=province&FILTER=<Filter><Overlaps><PropertyName>Geometry</PropertyName><gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><gml:coordinates>2229029.24,261981.27 2363767.62,261981.27 2363767.62,360789.41 2229029.24,360789.41</gml:coordinates></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon></Overlaps></Filter>" >result/wfs_filter_overlaps.xml
*    results dont match, TEST FAILED.
   test wfs_filter_within.xml
sh: line 1: 28720 Segmentation fault      mapserv QUERY_STRING="map=wfs_filter.map&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=province&FILTER=<Filter><Within><PropertyName>Geometry</PropertyName><gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><gml:coordinates>2364765.68,430653.76 2450599.02,430653.76 2450599.02,505508.41 2364765.68,505508.41</gml:coordinates></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon></Within></Filter>" >result/wfs_filter_within.xml
*    results dont match, TEST FAILED.
   test wfs_filter_contains.xml
sh: line 1: 28722 Segmentation fault      mapserv QUERY_STRING="map=wfs_filter.map&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=province&FILTER=<Filter><Contains><PropertyName>Geometry</PropertyName><gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><gml:coordinates>2398347.49,454364.78 2403150.67,454364.78 2403150.67,458544.16 2398347.49,458544.16</gml:coordinates></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon></Contains></Filter>" >result/wfs_filter_contains.xml
*    results dont match, TEST FAILED.
   test wfs_filter_crosses.xml
sh: line 1: 28724 Segmentation fault      mapserv QUERY_STRING="map=wfs_filter.map&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=province&FILTER=<Filter><Crosses><PropertyName>Geometry</PropertyName><gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><gml:coordinates>2708973,187500 2734673,187500 2734673,212889 2708973,212889</gml:coordinates></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon></Crosses></Filter>" >result/wfs_filter_crosses.xml
*    results dont match, TEST FAILED.
   test wfs_filter_touches.xml
sh: line 1: 28726 Segmentation fault      mapserv QUERY_STRING="map=wfs_filter.map&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=province&FILTER=<Filter><Touches><PropertyName>Geometry</PropertyName><gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><gml:coordinates>2422047.0,455420.09375 2422043.0,453541.125 2422921.67,453530.47 2422921.67,455417.43</gml:coordinates></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon></Touches></Filter>" >result/wfs_filter_touches.xml
*    results dont match, TEST FAILED.
   test wfs_filter_equals_poly.xml
sh: line 1: 28728 Segmentation fault      mapserv QUERY_STRING="map=wfs_filter.map&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=province&FILTER=<Filter><Equals><PropertyName>Geometry</PropertyName><gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><gml:coordinates>2420754.0,453227.25 2419658.5,454812.9375 2420654.0,456235.25 2422047.0,455420.09375 2422043.0,453541.125 2420754.0,453227.25</gml:coordinates></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon></Equals></Filter>" >result/wfs_filter_equals_poly.xml
     results match.
   test wfs_filter_disjoint.xml
sh: line 1: 28730 Segmentation fault      mapserv QUERY_STRING="map=wfs_filter.map&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=province&FILTER=<Filter><Disjoint><PropertyName>Geometry</PropertyName><gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><gml:coordinates>2157168.77,-120775.54 2692130.04,-120775.54 2692130.04,565891.17 2157168.77,565891.17</gml:coordinates></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon></Disjoint></Filter>" >result/wfs_filter_disjoint.xml
*    results dont match, TEST FAILED.
   test wfs_filter_intersects_line.xml
sh: line 1: 28732 Segmentation fault      mapserv QUERY_STRING="map=wfs_filter.map&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=province&FILTER=<Filter><Intersect><PropertyName>Geometry</PropertyName><gml:LineString><gml:coordinates>2338382.77,339580.61 2366578.03,262230.79</gml:coordinates></gml:LineString></Intersect></Filter>" >result/wfs_filter_intersects_line.xml
*    results dont match, TEST FAILED.

comment:8 by assefa, 17 years ago

Milestone: 5.0 release5.2 release

comment:9 by assefa, 16 years ago

Resolution: duplicate
Status: assignedclosed

closing. this is a duplicate of bug #2306

Note: See TracTickets for help on using tickets.