Representation of Open Web Services

22 Copyright © 2006 Open Geospatial Consortium – All rights reserved of data that can reduce the number of network calls, but the volume of data originally pushed to the client far exceeds a WMS call. Also, such clients can enable actually editing and manipulation of data at the client level, which might be transactionally inserted back into the originating service. Clustering allows greater performance than most distributed networkserver topographies. While clustering over http: does enable you to avoid network latencies, the current OGC servlet http: interfaces do not maximally enable clustering the way CORBA or JAVA interfaces do.

7.2 Interaction with Open Web Services

This section concentrates on the use of Open Web Services, in particular constructing your application to work in the face of the many services and standards currently deployed.

7.2.1 Representation of Open Web Services

When locating information, either directly at the bequest of a user or via a catalogue search, you will often find the same information available through several workflows. As an example a Catalogue search will reveal this information through multiple service associations. In addition you can often safely inspect the following: Sending a WFS Capabilities request to a provided WMS end point most commercial and public domain WMS implementations allow for this Inspection of the WMS DescribeLayer information for an available a WFS end-point Knowledge of the popular implementations Traditionally there are several approaches to working with remote services or resources in general. A Representation by Proxy The remote service may be represented by use of a Proxy, as shown by CORBRA or recent XML SOA Binding technologies. The use of a Proxy class results in a viable, direct representation of an external service. A Proxy class is limited to representing a single OWS Service, and is problematic as services availability and version change over time. B Representation by Handle Copyright © 2006 Open Geospatial Consortium – All rights reserved 23 The remote service may also be managed through the concept of a resource handle. By not representing a service explicitly we gain the ability to lazily bind to the service, and may represent a service that is unavailable or not yet created. An advantage of the resource handle approach is the ability to offer a binding using a workflow appropriate API. This flexibility allows your architecture to adapt to future considerations such as the addition of additional services and workflows based on the same information. +getInfo : Info +resolvein type : Class : Object +canResolvein type : Class : boolean -id Handle -name -title -abstract -keywords -bounds -crs Info +resolvein type : Class +canResolvein type : Class SomeResource Extension: Subject SomeInterface Extension Proxy +resolvein obj : Object, in type : Class +canResolvein obj : Object, in type : Class ResolutionManager «uses» +resolvein obj : Object, in type : Class +canResolvein obj : Object, in type : Class ResolutionFactory Open ended set to capture WMS, WFS and Workflow endpoints. Figure 4 Resource Handle In the above diagram a Handle offers access to metadata information represented by Info in the above diagram. The implementation of a handle will vary according to source the results of a Catalogue search, or the processing of a capabilities document. A ResolutionManager indicates the availability of a plug-in system to define additional resource bindings.

7.2.2 Use of Multiple Services