This is an old revision of the document!
GetFeatureinfo: query su WMS
Alcuni server WMS supportano le query tramite la richieste di tipo GetFeatureinfo.
La query viene eseguita rispetto al punto (X, Y), che sono le coordinate in pixel della mappa nelle dimensioni e bounding box specificate. La query viene fatta nel dintorno del punto, con la tolleranza indicata nel mapfile.
Il risultato può essere composto in formato testo, http oppure GML. Noi proveremo con quest'ultimo.
Con MapServer è necessario configurare alcuni parametri nel mapfile. Nel nostro caso aggiungiamo la complicazione dovuta al fatto che il layer è in un sistema di riferimento (EPSG:3003) diverso da quello che useremo nella query (EPSG:4326).
LAYER NAME "entita_lineari" DATA "275040el" STATUS ON TYPE LINE TEMPLATE "void" TOLERANCEUNITS pixels TOLERANCE 10 DUMP TRUE PROJECTION "+init=epsg:3003 +towgs84=-104.1,-49.1,-9.9,0.971,-2.917,0.714,-11.68" END METADATA "wms_title" "Entità lineari" "wms_srs" "EPSG:4326" "gml_include_items" "all" END END
La richiesta WMS assume la seguente forma:
http://localhost/cgi-bin/mapserv?map=/var/www/wms_query.map&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetFeatureinfo&SRS=EPSG:4326&BBOX=11.16398206,43.74906364,11.33432601,43.79898334&LAYERS=entita_lineari&QUERY_LAYERS=entita_lineari&FEATURE_COUNT=100&X=150&Y=100&WIDTH=1024&HEIGHT=480&INFO_FORMAT=gml
Questi i parametri utilizzati:
SERVICE=WMS VERSION=1.1.1 REQUEST=GetFeatureinfo SRS=EPSG:4326 BBOX=11.16398206,43.74906364,11.33432601,43.79898334 LAYERS=entita_lineari QUERY_LAYERS=entita_lineari FEATURE_COUNT=100 X=150 Y=100 WIDTH=1024 HEIGHT=480 INFO_FORMAT=gml
Attenzione: il numero di feature (oggetti) ritornati dipende dalla dimensione del dintorno del punto (la TOLERANCE
del mapfile) e dal parametro FEATURE_COUNT
(numero massimo di feature ritornati) della query.