A Platform for Data Interoperability: Koop
There is no shortage of geographic data available on the web with more source coming online all the time. The downside of this explosion is that new sources often have their own API and proprietary formats that are not compatible with each other. A single data source on it's own is never as useful as when it is viewed in context.
What is needed is a platform for interoperability. Koop steps into this challenge by treating GeoJSON as a kind of compile target. As long as data can be fetched and translated, any dataset from any source can be viewed alongside any other.
The ArcGIS Open Data team today uses Koop to translate from ArcGIS Rest services into downloadable formats (csv, shapefile, geojson, kml). Many others use Koop to translate Socrata Services into ArcGIS-like Feature Services or to expose data stored in CKAN as SODA compatible services.
Koop today is a Node.js app built with a modular and plugin friendly approach. It is being substantially overhauled to better service it's mission.
That mission is for any API and format to be translated into any other by implementing only two functions.
In this session, I will give a high level overview of the modular architecture of Koop, discussing caches, sources and interfaces, and walk through how to implement the two functions that will allow you to use Koop to translate any data source.