#
# 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=POINT2279398,39858+2279400,39859" > [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=Geometry2488789,289552 2588789,289552 2588789,389552 2488789,389552 2488789,289552" > [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=Geometry2587598.000000,404010.5312501000" > [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=Geometry2587598.000000,404010.5312501000" > [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=Geometry2503805.5,427872.65625" > [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=Geometry2229029.24,261981.27 2363767.62,261981.27 2363767.62,360789.41 2229029.24,360789.41" > [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=Geometry2364765.68,430653.76 2450599.02,430653.76 2450599.02,505508.41 2364765.68,505508.41" > [RESULT]
# Verify CONTAINS Result: Quebec, Iles de la Madeleine
# RUN_PARMS: wfs_filter_contains.xml [MAPSERV] QUERY_STRING="map=[MAPFILE]&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&TYPENAME=province&FILTER=Geometry2398347.49,454364.78 2403150.67,454364.78 2403150.67,458544.16 2398347.49,458544.16" > [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=Geometry2708973,187500 2734673,187500 2734673,212889 2708973,212889" > [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=Geometry2422047.0,455420.09375 2422043.0,453541.125 2422921.67,453530.47 2422921.67,455417.43" > [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=Geometry2420754.0,453227.25 2419658.5,454812.9375 2420654.0,456235.25 2422047.0,455420.09375 2422043.0,453541.125 2420754.0,453227.25" > [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=Geometry2157168.77,-120775.54 2692130.04,-120775.54 2692130.04,565891.17 2157168.77,565891.17" > [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=Geometry2338382.77,339580.61 2366578.03,262230.79" > [RESULT]
#
NAME WFS_FILTER
STATUS ON
SIZE 400 300
EXTENT 2018000 -73300 3410396 647400
UNITS METERS
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
"wfs_title" "Test simple wfs"
"wfs_onlineresource" "http://localhost/path/to/wfs_simple?"
"wfs_srs" "EPSG:4269 EPSG:4326"
"ows_schemas_location" "http://ogc.dmsolutions.ca"
END
END
PROJECTION
"init=./data/epsg2:42304"
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