Services, interfaces and operations

5.2.4 Publish-find-bind

The OWS Service Framework is based on the publishfindbind pattern shown in Figure 4. This pattern enables dynamic binding between service providers and requestors. Dynamic binding is an essential capability for distributed environments where operational needs, sites and applications are frequently changing.

2. Find

0. Code

1. Publish

3. Bind

C t l Servic Service Servic Develope 4. Chain Figure 4 - PublishFindBind Pattern In Figure 4, there are three essential roles: - Service provider: publishes services to a broker registry and delivers services to service requestors. - Service requestor: performs service discovery operations on the service broker to find the service providers it needs and then accesses service providers for provision of the desired service. - Service broker: helps service providers and service requestors to find each other by acting as a registry or clearinghouse of services. As shown, there are three essential kinds of operations performed by services: - Publish: used to advertise data and services to a broker such as registry, catalog or clearinghouse. A service provider contacts the service broker to publish or unpublish a service. A service provider typically publishes to the broker metadata describing its capabilities and network address. - Find: used by service requestors to locate specific service types or instances. Service requestors describe the kinds of services they’re looking for to the broker and the broker responds by delivering the results that match the request. Service requestors typically use metadata published to the broker to find service providers of interest. Copyright © 2007 Open Geospatial Consortium, Inc. All Rights Reserved. 9 - Bind: used when a service requestor and a service provider negotiate, as appropriate, so the requestor can access and invoke services of the provider. A service requestor typically uses service metadata provided by the broker to bind to a service provider. The service requestor can either use a proxy generator to generate the code that can bind to the service, or can use the service description to manually implement the binding before accessing that service. Figure 4 also shows that services can be chained with various degrees of transparency to achieve larger tasks required by a service

5.2.5 Multi-platform implementation approach

Ensure discovery, access, dissemination and management of all GEOINT data stores through a web-enabled service-oriented-architecture. [Excerpt from NSG Statement of Strategic Intent] A Distributed Computing Platform DCP is the collection of protocols, services and conventions that applications use to invoke remote operations. There have been many popular DCPs over the years including CORBA, DCOM and DCE. Each of these platforms have their strengths and weaknesses. Web Services must also be viewed as a DCP. Like the others, the web services model has its’ strengths and weaknesses. There are applications for which web services are not appropriate. We can also expect that, with the development of new distributed computing technologies, web services will eventually become obsolete. Developers of interoperability standards must be prepared to deal with this continuous change in DCP implementing technology as well as the simultaneous fielding of multiple DCP implementations. The OGC addresses this problem by separating the business logic conceptual specification from the DCP specific implementation guidance implementation specification. In practice, COTS vendors have been able to use this model to develop applications that expose themselves over several DCPs simultaneously. They have also been able to rapidly add support for new DCPs since no changes to the application logic is required. 10 Copyright © 2007 Open Geospatial Consortium, Inc. All Rights Reserved.