The City of Medicine Hat Data Catalogue is built on the Open Government Data Initiative (OGDI) open source project and the Microsoft Windows Azure Platform, a cloud-computing platform. To learn more, please visit the OGDI Codeplex page and Windows Azure Platform home page.
OGDI exposes data through REST Web services. The basic format of an OGDI service call is http://datafeed.medicinehat.ca/v1/container/dataset?query, where:
Note that OGDI currently only supports the $filter and $top query options in the WCF Data Services query syntax. The data browser pages for each dataset a simple query builder.
Also note that if a property has a null value for a particular entity in the data set, it will be omitted entirely from the result set returned by OGDI. Your application design should take this into account and handle potentially missing properties.
By default, OGDI returns data in the Open Data Protocol (OData) format. This format extends the broadly adopted Atom Publishing Protocol and can be easily consumed by a variety of platforms, including Microsoft .NET, Java, Ruby, PHP, and Python. Refer to the code samples on any Data Browser page for examples.
Many of the data sets in OGDI also include geospatial data, which is returned in the Keyhole Markup Language (KML) format. This format is compatible with popular desktop and Web-based mapping technologies including Microsoft Bing Maps, Google Maps, Yahoo! Maps, and Google Earth.
To return geospatial data in KML format, append the format=kml parameter to your query. For example:
Note that if the data set that you are using does not include any geospatial data, a KML query to OGDI will return an empty result set.
Developers using Microsoft Visual Studio 2008, Service Pack 1 (or later) can use WCF Data Services to access data from OGDI through easy-to-use .NET classes. Within Visual Studio, this is accomplished by using the Add Service Reference feature (see .NET samples on the Data Browser page). To make accessing OGDI data easier, Java developers can use Restlet Extension for WCF Data Services. PHP developers can take advantage of the Toolkit for Toolkit for PHP with WCF Data Services.
OGDI and the underlying Windows Azure Table Storage service support paging through large sets of query results. The documentation for Query Timeout and Pagination in the Windows Azure Table Storage service provides a complete description of how OGDI and the underlying Azure platform support paging. You can also refer to the "C#/ASP.NET Paging" sample on the Data Browser page, which demonstrates how to perform paged queries using the WCF Data Services client library.