Skip To Content ArcGIS for Developers Sign In Dashboard

WfsFeatureTable QML Type

A table in an OGC Web Feature Service. More...

Import Statement: import Esri.ArcGISRuntime 100.6
Since: Esri.ArcGISRuntime 100.5
Inherits:

FeatureTable

Properties

Signals

Methods

Detailed Description

A WfsFeatureTable may be created by the following groups of properties:

This QML type supports the following default properties. A default property may be declared inside another declared object without being assigned explicitly to a property.

See also Cancelable and Loadable.

Property Documentation

axisOrder : Enums.OgcAxisOrder

Returns the axis order, which defines how coordinates are interpreted.

Some WFS services return geometry coordinates in (X,Y) order, while others use (Y,X). Setting this property to Enums.OgcAxisOrderSwap will result in all coordinates in geometries being swapped from what was sent by the server. Setting to Enums.OgcAxisOrderNoSwap will cause coordinates to be interpreted as-is. AxisOrder can be changed on an already-loaded table, but that change will only affect future calls to populateFromService. Features that are already in the table will not be modified.

Defaults to Enums.OgcAxisOrderAuto. In this mode, Runtime will make its best guess using heuristics that are optimized for good results with most popular WFS servers.

See also Enums.OgcAxisOrder.


featureRequestMode : Enums.FeatureRequestMode

Returns the FeatureRequestMode of the WfsFeatureTable.

Note: at the current release, WfsFeatureTable only supports Enums.FeatureRequestModeManualCache mode, but defaults to Enums.FeatureRequestModeOnInteractionCache mode. Set the FeatureRequestMode to Enums.FeatureRequestModeManualCache before the table is loaded.

See also Enums.FeatureRequestMode.


filterAxisOrder : Enums.OgcAxisOrder

Returns the axis order of the filter, which determines how geometry coordinates are ordered when sent to the server as part of spatial queries (those that specify a geometry).

Some WFS services expect coordinates to be sent in (X,Y) order, while others use (Y,X). Use Enums.OgcAxisOrderSwap to send coordinates in (Y,X) order. Enums.OgcAxisOrderNoSwap to send coordinates in (X,Y) order.

Defaults to Enums.OgcAxisOrderAuto.

See also Enums.OgcAxisOrder.


layerInfo : WfsLayerInfo

The WFS layer metadata, which includes name and description.

This property may not be changed after the feature table is loaded.


populateFromServiceResult : FeatureQueryResult

Returns the result from either the populateFromService or populateFromServiceWithXml methods (read-only).


populateFromServiceStatus : Enums.TaskStatus

Returns the status of the latest asynchronous task to populate from the service (read-only).

Note that this is the same status for both populateFromService and populateFromServiceWithXml methods.

See also Enums.TaskStatus.


[default] preferredSpatialReference : SpatialReference

Returns the preferred spatial reference of the WFS feature table.

If the preferred spatial reference isn't available from the service, the table will fail to load. Specify a preferred spatial reference that matches the map or scene's spatial reference to avoid automatic reprojection. The preferred spatial reference cannot be changed on a loaded table.


tableName : string

The table name associated with the WFS feature table.

This property must be used in conjunction with the url property in order to initialize.

This property may not be changed after the feature table is loaded.

Note: this property overloads the WfsFeatureTable::tableName property to make it writeable.


url : url

The URL associated with the WFS feature table.

This property may not be changed after the feature table is loaded.

This property must be used in conjunction with the tableName property in order to initialize.


Signal Documentation

axisOrderChanged()

Emitted when the axisOrder property changes.


featureRequestModeChanged()

Emitted when the featureRequestMode property changes.


filterAxisOrderChanged()

Emitted when the filterAxisOrder property changes.


layerInfoChanged()

Emitted when the layerInfo property changes.


populateFromServiceStatusChanged()

Emitted when the populateFromServiceStatus property changes.


portalItemChanged()

Emitted when the portalItem property changes.


preferredSpatialReferenceChanged()

Emitted when the preferredSpatialReference property changes.


tableNameChanged()

Emitted when the tableName property changes.


urlChanged()

Emitted when the url property changes.


Method Documentation

string populateFromService(QueryParameters parameters, bool clearCache, list<string> outfields)

Populate the table using a query.

Specifying an empty QueryParameters for parameters will result in requesting all features. Specifying an empty list for outfields will result in the default set of outfields being used. WFS is only compatible with a subset of possible queries defined by QueryParameters. The where clause only works when the table is backed by a service powered by GeoServer. Spatial queries (those that specify geometries) must use the Intersects spatial relationship.

If clearCache is true, the existing table data is cleared before populating with the query result.

This method uses an asynchronous task that cannot be started if it is already running from a previous call to populateFromService or populateFromServiceWithXml. You should check that the populateFromServiceStatus property is not Enums.TaskStatusInProgress before calling this method.

After the task starts, you may use the signal populateFromServiceStatusChanged to monitor task status.

Returns a task ID that can be used to cancel the populateFromService task.

See also Enums.TaskStatus and Cancelable.


string populateFromServiceWithXml(string xmlRequest, bool clearCache)

Populate the table using an XML query.

The XML query must be made against the same feature type represented by the WFS feature table. The schema of the query result must match or be a subset of the schema of the table. The XML query string must be an XML-encoded GetFeature request.

If clearCache is true, the existing table data is cleared before populating with the query result.

This method uses an asynchronous task that cannot be started if it is already running from a previous call to populateFromService or populateFromServiceWithXml. You should check that the populateFromServiceStatus property is not Enums.TaskStatusInProgress before calling this method.

After the task starts, you may use the signal populateFromServiceStatusChanged to monitor task status.

Returns a task ID that can be used to cancel the populateFromService task.

See also Enums.TaskStatus and Cancelable.



Feedback on this topic?