Archive for September 2006
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.
-J
Related posts
Well,
There’s something to be said for blogging when something’s fresh in your mind. (Sorry Glenn, not even close to real-time on this one) And no, it’s not because I had too many Crown & Cokes. After a few days away, my family needed more attention than my mistress (though her big CRT was glowing seductively) and time plays some interesting tricks with memory. I’ll do my best to give you the highlights though. If you haven’t read about Day One or checked out the conference home page yet, do that first. One thing that I do remember is giving Matt a workspace that will likely give him nightmares, and make him wander around muttering about crazy users.
The morning featured Don and Dale giving a “Road Ahead” presentation in their casual funny style, complete with some really bad puns. One of the most important items that I got out of this were their plans to deal with the next hardware tidal wave with support for 64 bit operating systems and multi-process capabilities to take advantage of the soon to be ubiquitous multi-core CPUs. I wasn’t entirely clear on how the multi-process support was going to be implemented, but it sounded similar to the way that Apache sets up multiple children to listen and respond to requests. As well, there were plans for additional formats as well as improved support for existing formats. One of the most exciting items here was GeoRSS support. I know that this might not sound like a lot, but imagine using GeoRSS as a web-based data synchronisation tool (insert/update/delete). Yes, I suppose WFS and Filter could be used in the same way, but GeoRSS is new and trendy.
Rich Geometry is another important area, as it allows for the preservation of nasty items like a linestring with an embedded arc. This is a godsend for anyone that has to deal with CAD data on a regular basis. I spoke about Python improvements in the previous article, but I just noticed that there’s a recent story related to this on the Safe blog: Vancouver Python Workshop and FME. Raster support has seen an order-of-magnitude improvement in performance as well; a projection task was shown that was reduced from over an hour to less than two minutes in processing time. This is great news. Now I can put in some unreasonable requests for improvements in the raster processing capabilities. First I’ll have to apologize though. I interrupted the presentation and made a rather nasty comment about one of the 3rd party integration products that, while there are strong reasons for implementing it, doesn’t hold a candle to FME Workbench for usability. I wasn’t nearly as tactful as I should have been, and I hope that I didn’t scare away any potential users. Anyway, I’m sure that I missed some of the new features; hopefully the slides from the conference will be out by the middle of next week some time.
After their presentation, Dale and Don had Dmitri come up on stage and do some demos. I’m a bit fuzzy on these, but I am pretty sure that they were on the new third-party transformers. These are sold by FME, but are developed by other organisations. MRFCleaner (developed by MRF Geosystems) allows for some very complex automated quality assurance and cleaning. Many of the functions (overshoots, undershoots, intersections, etc) supported by MRFCleaner could be managed in FME previously, but they take countless transformers and are a real nightmare to maintain. I am seriously considering adding MRFCleaner to my licensing. ArcFitter (I didn’t catch the developer’s name) CurveFitter (developed by Tom Inloes of TCI Corporation) allows you to start recovering from the legacy of GIS data models that only supported points, lines, and polygons by retrofitting your stroked curves with fancy new arcs. As well as being a better representation of certain features, this can give you a reduction in storage space, especially in heavily splined curves.
After this came a set of presentation sessions. I was planning to go to the Best Practices for FME talk, but instead ended up sitting with Tom (one of the developers) chatting about KML 2.1 support. Warning: it’s not safe to sit down with me and talk for any length of time. I might just get around to discussing my thoughts on how open source geospatial will cause some proprietary vendors to reconsider their core competencies, and others to reorganise as their bread-and-butter components become commoditised. I believe that there will continue to be a place for well designed, efficient, and innovative products like FME, but that a lot of the fat in the industry will be trimmed.
Lunch was again good. I don’t know if I’ve said this, but the networking at this conference was incredible. I was lucky enough to speak with folks who were doing things as varied as: using FME to aid in moving away from a VAX/VMS-based system, building financial asset reports for taxation purposes directly from drawings, and using FME’s geometric processing capabilities to build complex cartographic output. There are not enough hours in the day to do all of the cool things that FME makes possible, so it’s nice to get some vicarious exposure to others who are working on them.
After lunch came the lightning talks. These little five-minute show and tell pieces were great fun, accompanied by computer-generated lighting sound effects, and a virtual audience that would clap you down if the thunder wasn’t loud enough. This was a great format to learn a lot in a little while, and I hope that this tradition continues in future conferences. I think that if they can get enough volunteers, they should allocate even more time to these tidbits.
The lightning talks were followed by another set of user sessions. This time, I went to the FME and Cartography session. This was really interesting to me on a personal note, as I am currently banging my head against trying to join some Autocad blocks up to some Oracle Points, and bringing them into MapInfo maintaining colour, size, rotation, and other goodies. Not fun at all, but these presenters seemed to have done some pure magic in this area. Hans (an FME MVP) gave a great presentation on how he used FME to improve the cartographic value of a street map, while SRG (another FME MVP) provided a very tasty recipe for SVG a la banana. I hadn’t looked into SVG much before this, but it sure looks powerful and flexible. During this session, a fully symbolised vector-based topographic map was shown running in Internet Explorer. Cool.
I won’t say too much about the ice cream (yum), the closing comments, or my request for flashing lights and running numbers in Workbench. Suffice to say, I had a great time at the FME UC, learned tonnes of stuff and got to speak with a lot of really smart people. I also felt like a bit of a celebrity, which was really odd. My wife doesn’t want me to go to another FME conference for a while. She says my ego’s already large enough…
-J
Related posts
Conference fee: $500
Float Plane: $120
Hotel: $240
Value gained at FME UC: Priceless
OK, OK, sorry for the cheezy intro. It’s true though. Let me tell you why.
Starting with the important stuff: Safe Software really know how to do swag and marketing in general. This is hands-down the best bag that I’ve ever got at a conference, though the Research in Motion WES conference came close. Inside the bag was the regular paperwork, but also a great water bottle, an organiser and a T-Shirt (they actually asked my size). Nice going conference team!
OK, that’s not really where the value lies, but it was definitely a nice way to start off the day.
I’ve been active in the FME community for a bit over three years now, and know a lot of folks (staff and users) solely through email. This has been a great opportunity to meet these people and others that I have never seen before, and compare notes on how FME is enriching our lives. The conference is intimate enough (around 100 people I think) that it’s possible to at least say hi to everyone, and there are many staff and expert users here to help out with your problems and discuss any ideas you might have in helping FME evolve to be an even better product. Everyone that is here is extremely accessible, and all seemed to be having fun, from the co-founders through the developers and other staff. It can not be emphasised enough how much value can be obtained solely from the networking available at this kind of conference.
The official kick-off featured a couple sessions about the history of Safe Software and FME, and I personally found these very interesting. Don Murray and Dale Lutz, Safe’s co-founders, showed how a great idea and hard work have grown Safe Software from a two-person operation into the strong organisation it is today, with over 70 employees. This was inspirational if nothing else. The second presentation was by Mark Sondheim and Peter Friesen from the BC Goverment. They recounted first hand the wild west of spatial interchange formats in the 90’s, and how the history of Safe Software was closely linked to the initial implimentation of the SAIF (Spatial Archive Interchange Format) standard. I’m ashamed to admit that I was nowhere near as visionary as Mark and Peter, and wondered at the time why we needed another format that I couldn’t even read from Arc/Info. If you haven’t heard of SAIF, take a minute to look it up. You’ll find that it shares a lot of concepts with GML. If you combine this precursor to GML with pioneering roles in PostGIS and the Java Topology Suite (I had similar unenlightened thoughts about JTS when I saw the RFP…) the effect that these folks have had on our industry and open source geospatial in general is amazing. Now if only they could do something about providing publicly funded base mapping data in BC for free
The afternoon consisted of two workshop sections, with two streams each. In the first section I co-presented a session on the use of FME in my workplace in the same time slot with two other municipal-related sessions. For the next section, I chose to go to the Scripting stream, where there were sessions talking about using TCL within FME, using FME functions in Python, and some of the new Python-related enhancements in the FME betas. All very cool stuff. The slides will be available after the conference at the FME User Conference 2006 site, as is the agenda if you want to see if I’ve missed anything.
After the educational sessions, it was time for some fun and games. Three other FME MVPs (Hans, Peter, and SRG) competed along with me for the coveted FME Idol award. As we were working, Ulf Mansson took the opportunity to showcase some of his latest FME Art, which was very cool, and a bit distracting. Even with the distractions, I am happy to say that after some stiff competition I walked away with some serious hardware… er… glassware
To wrap this up, I should talk about some other important features of any conference: food, entertainment, and venue. Here, the conference team came through for us again. The food at the conference center was reasonable, and the dinner and entertainment at Storeum were excellent. The conference is being held at the Morris J. Wosk Centre for Dialogue, a rather unique space that is very condusive to communication. This was also the location of the GeoWeb conference earlier this year. I’m not sure how well it would do with a larger group, but it worked well for us today.
Anyway, let me know if you have any questions, and I’ll do my best to answer them. I am really looking forward to tomorrow.
-J
P.S. If anyone from Autodesk is reading this post: Please, Please, Please work with Safe Software to give use a better solution for reading DWG with Object Data!