Time for something slightly different…
Feature Data Objects (FDO) is an open source C++ based spatial data abstraction library, allowing potential access to a large amount of spatial functionality including advanced items like rasters, complex geometry and long transactions. This plugs into a lot of different formats using a common API, and managed (.Net) and unmanaged interfaces are provided.
FDO was originally authored by Autodesk for inclusion in the Map 3D product, and then granted to the Open Source Geospatial Foundation (OSGeo) as a sub-project of MapGuide Open Source. For more history of FDO, please check out the osgeo.org FDO History page. While three providers (Oracle, MSSQL, and Raster) contained proprietary Autodesk technology and were not open sourced, many providers were. The initial providers included in the fdo.osgeo.org repositories included providers for SDF, ESRI SHP, MySQL, ESRI ArcSDE, ODBC, OGC WFS, and OGC WMS.
One of the main reasons that I’m writing about this now is that this fledgling open source project really seems to be picking up some steam. Since the initial release, Autodesk (Traian) has added a basic FDO provider for OGR, and Frank Warmerdam seems to be getting close to completion of the GDAL-based open source raster provider. Refractions Research (Mateusz Loskot) has been working under contract to my employer, the City of Nanaimo, to create a high-function PostGIS provider. And, just today, Haris Kurtagic announced on the MapGuide Users mailing list that the SL-KING Oracle provider would be moving into the OSGeo FDO project as an open source provider. This is great news for users that want to use MapGuide with Oracle XE, since this platform is not supported by the Autodesk Oracle provider. Now all we need is for someone to write an FDO Provider for the open source MS SQL Spatial package, and all of the common databases will be covered.
On a somewhat different front, FDO is already being supported in a limited extent by Safe Software it its FME product, as this is what is allowing them to write to the new SDF format. A little bird told me that this support would be extended by providing an FDO provider for FME (think of it as an open API for reading over 100 formats) and, in the longer term, a generic FDO reader/writer for FME, allowing for you to write your data out in an optimal format for the FDO providers.
My fondest wish is that other GIS application vendors take advantage of this data abstraction library and integrate it into their products. Imagine having full access to all of these formats for free. Access to SDF alone is a great benefit as it allows you to have a highly capable local geodata store, which supports rich geometry, multiple tables, and spatial indexing all in a single file. Did I mention that it’s free? :)
There is a slight downside. While most of the providers, including the OGR and King.Oracle providers, are available for the current release of MapGuide, the PostGIS and GDAL providers will only be avaliable once MapGuide is built to work with FDO version 3.2. If you’re ambitious, you can always download and compile the latest versions of FDO and MapGuide yourself. (it’s not that bad…), otherwise you’ll have to wait a bit.