Automated API Discovery, Composition, and Orchestration with Linked Metadata
Date
Author
Institution
Degree Level
Degree
Department
Supervisor / Co-Supervisor and Their Department(s)
Citation for Previous Publication
Link to Related Item
Abstract
Over the last decade, an exponentially increasing number of REST services have been providing a simple and straightforward syntax for accessing rich data resources. In today's highly distributed, multi-platform world, there is a huge potential for creating added value through service coordination. However, the data exchanged by Web APIs do not include a semantic representation to enable machines to automatically interpret and appropriately route it. Thus, developing applications that rely on Web APIs still requires a considerable effort by developers, who still have to find relevant APIs, write code for invoking individual APIs, and transform the data in conformance to their application structure. This process is difficult and error-prone, especially as the number and overlap of the underlying services increases, and the mappings become opaque, difficult to maintain and practically impossible to reuse.
Early on, the Semantic Web envisioned service providers annotating service descriptions with semantic specifications, to produce so-called Semantic Web Services (SWS). Semantic meta-data could enable automatic discovery and composition, which could, in turn, reduce the time and development effort needed to create applications. However, after not an insignificant number of years, the impact of SWS has been minimal, mainly due to the steep usability challenges that arise with the usage of semantic languages to create, annotate, and use Web APIs. More specifically, research has focused on highly expressive conceptual models that introduce more complexity than they conceal, and bring additional heterogeneity to an already overwhelming stack of specifications.
The maturity of service technologies, along with the recent advances around Linked-Data formalisms have the potential to provide data integration, regulated by Web APIs that can control access to resources. Thus, the key motivation of this work is to align Web APIs as the preferred standard for exchanging data on the Web and Linked Data vocabularies as the mechanism enabling the automated semantic integration of services.
This work presents Linked REST APIs (LRA), a simplified description model, based on SPARQL graph patterns, for capturing the semantics and relationships of Web APIs. Based on this model, we propose a methodology for a automated process that produces semantically valid composition chains, based on iterative subgraph isomorphism. The performance of the approach is evaluated using a set of publicly available Web APIs in the domain of scholarly work and data, and the usability and effectiveness is evaluated through empirical studies. Our results demonstrate the high accuracy and efficiency of our method, and that LRA developers tend to produce code with better structural complexity in less time, than developers manually composing APIs.
