Automated API Discovery, Composition, and Orchestration with Linked Metadata

  • Author / Creator
    Serrano Suarez, Diego F.
  • 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.

  • Subjects / Keywords
  • Graduation date
    Fall 2018
  • Type of Item
  • Degree
    Doctor of Philosophy
  • DOI
  • License
    Permission is hereby granted to the University of Alberta Libraries to reproduce single copies of this thesis and to lend or sell such copies for private, scholarly or scientific research purposes only. Where the thesis is converted to, or otherwise made available in digital form, the University of Alberta will advise potential users of the thesis of these terms. The author reserves all other publication and other rights in association with the copyright in the thesis and, except as herein before provided, neither the thesis nor any substantial portion thereof may be printed or otherwise reproduced in any material form whatsoever without the author's prior written permission.