Home Articles Open Geospatial Datastore Interface (OGDI): A geospatial data infrastructure solution

Open Geospatial Datastore Interface (OGDI): A geospatial data infrastructure solution

Gilles Clément and Christian Larouche
Global Geomatics Inc. 1600, St.Martin Blvd. East,Tower A,
Suite 650, Laval, Quebec, Canada, H7G 4R8
tel.: (450) 668-4949, fax: (450) 668-2822,
Email: [email protected]

 

Abstract
One of the main problems in today's spatial or geographic information management framework is geospatial data conversion and integration. Very often, GIS developers and users need to import geospatial data from different sources. This task has proven to be difficult and time consuming. Industry experts believe that 60% to 85% of the total cost of implementing a GIS is data conversion. Geospatial data products are offered in a large variety of different and incompatible formats, possibly in different coordinate systems or cartographic projections. Typically suppliers have developed versions of geospatial data products for several software packages.

Geospatial data format standardization is one solution to this problem. However, standardization efforts alone will not solve the geospatial data conversion and integration problem by itself. This paper proposes a solution called Open Geospatial Datastore Interface (OGDI) to leverage and to accelerate this standardization effort. OGDI uses a client/server architecture to facilitate the dissemination of geospatial data products over the Internet or a corporate Intranet and an adapter-oriented approach to facilitate access to several geospatial data products and formats.

OGDI provides a solution for some of the most difficult geospatial data integration problems. These solutions include:

  • conversion of various formats into a uniform transient data structure
  • adjustment of coordinate systems and cartographic projections
  • retrieval of metadata, geometric and attributes data
  • access to a growing number of geospatial data products and formats and
  • use of the Internet as a medium to distribute geospatial data products.

Use of the OGDI-based technology through pure html and simple Java applications working with main Internet browsers and through plug-ins working with popular GIS packages will be demonstrated, highlighting the direct access to several geospatial data formats such as Shapefile, GeoTIFF, MidMif, MrSID and DIGEST raster and vector products.

Open Geospatial Datastore Interface (OGDI)

1. Introduction
The geomatics industry has grown continuously over the last two decades, and the number of application domains in which Geographic Information System (GIS) and geospatial information are used has increased every year. However, growth in the industry has not lived up to the predictions made 10 years ago, especially compared with that of other information technologies such as Internet, Office Automation or Sales Automation.

The major reasons for slow growth are the lack of digital geospatial data and its high cost, the geospatial data barrier, problems integrating GIS into existing systems, and the complexity of existing GIS software [Larouche et al. 1996]. The geospatial data barrier is probably the most significant problem: geospatial data products are offered in a large variety of different and incompatible formats, many using different coordinate systems or cartographic projections.

In order to leverage on the standardization efforts and to provide a solution to the geospatial data integration problem, the Department of National Defence (DND) of Canada and Global Geomatics Inc have developed the Open Geospatial Datastore Interface (OGDI). OGDI is an application programming interface (API) that sits between a GIS software package and various geospatial data products and, using a standardized access method, provides solutions to some of the most difficult geospatial data integration problems. OGDI source code has been contributed to the public domain, in order to improve the interoperability of GIS software.

 


 

Gilles Clément and Christian Larouche
Global Geomatics Inc. 1600, St.Martin Blvd. East,Tower A,
Suite 650, Laval, Quebec, Canada, H7G 4R8
tel.: (450) 668-4949, fax: (450) 668-2822,
Email: [email protected]

 

Abstract
One of the main problems in today's spatial or geographic information management framework is geospatial data conversion and integration. Very often, GIS developers and users need to import geospatial data from different sources. This task has proven to be difficult and time consuming. Industry experts believe that 60% to 85% of the total cost of implementing a GIS is data conversion. Geospatial data products are offered in a large variety of different and incompatible formats, possibly in different coordinate systems or cartographic projections. Typically suppliers have developed versions of geospatial data products for several software packages.

Geospatial data format standardization is one solution to this problem. However, standardization efforts alone will not solve the geospatial data conversion and integration problem by itself. This paper proposes a solution called Open Geospatial Datastore Interface (OGDI) to leverage and to accelerate this standardization effort. OGDI uses a client/server architecture to facilitate the dissemination of geospatial data products over the Internet or a corporate Intranet and an adapter-oriented approach to facilitate access to several geospatial data products and formats.

OGDI provides a solution for some of the most difficult geospatial data integration problems. These solutions include:

  • conversion of various formats into a uniform transient data structure
  • adjustment of coordinate systems and cartographic projections
  • retrieval of metadata, geometric and attributes data
  • access to a growing number of geospatial data products and formats and
  • use of the Internet as a medium to distribute geospatial data products.

Use of the OGDI-based technology through pure html and simple Java applications working with main Internet browsers and through plug-ins working with popular GIS packages will be demonstrated, highlighting the direct access to several geospatial data formats such as Shapefile, GeoTIFF, MidMif, MrSID and DIGEST raster and vector products.

Open Geospatial Datastore Interface (OGDI)

1. Introduction
The geomatics industry has grown continuously over the last two decades, and the number of application domains in which Geographic Information System (GIS) and geospatial information are used has increased every year. However, growth in the industry has not lived up to the predictions made 10 years ago, especially compared with that of other information technologies such as Internet, Office Automation or Sales Automation.

The major reasons for slow growth are the lack of digital geospatial data and its high cost, the geospatial data barrier, problems integrating GIS into existing systems, and the complexity of existing GIS software [Larouche et al. 1996]. The geospatial data barrier is probably the most significant problem: geospatial data products are offered in a large variety of different and incompatible formats, many using different coordinate systems or cartographic projections.

In order to leverage on the standardization efforts and to provide a solution to the geospatial data integration problem, the Department of National Defence (DND) of Canada and Global Geomatics Inc have developed the Open Geospatial Datastore Interface (OGDI). OGDI is an application programming interface (API) that sits between a GIS software package and various geospatial data products and, using a standardized access method, provides solutions to some of the most difficult geospatial data integration problems. OGDI source code has been contributed to the public domain, in order to improve the interoperability of GIS software.

 


The following subsections define OGDI, describe its main characteristics and architecture, list the geospatial data formats it understands and show how to integrate it into an application.
 

  1.  
    • the conversion of various formats into a uniform transient data structure;
    • the transparent adjustment of coordinate systems and cartographic projections;
    • the transparent transformation of platform-dependent representations; and
    • the retrieval of geometric and attribute data.
  2. Definition
    OGDI is an application programming interface (API) that sits between a GIS software package (the application) and various geospatial data products (or drivers). The open style of OGDI is similar to that of Microsoft Open DataBase Connectivity (ODBC), a programming interface that allows applications to access data in a data base management system using Structured Query Language (SQL). Like ODBC, OGDI uses a driver approach, achieving interoperability by accessing each geospatial data format through an appropriate driver.
  3.  

  4. Main Characteristics
    OGDI is a collaborative and coordinated effort within NATO nations, intended to avoid duplication. Consequently, it and all its source code has been made available the public domain: there are no fees and there is no private club associated with it. Section 6 gives the Internet addresses where the source code is available.
  5.  

  6. OGDI is also an evolving concept that is simple and easy to maintain. OGDI is already available. It is presently in its third generation implementation, which implies robustness and maturity. OGDI is based on the TCP/IP protocol and consequently can easily use the Internet as a medium to distribute geospatial data products. OGDI facilities can be accessed either through an ANSI C or a Tcl/Tk API, which can be called from Win32 or UNIX applications.

    OGDI provides tools for some of the most difficult geospatial data integration tasks, including:

    The transient data model supports both geometric and attribute data. Geometric data is divided into vector (area, line, point) and raster data (line or tile access). Metadata used includes geographic regions and coverage, cartographic projection and sources. More information on the transient data model can be found in LAS (1996a).
     

    • Architecture
      Figure 1 illustrates the components of the OGDI architecture. A dynamically loadable C language API is normally used to access OGDI facilities. Alternatively, a Tcl/Tk API can also be called from an application. Drivers are used to access various geospatial data formats, one for each format.

      Figure 1: OGDI Architecture

      A driver is also a dynamically loadable library that processes C language API requests for a specific datastore. Once a driver is loaded, it receives requests, fetches information from the datastore, translates it into the uniform transient data structure and returns the results to the application. All the APIs are available for UNIX operating systems (Solaris and Linux) and for Microsoft's Windows NT and Windows 95 operating systems.

      Drivers can be accessed either directly, for local datastores, or remotely, for external datastores. For remote procedure calls, other components are needed. The gltpd (geographic locator transfer protocol deamon) module is a small utility program that mimics the behavior of the C language API on a remote computer. The network driver is a special dynamically-loadable library that relays calls from the C API to a gltpd process running on a remote computer. The gltpd process and the network driver are used together to link the application to a remote driver through a TCP/IP network, allowing the application programmer to access remote drivers as if they were local, using a client/server paradigm. When the gltpd process receives its first request from an application, it creates a new thread (a fork) of itself, which loads the requested driver type, takes control of the communication process with the network driver and serves all subsequent OGDI calls coming from the application. The combination of the gltpd process and a specific driver becomes a server to the client (i.e., the application's connection).

      For a programmer using OGDI, there is no difference between a local driver and a remote one. The gltpd process and the network driver take care of the communication protocol transparently, and automatically transform data between incompatible processor architectures. In the current implementation, the gltpd process and the network driver are based on the ONC RPC 4.0 protocol. To standardize vocabulary, "client" is used to describe a connection made by an application, and "server" to describe an instance of one driver connected to one application.

      A new component called "gltp" is used by OGDI. It is similar to the "http" or "ftp" prefixes of the Web, and it gives direct access to a local database or remote access to an external database.

    •  

    • Available Drivers
      The range of available adapters covers most of the actual geospatial data products on the market place. Currently, over 50 different GIS (vector and raster), CAD and imagery data formats can be accessed without the need to convert them in advance.
    • Using the API in an application
      The C-language API is the heart of OGDI. It is a dynamically loadable C library composed of 20 functions that programmers use to access OGDI facilities. A complete list of these functions with a complete set of instructions for programmers can be found in [LAS 1996a].

      The underlying philosophy of OGDI is to encapsulate all the tasks related to geospatial database access in a simple and standard API. With OGDI, an application is isolated from the details of integrating a new kind of datastore.

      To interact with a datastore, a simple application goes through the sequence of steps shown in Figure 2. First, it establishes a connection or creates a "client. Second, it selects a geographic region. Then it selects map layer and extracts objects from it, either sequentially or randomly. It processes the results and finally terminates the connection.


Figure 2: Using the OGDI API in an Application

4. Conclusion and current developments
The previous sections have described how OGDI provides direct and transparent access to a large number of geospatial data formats. Currently, OGDI provides

  • retrieval functions for geometric and attribute data;
  • the transparent adjustment of coordinate systems and cartographic projections;
  • the transparent transformation of platform-dependent representations;
  • a growing number of geospatial data drivers;
  • the use of the Internet as a medium to distribute geospatial data products.

Currently, Global Geomatics Inc has improved the OGDI technology in the following ways:

  • compression/decompression, encryption and authentication facilities are provided;
  • spatial analysis services can be applied to geospatial data in its native format;
  • new drivers are developed with each new release;
  • Various format generator can be provided to allow user to generate data:
  • a VPF/VRF product generator driver
  • an Oracle 8I Spatial loader
  • an Informix Geodetic DataBlade loader
  • a World Wide Web map-viewer plug-in is available to provide a geospatial data browsing capability.

References

  • Buehler, K. and McKee L., 1996, The OpenGIS Guide, Open GIS Consortium Inc., OGIS TC Document 96-01, https://www.opengis.org
  • DGIWG, 1994. CGIS-DIGEST Canadian Geomatics Interchange Standard – Digital Geographic Information Exchange Standard, Edition 1.2, Canadian General Standards Board (Publisher), Ottawa.
  • Larouche, C., G. Clément, G. and T. Moore, C., 1996. Adapting GIS Technology for Decision-Makers, Proceedings of the 1996 Canadian Conference on GIS, Ottawa, Canada, June 4-10, 12p.
  • LAS (Logiciels et Applications Scientifiques Inc.), 1996a. Open Geographic Datastore Interface (OGDI), Version 1.0: Programmer's Reference, 145p.
  • LAS (Logiciels et Applications Scientifiques Inc.), 1996b. GRASSLAND USER'S GUIDE for Windows 95 and Windows NT, Version 1.1.