| 1 | |
| 2 | == FDO-OGC Enhanced Version Handling == |
| 3 | |
| 4 | === Overview === |
| 5 | |
| 6 | In the current design of the OSGeo OGC FDO Provider(s) connection process, no mechanism exists to allow a client to specify which OGC version should be used when establishing a connection with a server and retrieving its capabilities. This is true for both the WFS and WMS providers. In the absence of any user-specified information, both providers hard-code the version numbers used when issuing its !GetCapabilities requests. For WMS, this value is hard-coded to be 1.3.0. For WFS, this value is hard-coded to be 1.1.0. |
| 7 | |
| 8 | Let’s use WMS as an example. If 1.3.0 is hard-coded as the initial OGC version number, the WMS server is supposed to (as specified in the OGC WMS specification) respond to the request with a capabilities document that corresponds to version 1.3.0 or the next lowest WMS version supported by the server. If a server supports WMS versions 1.1.1 and 1.3.0 or does not recognize version 1.3.0, there is no means of allowing a user to request that the provider use the WMS capabilities that corresponds to version 1.1.1. The same behavior is true for WFS servers. |
| 9 | |
| 10 | In testing the WMS Provider with real world WMS servers, we found that certain servers support multiple WMS versions, each corresponding to a different set of capabilities and resulting layers. We also found out that certain servers do not recognize version 1.3.0 and will not return a valid capabilities document when it is used to retrieve the server’s capabilities. We had to introduce a workaround into FDO that would allow the user to specify version 1.1.1. Without this workaround the entire WMS site was unusable. |
| 11 | |
| 12 | In order to resolve this issue the WMS and WFS providers should be enhanced to allow the specification of an optional version number as a connection property. Users would be allowed to specify this value as a part of the WMS and WFS Provider connection process. |
| 13 | |
| 14 | While no defects exist for the WFS, the Version property should also be added to the WFS provider so that both the WMS and WFS providers’ connection property remain consistent. |
| 15 | |
| 16 | === Description === |
| 17 | |
| 18 | The Version number connection property will be added to the FDO WMS and WFS Providers list of available connection properties as follows. |
| 19 | |
| 20 | ==== WMS Version Connection Property ==== |
| 21 | |
| 22 | Property Value[[br]] |
| 23 | - - - - - - - - - - - - - - - - - - - - - - [[br]] |
| 24 | Name --------------- Version[[br]] |
| 25 | !LocalizedName ------ Version (English)[[br]] |
| 26 | !DefaultValue -------- 1.3.0[[br]] |
| 27 | !IsRequired ---------- No[[br]] |
| 28 | !IsProtected --------- No[[br]] |
| 29 | !IsEnumerable -------- No[[br]] |
| 30 | !IsFileName ---------- No[[br]] |
| 31 | !IsFilePath ----------- No[[br]] |
| 32 | !IsDatastoreName ---- No[[br]] |
| 33 | |
| 34 | |