What is the OGC Web Server Suite?

With the OGC Web server suite, Luciad offers servers for several Open Geospatial Consortium (OGC) protocols. These are standards for querying and manipulating geospatial data based on various spatial and non-spatial constraints. For example:

  • Luciad Web Map Service (WMS) server: implements the OGC web service interface standard for the retrieval of geospatial maps in an image format.

  • Luciad Web Coverage Service (WCS) server: implements the OGC web service interface standard for the retrieval of coverages. Coverages are thematic data collections about phenomena that vary in space, such as demographic or weather information.

  • Luciad Web Feature Service (WFS) server: implements the OGC web service interface standard for the retrieval and manipulation of geospatial features.

  • Luciad Catalog Service for the Web (CSW) server: implements the OGC web service interface standard for the retrieval of metadata records.

In a typical scenario, clients contact the server for information about its capabilities: information about the data it offers, and in which formats. At this point, clients can either request more information, or they can create a request for the geospatial data if the returned capabilities match the requirements. When the server receives a request, it will return the requested data.

Basic architecture

The web service architecture has three main components:

  • A client which uses the server to query geographical data.

  • The Luciad server which retrieves the data from different data sources and distributes it to the client in an agreed data exchange format.

  • The data sources from which the server retrieves the data. This can be any data source for which a model decoder is available.

The Luciad OGC Web Server suite provides server samples based on LuciadLightspeed technology. They are fully functional and OGC-compliant servers. The API that goes with the suite allows users to further extend these servers by:

  • Plugging in additional standard LuciadLightspeed decoders for accessing data sources in any data type, and making their data available through the server. These can be LuciadLightspeed decoders provided in LuciadLightspeed or in any LuciadLightspeed component , or the user’s custom decoders.

  • Plugging in specific data exchange formats. The WFS server, for example, uses GML as the default exchange format with clients. Other output formats can be used as well, by plugging in an encoder for the format. These can be LuciadLightspeed encoders provided in LuciadLightspeed or in any LuciadLightspeed component, or the user’s custom encoders. To illustrate this, the WFS server sample plugs in the LuciadLightspeed encoder for the GeoJSON format.

  • Extending the OGC specification with custom requests or custom parameters, and implement the extended specification using the LuciadLightspeed Server APIs.

In addition, the WMS Server API allows you to:

  • Plug in specific output projections.

  • Plug in specific painters and label painters for providing a fully customized visual representation of the data.

Note that the decoders, projections, image encoders, and so on, used to extend the Luciad server,are standard LuciadLightspeed components. This means that they can be reused from and shared with existing LuciadLightspeed client applications.

What is the Luciad WCS server?

The OGC WCS specification defines a standard web service interface for the querying of "coverages", which consist of space-varying information. Typical examples of coverages are demographic information, such as population density, weather charts showing temperature for example, or elevation maps.

You can find the Web Coverage Service specification at http://www.opengeospatial.org/standards/wcs.

Typically, a WCS server client starts by querying a WCS to know which coverages are offered. This type of request is called the GetCapabilities request. Based on the returned information, the client can decide to retrieve more information about a coverage or to request a coverage. The DescribeCoverage request gives a full description of one or more coverages served by the WCS. The GetCoverage request allows to retrieve a coverage in a known coverage format, for example GeoTIFF.

Figure 1. Architecture using the Luciad WCS server.

The WCS specification is somewhat similar to the WMS specification. The main difference is that the data returned by a WCS fully retains its original semantics. A WMS renders pictures on the server side. Those pictures have little use on the client side beyond being displayed to the end user. On the other hand, WCS returns data that can be rendered on the client side, but can also be used for further analysis, extrapolation, and so on. A WCS is sometimes used as a data provider inside a WMS that renders the coverages in pictorial formats like PNG, allowing simple clients to visualize the result.

The Luciad WCS server offers support for versions 1.0.0 and 1.1.0/1.1.1 of the WCS specification, and is certified OGC-compliant.