MIM0: Accessing Data
Introduction
This MIM helps cities and communities to overcome the challenges of accessing data that currently reside in silos and are often fragmented across different systems and locked away by making recommendations of how data should be made accessible so it can be easier accessed and reused in an interoperable way.
Use Cases
When procuring software there might be no clauses in the contract that allow the transfer of data ownership to the local authority
Even when ownership is clearly transferred there may be technical barriers to get access to the data:
Non-existent or non-functional API's
API's not well described
Authentication issues.
API's are not useful for big data dumps, e.g. large collections, so you would need database access or a file being transferred
In case there is database access, the database schema might not be well defined or understandable
Pagination may be used to limit data transfers over API's but might not always be well understood or implemented
Objectives
Being able to access data, understanding how this access is organised.
Capabilities
TBD
Requirements
TBD
Mechanisms
TBD
Specifications
TBD
Interoperability Guidance
Using REST for Interoperability
REST (Representational State Transfer) significantly enhances interoperability by adhering to a set of standard principles and constraints that allow different systems to communicate over the web. By using HTTP methods like GET, POST, PUT, and DELETE, RESTful services enable consistent and predictable interactions between clients and servers. REST supports stateless communication, which simplifies the integration process as each request contains all the information necessary for the server to process it. This approach allows diverse systems, regardless of their underlying technologies, to connect and interact seamlessly, fostering robust integration and interoperability.
Using Swagger for Interoperability
Swagger allows for seamless interoperability by providing a standardized way to define RESTful APIs. Through its OpenAPI Specification, Swagger enables different systems to communicate effectively by ensuring that API documentation is clear and consistent. This promotes easy integration, as developers can quickly understand and implement APIs across various platforms and languages. Swagger's ability to generate client libraries and server stubs further enhances interoperability by reducing the manual work involved in connecting disparate systems.
Conformance and compliance testing
TBD
Last updated