2006 (old posts, page 3)

GIS Features and JSON

I'm a big believer in GML, but not such a fan of XSLT. For many web applications, I want to bypass the transformation and directly get GIS features (whether by WFS or other service) as javascript objects. In PrimaGIS we are using JSON-RPC, and a data structure that is modeled after the GML simple features profile:

// feature collection
  // a feature
    'id': 'aa1',
    'properties': {
      'name':     'Foo',
      'category': 1,

I'm curious if there are other programmers interested in a JSON simple features profile. The representation of non-geometry properties is obvious, but what about geometries? Is it better to aim at existing Javascript drawing APIs like WZ, or look to Canvas?

Foundation, Physics, and Fun

Jo Walsh has a post that's making me consider whether the open source geospatial foundation more or less addresses my concerns from last summer. Back then, when I typed "organic" I could have just as easily used the word "grassroots". I wasn't looking for ideological purity as much as something that was really of and for the existing community.

i-cubed Imagery in Yahoo Maps

My image processing mentor Yusuf Siddiqui wrote in to point out that i-cubed is the source for the new satellite imagery in Yahoo Maps. What a coup for Russ Cowart and his company! I worked at i-cubed programming data processing workflows until 2002, and they've been a customer of mine since then. It's great to see the company name come out big time along Navteq and TeleAtlas.

Ruby and GEOS

A while back I created an initial SWIG interface for GEOS (Geometry Engine - Open Source), focusing on Python. I have subsequently stepped off the SWIG train (they lost me during the big changes made at 1.3.28), but Charlie Savage is forging ahead. The focus is now on Ruby, but if SWIG's unified typemaps work as advertised, bindings for other languages should follow trivially.

One complication is that the GEOS C++ API is a moving target. If the new language bindings are derived literally (as I did originally) from a changing C++ API, your Ruby or Python scripts could be broken by new GEOS releases. This is the reason why I went with the C API for PCL's geometry module. I think Charlie will be able to tweak the SWIG interface to maintain a stable Ruby API, but this was something I found myself unwilling to do.

MapServer 4.8.2

MapServer 4.8.2, directed by Howard Butler, has been released. We've had a bit of trouble with 4.8.x, particularly with new symbolization features, but this release should get the project back on track. Many bug fixes in this one, including contributions from MapServer's newest commiter, Tamas Szekeres.