The IDLnetOGCWMS::GetFeatureInfo function method retrieves a feature information file from a remote OGC WMS server and writes the file to disk. This file contains information about a specific feature. The value of the QUERYABLE tag in the structure returned by IDLnetOGCWMS::GetLayers can be used to determine if the server supports GetFeatureInfo for a particular layer. The OGC WMS server may not offer this support for every layer.

The feature file location is specified by the FEATURE_INFO_FILENAME property, and will be overwritten if this property value remains unchanged between GetFeatureInfo requests.

The URL_PATH and URL_HOSTNAME properties must be set before requesting information from a remote WMS server. You can either set these properties manually or pass a URL to the IDLnetOGCWMS::ParseUrl method prior to making a request. If you are working with a proxy server, you must also set the PROXY_HOSTNAME and PROXY_PORT properties to the correct values.

This method returns only when one of the following occur:

  • Completes retrieval of information from server
  • Encounters an HTTP error
  • Encounters an OGC exception
  • Responds to a cancel request as specified in a callback return value

You can implement a callback to return status information during the request by setting the CALLBACK_FUNCTION property. You can also use a callback to cancel a request. See Using Callbacks with the IDLnetOGCWMS Object for details. This method will throw an error if the GetFeatureInfo request fails.

Syntax


Result = Obj->[IDLnetOGCWMS::]GetFeatureInfo(Feature_Info_Request)

Return Value


The return value is a string containing the path to the file returned by this request or an empty string if no file was returned.

Arguments


Feature_Info_Request

The Feature_Info_Request argument must be a string that contains the required request parameters separated by the & character. These elements can be extracted from the structures returned by the IDLnetOGCWMS::GetLayers method, and many are the same parameters used in the IDLnetOGCWMS::GetMap request. The required elements are shown in the following table, and match those described in the OGC Web Map Service (WMS) specification. See the OGC web site (https://www.ogc.org/) for specification details.

Parameter

Description

SRS=namespace:identifier

Spatial Reference System used in 1.1.1 requests. Required.

Source: The GetMap request parameter, SRS= namespace:identifier.

CRS=namespace:identifier

Spatial Reference System used in 1.3.0 requests. Required.

Source: The GetMap request parameter, CRS= namespace:identifier.

BBOX=minx, miny, maxx, maxy

A coverage subset as defined by the bounding box coordinate pairs defining corners (lower left, upper right), in SRS units. Required.

Source: The GetMap request parameter, BBOX=minx, miny, maxx, maxy.

WIDTH=output_width

Width of map image in pixels. Required.

Source: The GetMap request parameter, WIDTH=output_width.

HEIGHT=output_height

Height of map image in pixels. Required.

Source: The GetMap request parameter, HEIGHT=output_height.

QUERY_LAYERS=layer_list

Comma-separated list of one or more map layers. Required.

Source: Layer names must be one or more of the layer names specified in the LAYERS=layer_list parameter of the IDLnetOGCWMS::GetMap call.

INFO_FORMAT=format

Return format information of feature. Required.

Source: In the Main Layer Structure, see FEATURE_FORMAT.

X=pixel_column

X-coordinate of feature in pixels in map coordinate system. Valid in version 1.1.1 only. Required.

Y=pixel_row

Y-coordinate of feature in pixels in map coordinate system. Valid in version 1.1.1 only. Required.

I=pixel_column

I-coordinate of feature in pixels in map coordinate system. Valid in version 1.3.0 only. Required.

J=pixel_row

J-coordinate of feature in pixels in map coordinate system. Valid in version 1.3.0 only. Required.

FEATURE_COUNT=number

Number of features about which to return information (defaults to 1). Optional

Keywords


None

Examples


See Sample WMS Browser.

Version History


6.4

Introduced

See Also


IDLnetOGCWMS::GetLayers, IDLnetOGCWMS::GetMap