The Earth Observing System Data Gateway (EDG) was developed in response to the earth science community's need for a one-stop-shopping interface to search for data and order data granules from distributed data archives. This innovation enables users to explore, discover, and order available data from geographically distributed data providers through a standard interface.
In the early 1990s, it was decided that data provider sites - running servers which all speak the same protocol - would be beneficial to the earth science community if these servers enabled clients to:
- Search for data, based on high-level criteria (geographic location, time, satellite, etc.),
- Browse the results of search, viewing "thumbnails" of data which satisfied the user's query, and
- Order the actual data, having it delivered to a specified address on some chosen medium (CD-ROM, 9-mm tape, etc.)
The EDG, originally the ESDIS Version 0 Information Management System (or "V0") was developed to satisfy this goal. From one perspective, it consists of a high-level client-server protocol, and a collection of C libraries which implement the passing of protocol messages between a EDG client and one or more EDG servers. These EDG server sites are usually called "Distributed Active Archive Centers" (DAAC). Each DAAC may allow access to many individual data items, called "granules." Granules are themselves grouped into collections of related granules called "data sets." EDG allows users to send a search query to multiple DAACs simultaneously, inspect the resulting information, select browseable granule, and then order identified data from the different sites in a seamlessly integrated fashion.
The first (and most sophisticated) V0 client to be developed was an X-Windows based user interface, commonly called "the GUI." This interface allows a user to send a search to multiple DAACs simultaneously, and then to browse and order the results from the different sites in a seamlessly integrated fashion. This system, commonly called the EOSDIS Version 0 Web Gateway (or Web Gateway for short), is another, very special kind of V0 client. It is fashioned after the GUI, and allows users to perform many of the same activities. However, it is WWW-based, using CGI scripts to:
- Output (and handle) the search form,
- Display the search results, as dynamically-generated HTML with clickable hyperlinks,
- Fetch and display the browse images, and
- Submit the data orders.