# # Test WFS # # REQUIRES: INPUT=GDAL OUTPUT=PNG SUPPORTS=WFS GEOS # # # # Verify PropertyIsEqualTo # RUN_PARMS: wfs_filter_property_is_equal.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=NAMEDigby" > [RESULT] # # Verify PropertyIsNotEqualTo # RUN_PARMS: wfs_filter_is_not_equal.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=NAMEDigby" > [RESULT] # # Verify PropertyIsLessThan # RUN_PARMS: wfs_filter_isless_than.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=POP_RANGE3" > [RESULT] # # Verify PropertyIsGreaterThan # RUN_PARMS: wfs_filter_isgreater_than.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=POP_RANGE3" > [RESULT_DEVERSION] # # Verify PropertyIsLessThanOrEqualTo # RUN_PARMS: wfs_filter_isless_than_or_equalto.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=POP_RANGE2" > [RESULT] # # Verify PropertyIsGreaterThanOrEqualTo # RUN_PARMS: wfs_filter_greater_than_or_equalto.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=POP_RANGE4" > [RESULT_DEVERSION] # # Verify PropertyIsBetween # RUN_PARMS: wfs_filter_isbetween.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=POP_RANGE46" > [RESULT_DEVERSION] # # Verify PropertyIsLike # RUN_PARMS: wfs_filter_islike.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=NAMESyd*" > [RESULT] # # Verify PropertyIsBetween OR PropertyIsEqualTo # RUN_PARMS: wfs_filter_isbetween_or_isequalto.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=POP_RANGE46NAMEDigby" > [RESULT] # # Verify PropertyIsBetween AND PropertyIsEqualTo # RUN_PARMS: wfs_filter_isbetween_and_isequalto.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=POP_RANGE13NAMEDigby" > [RESULT] # # Verify PropertyIsBetween AND NOT PropertyIsEqualTo # RUN_PARMS: wfs_filter_isbetween_and_not_isequalto.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=POP_RANGE46NAMESydney" > [RESULT_DEVERSION] # # Verify PropertyIsEqualTo OR PropertyIsEqualTo # RUN_PARMS: wfs_filter_isequalto_or_isequalto.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=POP_RANGE4POP_RANGE5" > [RESULT_DEVERSION] # # Verify PropertyIsEqualTo OR PropertyIsEqualTo reverse # RUN_PARMS: wfs_filter_isequalto_or_isequalto_reverse.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=POP_RANGE5POP_RANGE4" > [RESULT_DEVERSION] # # Verify PropertyIsEqualTo AND PropertyIsEqualTo # RUN_PARMS: wfs_filter_isequalto_and_isequalto.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=POP_RANGE4POP_RANGE5" > [RESULT] # # Verify PropertyIsEqualTo AND PropertyIsEqualTo reverse order # RUN_PARMS: wfs_filter_isequalto_and_isequalto_reverse.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=POP_RANGE5POP_RANGE4" > [RESULT] # # Verify Not PropertyIsEqualTo # RUN_PARMS: wfs_filter_not_isequalto.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=POP_RANGE4" > [RESULT] # # Verify BBOX Result: Digby # RUN_PARMS: wfs_filter_bbox.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=POINT-65.86,44.56+-65.76,44.68" > [RESULT] # # Verify INTERSECTS Results: Canso, Port Hawkesbury # RUN_PARMS: wfs_filter_intersects.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=Geometry-61.63,45.04 -60.78,45.04 -60.78,46.08 -61.63,46.08" > [RESULT] # # Verify DWITHIN Result: Sydney # RUN_PARMS: wfs_filter_dwithin.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=Geometry-60.18,46.100.05" > [RESULT] # # Verify DWITHIN with units Result: Sydney # RUN_PARMS: wfs_filter_dwithin_units.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=Geometry-60.18,46.1010" > [RESULT] # # Verify BEYOND Results: all but Sydney excluded # RUN_PARMS: wfs_filter_beyond.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=Geometry-60.18,46.100.05" > [RESULT] # # Verify EQUALS Result: Cheticamp # RUN_PARMS: wfs_filter_equals.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=popplace&FILTER=Geometry-60.981037876445555,46.689322879890163" > [RESULT] # # Verify OVERLAPS Result: Prince Edward Island # RUN_PARMS: wfs_filter_overlaps.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=province&FILTER=Geometry-64.75,46.08 -63.53,46.08 -63.53,47.29 -64.75,47.29" > [RESULT] # Verify WITHIN Results: Quebec, Iles de la Madeleine (3 islands) # RUN_PARMS: wfs_filter_within.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=province&FILTER=Geometry-62.16,47.07 -61.33,47.07 -61.33,47.75 -62.16,47.75" > [RESULT] # Verify CONTAINS Result: Quebec, Iles de la Madeleine (AREA: 4833029.500) # RUN_PARMS: wfs_filter_contains.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=province&FILTER=Geometry-61.76,47.24 -61.71,47.24 -61.71,47.29 -61.76,47.29" > [RESULT] # Verify CROSSES Result: Nova Scotia, Sable Island # RUN_PARMS: wfs_filter_crosses.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=province&FILTER=Geometry-60.25,43.79 -59.95,43.79 -59.95,44.09 -60.25,44.09" > [RESULT] # Verify TOUCHES Result: Quebec, Iles de la Madeleine (AREA: 4833029.500) # RUN_PARMS: wfs_filter_touches.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=province&FILTER=Geometry-61.748897101358850,47.258393824294672" > [RESULT] # Verify EQUALS Result: Quebec, Iles de la Madeleine (AREA: 4833029.500) # RUN_PARMS: wfs_filter_equals_poly.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=province&FILTER=Geometry-61.748897101358850,47.258393824294672 -61.750963952824037,47.275550067023204 -61.730321527607408,47.282116089229731 -61.719829698475941,47.269592918433965 -61.732190995311470,47.255073375716847 -61.748897101358850,47.258393824294672" > [RESULT] # Verify DISJOINT Result: Nova Scotia, Sable Island # RUN_PARMS: wfs_filter_disjoint.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=province&FILTER=Geometry-66.23,42.50 -58.95,45.67 -58.97,48.52 -67.01,47.13" > [RESULT] # Verify INTERSECTS Results: Prince Edward Island # RUN_PARMS: wfs_filter_intersects_line.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=province&FILTER=Geometry-62.94,46.61 -62.74,45.83" > [RESULT] # MAP NAME WFS_FILTER STATUS ON SIZE 400 300 #EXTENT 2018000 -73300 3410396 647400 #UNITS METERS EXTENT -67.5725 42 -58.9275 48.5 UNITS DD IMAGECOLOR 255 255 255 SHAPEPATH ./data SYMBOLSET etc/symbols.sym FONTSET etc/fonts.txt OUTPUTFORMAT NAME GDPNG DRIVER "GD/PNG" MIMETYPE "image/png" IMAGEMODE RGB EXTENSION "png" END # # Start of web interface definition # WEB IMAGEPATH "/tmp/ms_tmp/" IMAGEURL "/ms_tmp/" METADATA "ows_updatesequence" "123" "wfs_title" "Test simple wfs" "wfs_onlineresource" "http://localhost/path/to/wfs_simple?" "wfs_srs" "EPSG:4326 EPSG:4269" "ows_schemas_location" "http://ogc.dmsolutions.ca" END END PROJECTION "init=epsg:4326" END # # Start of layer definitions # LAYER NAME province DATA province METADATA "wfs_title" "province" "wfs_description" "province" "wfs_result_fields" "NAME_E YEAR_EST AREA_KMSQ" "gml_include_items" "all" END TYPE POINT STATUS ON PROJECTION "init=./data/epsg2:42304" END DUMP TRUE CLASSITEM "Name_e" CLASS NAME "Province" COLOR 200 255 0 OUTLINECOLOR 120 120 120 END END # Layer LAYER NAME park DATA park METADATA "wfs_title" "park" "wfs_version" "1.0.0" "wfs_description" "Parks" "wfs_result_fields" "NAME_E YEAR_EST AREA_KMSQ" "gml_include_items" "all" END TYPE POLYGON STATUS ON PROJECTION "init=./data/epsg2:42304" END DUMP TRUE CLASS NAME "Parks" COLOR 200 255 0 OUTLINECOLOR 120 120 120 END END # Layer LAYER NAME popplace DATA popplace METADATA "wfs_title" "popplace" "wfs_description" "Cities" "wfs_result_fields" "NAME" "gml_include_items" "all" END TYPE POINT STATUS ON PROJECTION "init=./data/epsg2:42304" END DUMP TRUE LabelItem "Name" CLASSITEM "Capital" CLASS EXPRESSION /./ SYMBOL 2 SIZE 8 NAME "Cities" LABEL COLOR 0 0 0 FONT Vera TYPE truetype SIZE 8 POSITION AUTO PARTIALS FALSE OUTLINECOLOR 255 255 255 END COLOR 0 0 0 END END # Layer LAYER NAME road DATA road METADATA "wfs_title" "road" "wfs_description" "Roads" "gml_include_items" "all" END TYPE LINE STATUS ON PROJECTION "init=./data/epsg2:42304" END DUMP TRUE CLASSITEM "Name_e" CLASS NAME "Roads" SYMBOL 0 COLOR 220 0 0 END END # Layer END # Map File