Version numbering and negotiation |
The version number is expressed in three positive integers, separated by decimal points, in the form of "x.y.z", and the numbers "y"and "Z" cannot exceed 99. For example, WFS Versions are 1.0.0, 2.0.0, etc.
The version number appears in at least two places, in the Capabilities XML document used to describe the service and in the client's request parameters.
The client-side and server-side version number negotiation is done through the GetCapabilities operation.
All Capability XML must include the protocol version number, and in order to respond to a GetCapabilities request that includes the version number, WFS must respond with the same version as the request.
The version number requested by the client should match the version number supported by the server, otherwise, the most recent matching principle should be followed:
The process is repeated until both sides reach an agreement or the client cancels the communication with the server.
Example 1. The server understands versions 1, 2, 4, 5, and 8. Client understands versions 1, 3, 4, 6, 7. The client first requests version 7, and the server responds to version 5. The client then requests version 4, and the server responds to version 4. The client and the server reach an agreement.
Example 2. Server Understanding Versions 4, 5, 8. Client understands version 3. The client first requests version 3. The server responds with version 4. The client does not understand this version or any later version. The client stops communicating with the server.