.. _app-schema.wfs-service-settings: WFS Service Settings ==================== There are two GeoServer WFS service settings that are strongly recommended for interoperable complex feature services. These can be enabled through the :menuselection:`Services --> WFS` page on the GeoServer web interface or by manually editing the :file:`wfs.xml` file in the data directory, Canonical schema location ------------------------- The default GeoServer behaviour is to encode WFS responses that include a ``schemaLocation`` for the WFS schema that is located on the GeoServer instance. A client will not know without retrieving the schema whether it is identical to the official schema hosted at ``schemas.opengis.net``. The solution is to encode the ``schemaLocation`` for the WFS schema as the canonical location at ``schemas.opengis.net``. To enable this option, choose *one* of these: #. Either: On the :menuselection:`Service --> WFS` page under *Conformance* check *Encode canonical WFS schema location*. #. Or: Insert the following line before the closing tag in :file:`wfs.xml`:: true Encode using featureMember -------------------------- By default GeoServer will encode WFS 1.1 responses with multiple features in a single ``gml:featureMembers`` element. This will cause invalid output if a response includes a feature at the top level that has already been encoded as a nested property of an earlier feature, because there is no single element that can be used to encode this feature by reference. The solution is to encode responses using ``gml:featureMember``. To enable this option, choose *one* of these: #. Either: On the :menuselection:`Service --> WFS` page under *Encode response with* select *Multiple "featureMember" elements*. #. Or: Insert the following line before the closing tag in :file:`wfs.xml`:: true