Web Feature Service (WFS) Reader Parameters
Note: The source dataset must be set to the WFS server name.
WFS Connection
Enter a proxy server that the reader will use when accessing a URL dataset (for example, http://www.mywfs.com/wfs_service_path/). If you have specified a WFS server name in the source dataset field, it will appear in this field.
Select this option if you prefer to use the HTTP Post method to update the databases.
- 1.0.0
- 1.1.0 (default)
- 2.0.0 (see also Start Index)
Use Network Authentication
This parameter is always visible in some formats, and visible in other formats only when the dataset is a URL.
Specify the authentication method to use when accessing a password-protected server.
- Basic: (default) Basic access authentication is designed to allow a client to provide credentials to a server on the assumption that the connection between them is trusted and secure. Note that any credentials passed from client to server can be easily intercepted through an insecure connection.
- Digest: Digest authentication is one of the agreed-upon methods a web server can use to negotiate credentials, such as username or password, with a user's web browser.
- NTLM: A challenge-response protocol that is used to provide compatibility with versions of Windows earlier than the Windows 2000 operating systems.
- Web Connection: Web connections provide a convenient and secure way to store and reuse previously established connection parameters. See Web Connection below.
- Single Sign-on: FME will use the credentials of the current user to authenticate the HTTP request. This authentication method currently works only on the Windows operating system.
Note: To access datasets using a proxy server, use the Network tools in FME Options. From the Workbench menu, select Tools > FME Options > Network. For more information, see "Network Proxy" in the FME Workbench Help.
Note: To access datasets using a proxy server, use the Network tools in FME Options. From the Workbench menu, select Tools > FME Options > Network. For more information, see "Network Proxy" in the FME Workbench Help.
Connection Timeout Length
This parameter can be used to set a timeout on HTTP connection requests. If a connection to the server cannot be created within the given number of seconds, the request fails, and the reader is not added.
The default connection timeout is 90 seconds. If 0 is entered, there is no timeout, and the reader waits indefinitely for a successful connection.
Transfer Timeout Length
This parameter can be used to set a timeout on HTTP transfers. If data stops being transferred for more than the given number of seconds, the request fails and the reader is not be added.
The default transfer timeout is 90 seconds. If 0 is entered, there is no timeout, and the reader waits indefinitely for data to resume being transferred.
Constraints
Click the browse button to retrieve and list the available feature types. The feature types are gathered from the WFS Capabilities document that is retrieved from the WFS server.
Enter the maximum number of features that a WFS GetFeature request retrieves.
This parameter is only applicable when the WFS Version is set to 2.0.0. Some WFS servers require the Start Index parameter to be set in the request in order to enable response paging.
The index starts at 0. The reader automatically fetches the subsequent set of response features as long as its current WFS feature collection has a next url parameter.
Example |
---|
Using the following parameter settings will fetch 5 result documents of 100 features each:
The last feature collection from the server will still have a next url to fetch the next document, but since the reader has reached 500, it will ignore the next url and reading will stop. |
This optional parameter is sent to the WFS server to limit the number of features that are presented in the response document. If this parameter is not set, then the value of the Max Features parameter will be sent as the value of the WFS 2.0 count.
This parameter may be used in conjunction with the Max Features parameter. Max Features will limit the total number of features retrieved from the server. This is useful if the WFS server supports paging. The FME WFS client will keep fetching subsequent result documents as long as the current result document has a next url and the Max Features limit has not been reached.
Lists the output formats for the GetFeature operation in the Capabilities document.
If a non-GML format is selected, then an additional Non_GML_GetFeature will be returned by the WFS reader. The Non_GML_GetFeature will carry these attributes:
- wfs_http_method: GET or POST
- wfs_http_url: GetFeature URL
- wfs_http_body: http body when using HTTP POST method
- wfs_output_format: User-selected output format
- wfs_temp_datafile: Temporary full file path to the downloaded GetFeature payload, the file will be deleted at the end of the translation.
Select an expression if you want the reader to send a custom OGC XML fragment filter for the GetFeature operation.
Application Schema
When set to Yes, the GML reader attempts to read the GML dataset without an application schema.
Default: No
A GML instance document specifies the namespace and the location of its application schema through its root element xsi:schemaLocation attribute. This field allows the GML reader to use a different GML schema document from the one specified in the xsi:schemaLocation attribute.
The XML Schema specification states that the xsi:schemaLocation attribute value consists of a set of pairs: The first member of each pair is the namespace for which the second member is the hint describing where to find an appropriate schema document. The presence of this hint does not require the processor to obtain or use the cited schema document, however, the processor is free to use other schemas obtained by other suitable means.
Note: This only takes effect if the target namespace of the dataset is not in the Safe fixed schema namespace http://www.safe.com/xml/schemas/FMEFeatures. The GML2 writer in Fixed Schema Mode writes out documents that belong to that namespace.
This parameter may be required when the WFS reader is used in a third-party application that requires each feature in a layer be identified by a numeric identifier.
Use this parameter to specify the attribute name for this numeric identifier.
This optional parameter instructs the reader to map FeatureCollection as an FME feature.
Values: gml:FeatureCollection | wfs:FeatureCollection
Usually, only one value is used within a dataset. Selecting both gml:FeatureCollection and wfs:FeatureCollection may cause a clash in feature type names when both GML and WFS schemas are loaded, since FME needs the feature type to be unique in a reader or writer.
If both values are required, you may need to set the Add XML Namespace Prefix to parameter to a value of Feature Types – this parameter adds the namespace prefix to the feature types to make them unique.
This parameter is optional and valid only if Ignore Application Schema is set to Yes.
Valid values are whitespace-separated XML element names.
The parameter is useful in Ignore Application Schema mode if the GML reader fails to read GML features. You can then explicitly list the XML elements that are supposed to be interpreted as GML features.
GML SRS/Geometry Parameters
Overrides the axis order when reading a coordinate tuple in a GML element.
Valid values for this parameter:
- 1,2
- 2,1
- 1,2,3
- 2,1,3
There is no default value for most GML formats; however, for IndoorGML, there is a default blank value (which is the same as 1,2,3).
For WFS 1.0, the value is assumed to be 1,2. For WFS 1.1.0 and 2.0.0, the SRS order is determined by the SRS specified. For example, the default axis order for EPSG:4326 is 2,1.
If the srsName in the GML document is set to urn:ogc:def:crs:EPSG:6.6.4326, and you know that the coordinate order in the GML document is lon-lat and not lat-lon order, set this parameter to 1,2 so that the reader reads the data in lon-lat order.
This parameter affects the interpretation of the start and end angles for gml:ArcByCenterPoint.
The parameter overrides the default interpretation for the 0 axis location and angle direction regardless of the dataset SRS.
By default, if the SRS axis order is 1,2 or 1,2,3, then the angle direction is assumed to run counterclockwise starting from the horizontal axis. Otherwise, when the x and y axes are flipped, the angles run clockwise starting from the vertical axis.
This parameter controls how segments in a path are joined together when the segments' end points are not connected:
- Inserting New Segment connects the path by inserting a new connecting segment between the original segments.
- Snapping End Points forces the first point of each segment to equal the last point of the previous segment.
Note: For backwards compatibility, Inserting New Segment is assumed when the Enforce Path Continuity By parameter is not present.
(Version and) Namespace
When selected, this parameter instructs the GML reader to use the older GML v3.1.1 code base to read GML v3.1.1 and v2.1.2 documents.
Note: This parameter is enabled only for GML and WFS readers.
When selected, this parameter disables automatic reader selection/switching.
When the GML reader is reading OS MasterMap or CityGML data, FME analyzes the namespace header for URIs that indicate format, and then passes the data on to that reader. The reader then automatically switches to the OS(GB) MasterMap or CityGML reader.
When selected, this parameter disables XML Namespace processing for the underlying XML parser.
Note that this may cause reading errors if the GML schema and the GML data use different prefixes for the same namespace URI. This parameter may be useful for datasets that are not XML-Namespace-valid.
GML Feature Properties
This parameter specifies how embedded GML objects (those containing a gml:id), that are not geometries should be mapped.
By default, these embedded objects are mapped into FME attributes.
If the parameter is set to Geometries, the embedded objects are mapped into FME Geometries, and the embedded object properties are loaded into geometric traits. In turn, nested embedded objects are mapped into nested aggregate geometries.
If the parameter is set to Feature Types, the embedded objects will be mapped into separate FME feature types, and these feature types will have an additional gml_parent_id attribute whose value refers back to its parent feature.
Specifies whether the default and optional GML feature properties, name and description, should be read.
This parameter specifies whether the GML geometric properties should be represented as attributes in the FME feature type definitions.
In FME data features, the GML geometric properties are represented as a single named geometry – or, if multiple geometries are present, as an aggregate geometry with multiple named geometry components. The name and the position for these geometric elements can also be controlled through the GML Writer: User Attributes
- If this parameter is checked (which is the default), then the feature type definitions will contain the geometry names as attributes, and their type is set to xml_geometry. If an attribute X has its type set to xml_geometry, this attribute X becomes a placeholder in the feature type definition. It is a placeholder because actual data features for the feature type definitions will not have this attribute; instead, the data features will have a geometry named “X”.
- If this parameter is unchecked, then the feature type definition will not contain geometry names.
The FME feature type and/or attribute names may include the XML Namespace prefixes used in the GML application schema. The prefix will be separated from the names with an underscore.
By default, the prefixes are not added to the names. To include the prefixes in the feature types, select Feature Types. To include the prefixes in both the feature types and attributes select Feature Types and Attributes.
Setting this parameter to Feature Types is necessary when a GML dataset contains feature types with the same name in different namespaces.
The list of whitespace-separated QNames specified in this parameter defines properties that the reader should ignore while processing the GML application schemas.
To ignore property regardless of namespace, simply specify the local-part of the name. For example:
boundedBy name
will ignore all properties whose local name are boundedBy or name, regardless of their namespace.
A prefix in a QName should be present in the parsed XML schemas. If no corresponding URI namespace can be found for a prefix, then the prefix will be discarded. The QName will (as in the unprefixed case) apply to all properties with the same local-part, regardless of namespace.
For example:
gml:boundedBy identifier wrong-prefix:description
If a binding for the gml prefix can be found in the parsed schema, then only boundedBy properties with the same namespace URI as gml will be ignored; otherwise, every boundedBy property regardless of namespace will be ignored.
Every identifier property, regardless of namespace, will be ignored. Every description property regardless of namespace will also be ignored, since the parsed schema will not have a binding for the "wrong-prefix" prefix.
GML Feature Properties – Attribute Handling
Specifies whether GML properties that are defined as a complex type with complex content (that is, those that have embedded children elements) should be mapped as nested list attributes within FME features.
If the value is set to XML Fragments, then the complex properties with complex content are mapped as XML fragments.
Some complex properties, such as those that are recursively defined, cannot be mapped as nested lists. These complex properties will always be mapped as XML fragments, regardless of the setting for this parameter.
This optional parameter can control the depth of nested list attributes.
Specifies whether GML properties that are mapped as XML fragments should be converted into XML documents.
The conversion will add missing namespace declarations to the fragments, it will maintain CDATA sections, and it will also prefix an XML header declaration to the fragment. Converting the XML fragments into XML documents allows XML-based parsers, e.g., XSLT and XQuery based processors, to further process the fragments.
This parameter specifies whether GML properties that are mapped as XML fragments should be flattened into nested attributes.
The flattening will only be applied to the data features carrying the XML fragments, hence the new flattened nested attributes will not be reflected in the FME feature type schema definitions.
These options are available for the flattened list attributes:
- Substitute Open List Brace: This directive specifies the character to use as the open brace for the flattened list attributes. The open brace defaults to a curly brace
{
but any single character is accepted. - Substitute Close List Brace: This directive specifies the character to use as the close brace for the flattened list attributes. The close brace defaults to a curly brace
}
but any single character is accepted. - Substitute Element List Separator: This directive specifies the string to use as the separator for components within the nested attributes. The nested attribute component separator defaults to a period (.) but any single character is accepted.
ArcGIS Cache Expiry
The duration that the local feature cache remains valid. When this time expires, features are read from the live WFS URL to establish a fresh local cache.
Note: This parameter applies only to a WFS connection via the ArcGIS Data Interoperability extension or the FME Extension for ArcGIS. This parameter is ignored by all other FME applications.
Schema Attributes
Use this parameter to expose Format Attributes in Workbench when you create a workspace:
- In a dynamic scenario, it means these attributes can be passed to the output dataset at runtime.
- In a non-dynamic scenario where you have multiple feature types, it is convenient to expose additional attributes using this one parameter. For example, if you have ten feature types and want to expose the same attribute in each one, it is easier to define it once than it is to set each feature type individually in the workspace.
Using the minimum and maximum x and y parameters, define a bounding box that will be used to filter the input features. Only features that intersect with the bounding box are returned.
If all four coordinates of the search envelope are specified as 0, the search envelope will be disabled.
When selected, this parameter removes any portions of imported features being read that are outside the Search Envelope.
The example below illustrates the results of the Search Envelope when Clip to Search Envelope is not selected (set to No) and when it is selected (set to Yes).
- No: Any features that cross the search envelope boundary will be read, including the portion that lies outside of the boundary.
- Yes: Any features that cross the search envelope boundary will be clipped at the boundary, and only the portion that lies inside the boundary will be read. The underlying function for the Clip to Search Envelope function is an intersection; however, when Clip to Search Envelope is selected, a clipping operation is also performed in addition to the intersection.
Specifies the coordinate system for the search envelope. If not specified, LL84 is assumed.
This option is not included in the GetFeature request for WFS 1.0. For WFS 1.1.0 and 2.0.0, the search coordinate system is formatted according to the syntax published on the GetCapabilities response. For example, EPSG:4326 may be expressed as urn:ogc:def:crs:EPSG::4326 in the GetFeature request. The default coordinate reference system (CRS) in this case is not necessarily LL84 – it is the CRS specified by GetCapabilities.