Report Open Access
Bachler, Daniel; Dokler, Joh; Dudgeon, Tim; Willighagen, Egon; Karatzas, Pantelis; Lynch, Iseult; Hardy, Barry; Exner, Thomas
This document reports the work on the final API specification for semantic interoperability that was developed as part of the OpenRiskNet e-infrastructure. It briefly outlines the challenges encountered and the solution that has been implemented and is now in use in OpenRiskNet.
This deliverable is related to Task 2.2 (API specification and semantic interoperability) and in a continuation of the work performed within Deliverable 2.2 (Initial API version provided to providers of services), that are now in the process of being incorporated into OpenRiskNet as part of the service catalogue. Deliverable 2.2 gives in-depth information on the evaluation of the various technologies for describing APIs we considered, whereas this report focuses on the solution that was finally chosen and put in place, and the justification of this choice to support other databases / e-infrastructures in their deliberations on API solutions.
The main requirement of describing operations of an API, on both the semantic and technical (structural) levels, was met by creating a novel fusion of the well established OpenAPI standard and the tools of linked data using JSON-LD. This combination allowed us to use and reuse the already existing OpenAPI definitions (and already available OpenAPI tooling), and combine it, with relatively little effort for a service provider, with semantic annotations to facilitate interoperability. The OpenRiskNet Service Registry was developed to scan for such “OpenRiskNet annotated OpenAPI definitions” of active services running in an OpenShift cluster and indexes the data to provide semantic queries using the well established SPARQL linked data query language.
D2.4 Final API available for internal and external service providers.pdf