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 WMS server?

The OGC WMS specification defines a standard web service interface for the retrieval of maps of geographical data over the Internet. In general, a Web Map Service is invoked by a client application that provides the user with interactive controls.

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

Typically, a client starts by querying a WMS to know which data is offered, which output formats are supported, and so on. This type of request is called the GetCapabilities request.

Based on the returned information, the client sends a request to retrieve a particular map in one of the offered output formats. This request is known as the GetMap request. The WMS returns an image which contains a map for the specified area and which is rendered in the specified way.

The client can then query the Web Map Service to get more information about specific points on the returned map. This request is called the GetFeatureInfo request. Although the WMS specification defines these requests as optional, the Luciad WMS supports GetFeatureInfo requests. The WMS server offered by Luciad implements the OGC WMS 1.1.1 and 1.3.0 specification, and is certified OGC-compliant.

Figure 1. Architecture using the Luciad WMS server.

Styling a WMS map

To allow different visualizations of the same geographical data, a WMS can define a number of styles per map. When requesting a map for which multiple styles are available on the WMS, the user can specify which style must be used for its rendering.

To address the need for more advanced rendering options, OGC has defined a map-styling language, called the Styled Layer Descriptor (SLD), for producing georeferenced maps with user-defined styling. You can find the Styled Layer Descriptor specification at http://www.opengeospatial.org/standards/sld. Through the SLD language, users can define their own styling rules for maps requested by a WMS that supports this language.

Furthermore, the Luciad WMS provides support for the GetLegendGraphic and DescribeLayer requests. The GetLegendGraphic request allows clients to acquire legend symbols in a uniform way, while the DescribeLayer request allows to obtain feature/coverage-type information for a layer. Both requests are considered optional for an SLD-enabled WMS. The Luciad WMS implements the OGC SLD 1.0 and 1.1 specification.

The maps returned by a Web Map Service are generally rendered in a pictorial format such as PNG, GIF or JPEG. Consequently, it is not possible to select individual objects on a map. This makes the WMS less suitable for clients that want to do further analysis on the returned map besides displaying it. Through the GetFeatureInfo request, one can only request more information about specific points on a map. This limitation contrasts with the OGC Web Feature Service interface (WFS) for example. WFS provides geographic information in the OGC Geography Markup Language, a "rich" vector format, without any prior interpretation or rendering.