Ontology-Based GraphQL Server Generation for Data Access and Data Integration

Tracking #: 3550-4764

Authors: 
Huanyu Li
Olaf Hartig
Rickard Armiento
Patrick Lambrix

Responsible editor: 
Elena Demidova

Submission type: 
Full Paper
Abstract: 
In a GraphQL Web API, a so-called GraphQL schema defines the types of data objects that can be queried, and so-called resolver functions are responsible for fetching the relevant data from underlying data sources. Thus, we can expect to use GraphQL not only for data access but also for data integration, if the GraphQL schema reflects the semantics of data from multiple data sources and the resolver functions can obtain data from these data sources and structure the data according to the schema. However, there does not exist a semantics-aware approach to employ GraphQL for data integration. Furthermore, there are no formal methods for defining a GraphQL API based on an ontology. In this paper, we introduce a framework for using GraphQL in which a global domain ontology informs the generation of a GraphQL server that answers requests by querying heterogeneous data sources. The core of this framework consists of an algorithm to generate a GraphQL schema based on an ontology and a generic resolver function based on semantic mappings. We provide a prototype, OBG-gen, of this framework, and we evaluate our approach over a real-world data integration scenario in the materials design domain and two synthetic benchmark scenarios (Linköping GraphQL Benchmark and GTFS-Madrid-Bench). The experimental results of our evaluation indicate that: (i) our approach is feasible to generate GraphQL servers for data access and integration over heterogeneous data sources, thus avoiding a manual construction of GraphQL servers, and (ii) our data access and integration approach is general and applicable to different domains where data is shared or queried via different ways.
Full PDF Version: 
Tags: 
Reviewed

Decision/Status: 
Accept

Solicited Reviews:
Click to Expand/Collapse
Review #1
By David Chaves-Fraga submitted on 24/Sep/2023
Suggestion:
Accept
Review Comment:

The authors have incorporated and discussed all the comments I had in the previous version. I think the paper is ready for its acceptance.

Review #2
Anonymous submitted on 25/Sep/2023
Suggestion:
Accept
Review Comment:

The authors revised the manuscript thoroughly based on the reviews, my comments are properly addressed. The paper is ready for publication from my point of view.

Review #3
Anonymous submitted on 19/Nov/2023
Suggestion:
Accept
Review Comment:

I thank the authors for their response letter and for adjusting the paper after my comments. I have no further comments, I would suggest the paper to get accepted.