Geocortex Essentials supports the following types of OGC (Open Geospatial Consortium) service:
WMS (Web Map Service): WMS services provide dynamic map service capabilities.
Essentials supports WMS 1.0.0, 1.1.0, 1.1.1, and 1.3.0.
WFS (Web Feature Service): WFS services provide feature service capabilities. When associated with a WMS, WFS provides querying for the WMS.
Essentials supports the Get Feature operation for WFS 1.0.0, 1.1.0, and 2.0, when associated with a WMS.
WMTS (Web Map Tiled Service): WMTS provides OGC-style tiled services.
Essentials supports WMTS 1.0.0
To make full use of WMS capabilities, you need to associate the WMS with a WFS. With a WMS and associated WFS, it is possible to:
Use data linking and reporting.
Use in legends and in print templates.
Identify, search and query.
Configure the image format.
Configure the spatial reference.
Add parameters to the map URL.
Use HTTP (web tier) authentication.
Operate without a proxy.
Printing and Legends
A copy of the Legend.rpx
file can be found in the Sample Sites directory. The default location for the file is:
C:\Program Files (x86)\Latitude Geographics\Geocortex Essentials\Default\REST Elements\Sample Sites\Resources\PrintTemplates
Layer Styles
If a WMS layer has styles associated with it, you can select the styles to use. See Configure the Styles on a WMS Layer.
Identify, Query, Search, Data Links, and Reporting
To use identify, query, search, data links, and report features, your WMS must be associated with a WFS. Limited querying may be possible without a WFS. See OGC Query for information.
Essentials will use an associated WFS provided:
The WMS supports DescribeLayer
, which Essentials uses to obtain the URL of the WFS.
The WMS has layers that correspond to feature types on the WFS.
For query and search, you configure a WFS query provider.
See OGC Query for information about query providers.
ArcGIS Server WMSs do not support DescribeLayer
. To associate an ArcGIS WMS with a WFS, edit the map service in Manager. On the Functional tab, select WFS:ArcGIS from the Query Provider drop-down list. On the Details tab, click Edit Connection Settings and enter the WFS's URL in the WFS URL box.
WFS Requirements when Associated with a WMS
To make full use of all the functionality available in the Geocortex viewers, the WFS must support:
Logical Operators: And, Or.
Spatial Operators: Intersects.
Other Operators: FeatureId
, PropertyIsLike
, PropertyIsEqualTo.
Literal Types: xs:string
, xs:integer
, xs:double.
Geometry Types: Envelope, Point, MultiPoint, MultiPolygon, MultiLineString, LineString, Polygon.
Unlike WMS, which provides map services in the form of images, WFS services provide the geometry and attribute data that define features in map layers. The HTML5 Viewer queries that data and renders it in the viewer's browser for user interaction.
For information about adding a WFS service connection, see Add a WFS Service Connection.
In Essentials, WMTS:
Can use KVP request encoding only.
Cannot use SOAP.
Cannot use legends.
Can perform point-identify queries only.
Cannot use reports and data links.
The HTML5 Viewer does not support WMTS identifying, querying or searching.
The edges of some WMTS services may fail to display properly in the HTML5 Viewer at certain zoom levels. To workaround this, in the viewer's Site Module configuration, set the useSiteFullExtentForWMTSServices
property to true
.
Usually, when adding an OGC web service to your web application, you would need to use a proxy. This is because services are usually hosted on a different domain than the host mapping application and web browsers usually obey the single-origin policy. The single-origin policy stipulates that you cannot make cross-domain requests for XML data, such as service metadata. (Image requests in a browser are not subject to the same cross-domain restrictions.)
Geocortex Essentials is able to work around this stipulation by including all the necessary service metadata in the site response. This means that you do not need a proxy to access a WMS or WMTS. You can specify a proxy if you want to, but it is not necessary.
In order to add a secured WMS, WFS, or WMTS to an Essentials site, you must first add a service connection. The service connection stores the information that Essentials needs to be able to connect to the service, including the information that allows Essentials to authenticate. See Add a WMS Service Connection, Add a WFS Service Connection, or Add a WMTS Service Connection for instructions.
Essentials is capable of accessing WMS, WFS, and WMTS that are secured using one of the following methods:
Web Tier (default or anonymous credentials): Select this option if:
The service is secured using Integrated Windows Authentication and you want Essentials to authenticate as the application pool user.
or
The service is not secured.
Web Tier (configured credentials): Select this option if:
The service is secured using basic or digest authentication.
or
The service is secured using Integrated Windows Authentication and you want to configure the credentials for Essentials to use when authenticating.
In the Username and Password text fields, enter the credentials that you want Essentials to use.
Proxy Settings: If you are using a proxy page, enter the proxy page's URL in the Proxy URL box.
For example, http://host.domain.com/MapServiceProxy/proxy.ashx
.
Essentials supports two methods of querying a WMS:
Direct: Query the WMS directly using a GetFeatureInfo
operation.
WFS: Send feature requests to a WFS that is associated with the WMS.
WFS is a more powerful way to query than direct query. WFS supports full text searches and complex spatial filtering, and searches and queries return full attribute data and metadata. WFS also supports data linking and reporting. Having full attribute data enables you to define rich feature descriptions to display in results lists, map tips, and reports.
If a WFS is not available for the WMS and the WMS supports the GetFeatureInfo
operation, Essentials can query the WMS directly. Direct querying supports only limited spatial querying—the only identify operation that GetFeatureInfo
supports is point identify. Direct querying does not support text search. As well, the output format is limited to display-only formats such as plain text or HTML in some cases.
WMS layers that are not associated with a WFS only support point identify. They do not support query or search. WMS layers that are associated with a WFS support all types of identify, query and search operations.
When using direct query, use GML output if possible. GML output works well with Geocortex Essentials and Geocortex viewers.
Because you cannot use a WFS with a tiled service, WMTS query is direct, in other words, it uses GetFeatureInfo
.
In the Functional tab for map services, you can set the Query Mode of OGC services.
When you configure a WMS, you need to specify the query provider to use. This is required whether or not you are using a WFS. Essentials uses this information to query the WMS.
There are many options and your choice
will depend on the WMS you are configuring. In Essentials, when you select an option that begins with WFS,
Essentials attempts to use WFS for querying. If the WMS supports GetFeatureInfo
, you will have options available
that start with WMS. If you choose one of these options, Essentials will use WMS to query the WMS, using the
specified information format. For example, if you choose "WMS: text/html", then Essentials will query the WMS
and return the data in HTML format.
The query provider is configured on the map service's Functional tab.
There are two categories of WMS query providers:
WFS: When you select an option that begins with WFS, Essentials uses WFS for querying. WFS options are always available for you to configure.
WMS: If the WMS supports GetFeatureInfo
, you will have options that start with WMS. If you choose one of these options, Essentials queries the WMS directly, using the specified information format. For example, if you choose WMS: text/plain
, then Essentials queries the WMS directly and returns the data in plain text format.
You can disable query and search by selecting Disabled. When the query provider is set to Disabled, the user can still perform queries and searches, but no results are returned.
The WFS query provider options and some common WMS query provider options are described below. The WFS query providers return equivalent data.
WFS: Specifies that you want to use a fully compliant, non-ArcGIS WFS with your WMS. If the WMS correctly publishes the location of the WFS, then Essentials automatically connects your WMS to the WFS. In order to use this option:
The WMS must support DescribeLayer
, which Essentials uses to obtain the URL of the WFS.
The WMS's layers must correspond to feature types on the WFS.
WFS: ArcGIS: If your WMS layer is published via ArcGIS Server, you must use this option. You must also specify the WFS's URL. To specify the URL, edit the map service in Manager. On the Details tab, click Edit Connection Settings and enter the URL in the WFS URL box.
The WFS: ArcGIS option uses the Title attribute to correlate WMS layers and WFS feature types.
WFS: Name Correlation: Use this option if you are using a non-ArcGIS WMS that does not support DescribeLayer
or has DescribeLayer
disabled. You must also specify the WFS's URL. To specify the URL, edit the map service in Manager. On the Details tab, click Edit Connection Settings and enter the URL in the WFS URL box.
GeoServer does not support DescribeLayer
.
The WFS: Name Correlation option uses the Name attribute to correlate WMS layers and WFS feature types.
WMS: application/vnd.ogc.gml: Use this option if it is available and the WFS options do not work. This option returns results that are suitable for feature details and map tips.
WMS: text/html: Returns the results in pre-formatted HTML.
You can create a Query Transform workflow that modifies the results of a WMS: text/html query before the results are returned to the viewer. For example, when a WMS: text/html query returns non-GML data, Essentials adds the raw data as a column in the DataSet
. This raw data appears as a single ows:data
attribute. You could create a Query Transform workflow that converts the HTML text to attribute data in rows and columns. For more information, see "Create a Query Transform Workflow" in the Essentials Workflow Designer help system.
WMS: text/plain: Returns the results in plain text.
You can create a Query Transform workflow that modifies the results of a WMS: text/plain query before the results are returned to the viewer. For example, when a WMS: text/plain query returns non-GML data, Essentials adds the raw data as a column in the DataSet
. This raw data appears as a single ows:data
attribute. You could create a Query Transform workflow that converts the HTML text to attribute data in rows and columns. For more information, see "Create a Query Transform Workflow" in the Essentials Workflow Designer help system.
Some common WMTS query provider options are described below:
WMTS: application/vnd.ogc.gml: Returns results in GML format.
WMTS: text/html: Returns the results in pre-formatted HTML.
WMTS: text/plain: Returns the results in plain text.
Essentials will use an associated WFS provided:
The WMS has layers that correspond to feature types on the WFS.
For query and search, you configure a WFS query provider.
The WMS supports DescribeLayer
, which Essentials uses to obtain the URL of the WFS.
ArcGIS Server WMSs do not support DescribeLayer
. To associate an ArcGIS WMS with a WFS:
Edit the map service in Manager.
On the Functional tab, select WFS:ArcGIS from the Query Provider drop-down list.
On the Details tab, click Edit Connection Settings and enter the WFS's URL in the WFS URL box.
To configure the styles on a WMS layer:
If different styles have been set up for a particular WMS layer, you can select the styles to use.
In
Expand the map service to show the layers, and then click the Edit Layer icon beside the layer that has the styles.
Click the down arrow in the Style box and select the style you want to use.
Click Apply Changes.