The MapGuide REST Extension

ESRI has a REST API, GeoServer is going to have one, now MapGuide might get its own RESTful service.  The City of Nanaimo smartly realized that using a RESTful service was a much better way to get data to the public than a traditional WxS or ArcIMS service (take note of that NSDI 2.0 folks).  Jason Birch has all the details including the URLs to explore the service.  I like how Google has already crawled their service and it is discoverable via Google Search.  Hopefully Jason gets some great feedback and this Nanaimo project can make it into the MapGuide trunk.  Their work is impressive and the results speak for themselves.

Getting RESTful in Namino, BC

Getting RESTful in Nanaimo, BC

About James Fee
Chief Evangelist for WeoGeo.com

7 Responses to The MapGuide REST Extension

  1. Jason Birch says:

    Thanks for the kind words James. I really hope that this work contributes even a little to an improvement in the transparency of government information. I’d like to get this “right” so if anyone has suggestions, please leave a comment here or on my blog, or send me some email at work (jason . birch @ nanaimo . ca).

    I don’t think I gave Haris at SL-King enough credit in that post. The work he has done in the past for FDO is amazing, including FDO Providers for Oracle, SQL Server 2005, KML, and Informix, and the fdo2fdo translation GUI, especially considering that prior to Autodesk releasing MapGuide he didn’t have any experience with open source development. He is a real joy to work with from both project management and technical competence perspectives, and I’d certainly recommend his company to anyone for paid consulting work.

  2. Brian Flood says:

    that’s great stuff jason and haris, looking forward to see where you go with this in the future.

    cheers
    brian

  3. Brett says:

    Definitely impressive.
    One thing I might suggest is to take a callback argument to the json page, so that http://maps.nanaimo.ca/data/property/123170.json&callback=property will give me back a function property() that returns the json.
    This way I can do script tag injection (JSONP) to pull the json representation of the property into a page.
    (Another way of handling the url would be to take a format argument, so something like http://maps.nanaimo.ca/data/property/123170.html&f=json&callback=property will give you the json wrapped in property().

  4. Jason Birch says:

    Thanks Brian… hopefully this is just the beginning :)

    Brett, there’s a new version online now that supports JSONP, and fixes a JSON escaping bug that the great folks at Safe Software found for us.

    One JSONP representation:

    http://maps.nanaimo.ca/data/property/123170.json?_callback=property

    JSONP query results:

    http://maps.nanaimo.ca/data/property/.json?filter_1_and_equal_street=ROSSTOWN+ROAD&_callback=rosstown

    I’m surprised that Haris was able to get to this given that he’s neck-deep in refactoring. Gotta love responsive open source developers…

  5. Pingback: Open and Accessible Data | It’s All About Data

  6. Pingback: James Fee GIS Blog » Blog Archive » SOAP is for cleaning…

  7. Great work guys. One request, as you expand the functionality of the REST API please don’t do away with the stateless, all in one URL feature. It seems that as systems become more advanced, they generally have a tendency to become recorded state based systems.