Introduction To OGC Web Services
Introduction To OGC Web Services
Editors:
Allan Doyle
Carl Reed
Contributors:
Jeff Harrison
Mark Reichardt
A formal definition of a web service may be borrowed from IBM's tutorial on the
topic:
Web services are a new breed of Web application. They are self-contained, self-
describing, modular applications that can be published, located, and invoked
across the Web. Web services perform functions, which can be anything from
simple requests to complicated business processes...Once a Web service is
deployed, other applications (and other Web services) can discover and invoke
the deployed service.
1
This section based on an article by Venu Vasudevan called “A Web Services Primer”, April 2001.
1 OGC http://www.opengeospatial.org
It is obvious from this statement that the industry vision for Web Services is
closely aligned with the OGC vision for interoperable and ubiquitous geo-
services.
IBM's web services tutorial goes on to say that web services would have been too
inefficient and costly to implement a few years ago. However, during the last two
years IT trends and infrastructure investment have provided for cheaper
bandwidth and storage as well as the availability of more dynamic content and
the technology to support it. At the same time the pervasiveness and diversity of
computing devices with different access platforms make the need for a
middleware “glue” more important, while making the costs (bandwidth and
storage) less objectionable.
Why bother with the Web Services when there are already a number of
middleware platforms available to do this job (RMI, Jini, CORBA, DCOM etc.)?
While middleware platforms provide great implementation vehicles for services,
none of them is a clear winner. Why?
The middleware environments that are most visible today are CORBA,
Enterprise JavaBeans, message-oriented middleware, XML/SOAP, COM+ and
.NET. However, over the past decade or so, the middleware landscape has
continually shifted. For years, there was an assumption that a clear middleware
winner would emerge and stabilize this state of flux 2 . However, each of these
technologies has achieved success in the IT market. And, in spite of the
advantages (sometimes real, sometimes imagined) of the latest middleware
platform, migration is expensive and disruptive
2
Synopsis of a discussion on middleware proliferation in: Model Driven Architecture, Richard Soley and the
OMG Staff Strategy Group, November 2000
2 OGC http://www.opengeospatial.org
exposes the operations supported by the business logic. The logic itself is
implemented in a traditional middleware platform.
With the Web Services approach, application design the act of describing entails
describing the capabilities of
available network services to
perform a function and
Web Services reflect a new
describing the orchestration of service-oriented architectural
these collaborators. At runtime, approach, based on the notion
application execution is a of building applications by
matter of transmitting the discovering and orchestrating
collaborator requirements to a network-available services
discovery mechanism or
service, locating a collaborator capable of providing the right service, and
orchestrating the sending of messages to collaborators to invoke their services.
Considered in total, this collection of services become an application, but can
also be considered as a new aggregated service available for discovery and
collaboration.
3
Service: A collection of operations, accessible through an interface, that allows a user to
invoke a behavior of value to the user (definition from ISO 19119).
3 OGC http://www.opengeospatial.org
implementation details.
These same arguments define the requirement for an OGC Web Services
framework. Further, the philosophy for Web Services is completely in line with
current OGC thinking regarding the provision of interoperable Web Services.
Within the broader context of Web Services, OGC Web Services (OWS)
represent an evolutionary, standards-based framework that enable seamless
integration of a variety of online geoprocessing and location services. OWS
allows distributed geoprocessing systems to communicate with each other across
the Web using familiar technologies such as XML and HTTP. OGC Web
Services provide a vendor-neutral, interoperable framework for web-based
discovery, access, integration, analysis, exploitation and visualization of multiple
online geodata sources, sensor-derived information, and geoprocessing
capabilities.
Point to
Contain Operators
Create
Repositories
Describe
Metadata Hold
Names
Geospatial Information
Identify
Key
Data
Operations
Architectural considerations
5 OGC http://www.opengeospatial.org
3) The need to support many independently provided instantiations of the
services;
5) The need to discover what services can be used with specific data
holdings;
6) The need to deliver services that are tightly bound to data as well as
services that have no direct data content
These factors define the power of what OGC Web Services for technology
developers and users alike. They also describe some of the difficulties in
finding the right balance when making architectural decisions. A primary focus
for the next phase of the Web Mapping Testbed, WMT-3, will be to address
these architectural decisions, which are categorized below for further discussion:
Service Model
The service model is the overall model governing the structure of OGC Web
Services. It is an architecture in which individual services have interfaces of
known types. These interface types are described in service metadata and the
service metadata are available to clients of the service via a "Get Capabilities"
request. There are Catalogs or Service Registries that provide queryable access to
collections of service metadata. There are services provided by these
Catalogs/Registries that assist in maintaining the information contained in the
catalog. Finally, the interface types form an inheritance tree of interface
properties. Other considerations for the service model are:
6 OGC http://www.opengeospatial.org
• OGC has adopted ISO 19119 as the basis for an Abstract Specification of
this service model.
Service Metadata
Capabilities Request/Response
A given service must provide access to its service type and service instance
metadata. Historically within OGC, this is known as the "Capabilities" request
and response.
Catalog/Registry Request/Response
Specific request and response syntax and semantics are under development to
satisfy the needs of our service model. The work has primarily concerned itself
with the content of the response, following the pattern developed in the FGDC
Geo profile of Z39.50.
Catalog/Registry Services
Further services that support maintaining the coherency and currency of the
holdings of a catalog are important additions to the OGC Catalog Services
model.
Using the service metadata and the capabilities response mechanism, we have to
develop a taxonomy of service types and develop an inheritance tree of those
service types.
7 OGC http://www.opengeospatial.org
OGC Web Services in Relation to broader efforts (UDDI/SOAP/WSDL)
SOAP arose from the realization that no matter what the current middleware
offerings are, they need a Wide Area Network wrapper. Architecturally, sending
messages as plain XML has advantages in terms of ensuring interoperability. The
middleware players seem willing to put up with the costs of parsing and
serializing XML in order to scale their approach to wider networks.
4
IBM, BEA Systems, Oracle, Microsoft and HP are just a few of the major IT companies that have developed or
are developing a Web Services infrastructure strategy and capability.
8 OGC http://www.opengeospatial.org
Microsystems made contributions. UDDI is managed by the Organization for the
Advancement of Structured Information Standards (OASIS) and is currently in
open standard version 2.0, but the version 3.0 specifications were released as of
July 2002.
UDDI allows a potential user or customer to find a web-based service that they
require and retrieve pertinent business and technical information to create an
interface to use it.
Why is this important? In the past, finding a business with suitable web services
to solve a specific problem or provide a business-to-business (B2B) service was
like finding a needle in a haystack. Moreover, once a service was found,
gathering the necessary information to create an interface so the service could be
accessed was time consuming and unnecessarily complicated. UDDI was created
to provide an accessible system where a company could post all the relevant
information (either publicly or privately) about their web services to speed the
development time for building B2B service interfaces. Currently, UDDI is
simply a repository contained in a public or private database that helps facilitate
the technical end of accessing a web service.
UDDI is based on XML and SOAP since each is independent of any computing
platform software or hardware and each are able to communicate between
disparate systems. As the name universal description discovery integration
implies, this system is comprised of three distinct areas:
Description
Discovery
Integration
Description
The heart of UDDI is the business registry, also known as the UDDI business
registry (UBR). The UBR is an XML-based database containing detailed and
structured entries. It was designed to mimic a telephone directory and is broken
down into white, yellow, and green pages. Each database entry has information
that describes the following about a company and the service it will provide:
Discovery
Although there are a large number of businesses that provide a variety of
services, it is still difficult for potential clients to find the specific services they
can use to enhance their business. The discovery portion of UDDI is loosely
9 OGC http://www.opengeospatial.org
analogous to an Internet search engine in that the UBR can be searched to a
certain extent for services and businesses in specific industries. Businesses
publish their information in the UBR and potential customers and business
partners access the database to find the services they need. It should be noted that
in version 2 of UDDI the search capabilities are not as robust as in 3.0.
Integration
Once a suitable web service has been identified, the final step is to integrate the
customer and the web service so they can communicate. The green pages of the
UBR contain technical details about an advertised service that can be used by a
potential customer to create an interface to access the service. This streamlines
the development process and minimizes the time it takes to implement a web
service solution.
UDDI is unique in that it does not gather information from an external source.
All entries are intentionally input by individual companies and the information is
complied into a single resource, making the information more accurate, up-to-
date, and pertinent for a potential client searching for a specific service.
As UDDI develops and becomes more searchable and more secure, it will begin
to shape the future of e-commerce. UDDI gives web services an accessible and
competitive venue to be bought and sold like any other product in today's
electronic marketplace.
WSDL provides a way for service providers to describe the basic format of web
service requests over different protocols or encodings. WSDL is used to describe
what a web service can do, where it resides, and how to invoke it. While the
claim of SOAP/HTTP independence is made in various specifications, WSDL
makes the most sense if it assumes SOAP/HTTP/MIME as the remote object
invocation mechanism. UDDI registries describe numerous aspects of web
services, including the binding details of the service. WSDL fits into the subset
of a UDDI service description.
10 OGC http://www.opengeospatial.org
OpenGIS, OGC, and OGC User are registered trademarks and service marks or trademarks and service marks of Open
Geospatial Consortium, Inc. Copyright 2001-2006 by the Open Geospatial Consortium, Inc.
11 OGC http://www.opengeospatial.org