Intergraph Refractions Research Implementation Comments

Copyright © 2006 Open Geospatial Consortium – All rights reserved 39

10.2.4 Poor Quality of Service

Experience has shown that the amount of layers in, mostly in Cubewerx WMS instances, is astounding. The Capabilities document takes a long time to download and parse, and the user is often overwhelmed by the selection of layers they can choose from. In Cubewerx instances, because these layers are often cascaded, GetMap requests can often be very slow, or can even fail entirely if the original host server is down. While these instances are to be considered stateless and a subsequent Capabillities request will show these layers removed it is often too late from the perspective of an end-user. There is no way to determine the quality of service behind a cascaded layer, and this can provide problems for users of Integrated Clients.

10.3 Implementation Comments

10.3.1 Intergraph

Since the Intergraph client is built on the commercially available GIS platform known as GeoMedia Professional, it is able to utilize existing interoperability components that allow for direct access to a WMS. The architecture for GeoMedia allows a user to connect to the native WMS data through a dataserver component. This component handles all initiation of requests and interpretation of responses from the native data format. The user supplies the WMS endpoint to the connection service and the service makes a GetCapabilities request as the initial communication to the service. The list of available layers are then presented to the user. If the user wishes to view the data, for example, he or she will select the appropriate layers to be displayed and the appropriate GetMap requests are made and the returned image is displayed in a MapView window.

10.3.2 Refractions Research

Use of WMS is straight forward in the Refractions GeoDSS client REFRACTIONS GEODSS CLIENT; a WMS capabilities URL may be dragged directly onto a map or supplied using a wizard. A series of WMS layers may be selected. Individual WMS layers also appear as the result of a search operation and may be dragged into the legend view directly. Web Map Service support in Refractions GeoDSS client was implemented in the GeoTools project, leveraging other code available to provide support for coordinate reference systems and XML parsing. The rendering system detects when WMS Layers from the same server are next to each other and will collapse these down to a single request. 40 Copyright © 2006 Open Geospatial Consortium – All rights reserved +GetCapabilities +GetMap +GetFeatureInfo +GetLegendGraphics +GetStyles +PutStyles WebMapServer +createDescribeLayerRequests +createGetCapabilitiesRequest +createGetFeatureInfoRequest +createGetStylesRequest +createPutStylesRequest -capabilities : URL -getmap : URL WMSSpecification WMS1.0 -getFeatureInfo -getLegendGraphics -getStyles -putStyles WMS1.1 -getFeatureInfo -getLegendGraphics -getStyles -putStyles WMS1.1.1 -getFeatureInfo -getLegendGraphics -getStyles -putStyles WMS1.3 Figure 12 GeoTools Web Map Server Specification Support In order to deal with the plentiful but subtle differences between the WMS specifications and improper server instances, we implemented a strategy object system that adapts itself to the current version of the server it is communicating with. The client performs version negotiation with the servers until it detects a version it can communicate with, or breaks off contact. A separate technology was used to parse the XML responses from WMS which provides flexible support for the multiple versions of Capabilities document. It also tries to be as lenient as possible when it encounters nonconforming servers. While the code in GeoTools provides support for all WMS versions, Refractions GeoDSS client does not use WMS 1.3.0, due to problems with EPSG:4326, noted in section 10.2.2.1.

10.4 Recommendations