#
# 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]
#
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