| Motivation: | Add support for ComplexFeatures. GeoTools should be able to parse a complex WFS response and construct a set of Feature objects from it. |
|---|---|
Contact: | |
Tracker: | ComplexFeature Parsing & Building Support |
Tagline: | complex features FTW |
Children: |
Description
GeoTool's lack of support for parsing XML into complex features limits its utility as a GIS toolkit.
I propose to add this functionality by augmenting the codebase such that there are complex-compatible analogues or alternatives to all the classes necessary for WFS-based communications. Existing type hierarchies will be modifed and added to to provide this new functionality. In making these changes I will strive for maximum reuse of existing code and will follow the coding patterns and API conventions currently employed; as such, the code for performing a complex feature request will be much like the code for a simple feature request. Breaking changes will be eschewed.
Central to this work is a new XmlComplexFeatureParser which will use an AttributeBuilder and a ComplexFeatureBuilder to create objects that represent the content of WFS XML responses.
The addition of the following classes has had varying levels of impact on their encompassing type hierarchies:
- WFSContentDataAccess
- WFSDataAccessFactory
- XmlComplexFeatureParser
- ComplexFeatureBuilder
The proposed type hierachies can be seen alongside their previous forms here: See how the type hierarchies have changed.
Status
This proposal is under construction.
Voting has not started yet:
- Andrea Aime
- Ben Caradoc-Davies
- Christian Mueller
- Ian Turton
- Justin Deoliveira
- Jody Garnett
- Simone Giannecchini
Tasks
This section is used to make sure your proposal is complete (did you remember documentation?) and has enough paid or volunteer time lined up to be a success
| no progress |
| done |
| impeded |
| lack mandate/funds/time |
| volunteer needed |
|---|
WFSDataAccessFactory integrated into 'Factory' hierarchy.
WFSContentDataAccess integrated into 'DataAccess' hierarcy.
A new 'GetParser<...>' hierarchy created to supplant existing 'GetFeatureParser' hierarchy. XmlComplexFeatureParser integrated into this.
A new 'FeatureBuilder<...>' hierarchy created to generalise functionality from 'SimpleFeatureBuilder' so that it can be used by a new ComplexFeatureBuilder class.- Create an AttributeBuilder. (In progress)
Create a ComplexFeatureBuilder. (Started, blocked by #5)
Complete the XmlComplexFeatureParser. (Started, blocked by #6)
Update documentation. (Blocked by #7)
API Changes
Filter
BEFORE:
AFTER:
Documentation Changes
list the pages effected by this proposal
- gt-opengis filter api update to reflect api change
- gt-main filter examples updated to reflect api change
- upgrade instructions
- Module Matrix page