Skip to main content icon/video/no-internet

There have been many successful developments of geographic information systems (GIS) serving different purposes and different organizations and using different GIS software packages. However, geospatial information sharing and acquisition remains a challenge due to the heterogeneity of existing systems in terms of proprietary system designs, data models, and database storage structures. The emergence and use of Web services and Web-service-oriented architecture (SOA) technologies offer the potential to overcome barriers to interoperability among heterogeneous GIS.

Service-Oriented Architecture

The SOA was developed by IBM, Microsoft, and other leading IT industry organizations to support the development of applications that integrate existing computing technologies into solution-based systems. A pure architectural definition of SOA presents it as a design within which all functions are defined as independent services with well-defined and invokable interfaces. An SOA is essentially a collection of Web services that communicate with each other by passing simple data or coordinating some activities. IBM has created a model for an SOA that describes three roles—(1) service provider, (2) service requester, and (3) service broker—and three basic operations—(1) publish, (2) find, and (3) bind. Service providers publish services to a service broker. Service requesters find required services using a service broker and bind to them. The binding from the service requester to the service provider should loosely couple the service. This means that the service requester has no knowledge of the technical details of the provider's implementation, such as the programming language, deployment platform, and so forth. Because Web services in SOA are based on open standards, they are able to work together and understand each other even though they don't use the same language or share the same application platform. For example, the data service “Wisconsin land use map”—residing on a Microsoft Windows server in Wisconsin—can be invoked by the service “display Wisconsin land use map” written in Java code and residing on a Linux server in Los Angeles.

To implement an SOA, the open-standard specifications—WSDL (Web Service Description Language), SOAP (Simple Object Access Protocol), and UDDI (Universal Description, Discovery and Integration Service)—are developed to support the interaction of Web services. The WSDL is an Extensible Markup Language (XML)–based language used to describe the services that a business offers and to provide a way for individuals and other businesses to access those services electronically. A complete WSDL definition contains all the information necessary to invoke a Web service, such as what a Web service can do, where it resides, and how to invoke it. It provides a way for service providers to describe the basic format of Web service requests over different protocols or encodings and thus helps improve interoperability between applications. The SOAP is a communication protocol for communication between applications running on different operating systems with different technologies and programming languages. It defines a format for sending messages between communicating applications via the Internet and specifically using Hypertext Transfer Protocol (HTTP). SOAP consists of three parts: (1) an envelope that defines a framework for describing what is in a message and how to process it, (2) a set of encoding rules for expressing instances of application-defined data types, and (3) a convention for representing remote procedure calls and responses. UDDI provides a mechanism for clients to dynamically find other Web services. Using a UDDI interface, users can dynamically connect to services provided by external providers. The provider typically publishes a WSDL description of its Web service, and the requester accesses the description using a UDDI or other type of registry and requests the execution of the provider's service by sending a SOAP message to it. Since all data in SOA are tagged in XML, communication between applications doesn't depend on any particular operating system or programming language.

...

  • Loading...
locked icon

Sign in to access this content

Get a 30 day FREE TRIAL

  • Watch videos from a variety of sources bringing classroom topics to life
  • Read modern, diverse business cases
  • Explore hundreds of books and reference titles

Sage Recommends

We found other relevant content for you on other Sage platforms.

Loading