The Complex Feature plan

updated to reflect the state of affairs as of 2008.

Milestone 1: Simple Schema Mapping

This first chunk of work involves introducing the concept of schema mapping into GeoServer. Essentially allowing for the following use case:

  1. User uploads an application schema
  2. User configures a feature and points it to the application schema
  3. User provides mappings from feature type attributes to application schema elements
  4. All GML output conforms to the application schema

It is important to note that this round of work only involves simple and flat data. No complex attributes, multiplicity, or associations/joins are supported.

Components

GML Encoding

Alternative: use a retyping FeatureReader to morph the feature type before it enters the encoding pipeline

Configuration
User Interface

Milestone 2: GeoServer Data Access

The next chunk of works involves abstracting how GeoServer accesses features. The current plan of how to do this is though use of the DataAccess which is now a super interface of DataStore.

Components

DataStore/SimpleFeature to DataAccess/Feature
Abstract Feature Access

Milestone 3: Complex Data Store

The final step is to produce a data store capable of serving complex content. This involves representing associations, performing joins, etc...

Components

Hibernate DataStore