Review Comment:
Criteria:
(1) Quality, importance, and impact of the described tool or system (convincing evidence must be provided).
The paper presents a new software package called RAMOSE for enabling the development of REST APIs as a façade over underlying SPARQL APIs using configuration files. The research question in scope is what is a generic mechanism for enabling web developers and scholars to query RDF data available in triplestores exposed via SPARQL without having to write SPARQL (primarily via REST APIs), and secondly, how can Semantic Web data providers deploy REST APIs that expose RDF data efficiently and easily.
The design of RAMOSE is sound and addresses the challenges and pain points from both users of RDF data - provides a REST API interface that is familiar to most web developers, rather than SPARQL API, and Semantic Web data providers - provides an easy way to develop and deploy REST APIs. The approach is sound and allows for customisation (pre- and post-processing functions) and extensibility (via addons) by those wanting to deploy REST APIs. JSON and CSV are the main output formats, which are sufficient for the web developer community. The approach taken in this work implements a well-known design pattern (the "Façade" pattern), and is used in a number of web applications in developing REST APIs. The novel aspect of this work is the ability to define these in a configuration file without having to write code, and API level features from the RAMOSE application out of the box (like filtering, defining pre- and post-processing, auto-generated API documentation).
The authors present a case study using the OpenCitations scenarios and comparing quarterly access statistics via server logs showing the number of SPARQL queries versus the number of REST API queries issued. The authors argue through this case study that there are benefits to using RAMOSE implemented REST APIs vs SPARQL, which is validated for OpenCitations. They demonstrate the increase in usage of OpenCitations data generally, and greater use of the REST API queries rather than via SPARQL API.
Suggested revisions:
1.1. A number of prior art is listed in the Related work section, e.g. BASIL, grlc.io. While, the related work is listed, a suggestion would be to compare RAMOSE and the listed alternatives, perhaps presented as a table to compare and summarise the differences. This would provide the paper with an evaluation of RAMOSE and help readers understand RAMOSE in context with the other tools. I'd also suggest including a comparison to another framework called pyldapi, which does a similar job but requires mode development effort to achieve similar results to RAMOSE (result is greater control over the final API).
1.2. In terms of impact, while an interesting case study involving a large and interesting RDF dataset (OpenCitations) and evidence was provided on the usefulness of REST APIs developed with RAMOSE for OpenCitations, other than deployment at Workshops on Open Citations, it appears that RAMOSE is only deployed for OpenCitations. On the other hand, the authors demonstrate that RAMOSE has helped the uptake of the OpenCitations data via other software and data services - VOSviewer, Citation Gecko, DBLP, etc., which demonstrates outcomes as a result of the development of RAMOSE. The other factor is that RAMOSE is relatively new (since 2019) so it hasn't had time to gain uptake. I suggest that authors look at providing evidence of other groups using RAMOSE in order to demonstrate the impact it has had in terms of uptake.
(2) Clarity, illustration, and readability of the describing paper, which shall convey to the reader both the capabilities and the limitations of the tool.
The paper is well written and the figures, tables, and code listings used are formatted nicely and appropriate. The authors have described the RAMOSE tool well and have highlighted its design goals/principles, and features in a logical manner that flows.
Minor revisions suggested:
2.1. Figure 1 and Figure 2 - check the resolution of these images. Suggest higher resolution for these.
2.2. Section 3.2, first para: "An hash-format document…" --> "A hash-format document"
2.3. Section 3.2, first para: The authors introduce the hash-format file based on Markdown, but at this point of the paper, it isn't clear what the Markdown content acting as a value is for (this significance is apparent later in the paper - for automated documentation generation in Section 3.4.1). Suggest that the authors signpost the significance of the Markdown feature here in this section as the configuration document is actually a key part of RAMOSE.
Summary:
The authors have presented a novel software application, called RAMOSE, that enables the creation of REST APIs over SPARQL endpoints as a façade using a configuration over code approach. The design of RAMOSE is innovative in that it allows customisation, extensibility and automatic generation of documentation are features that will certainly aid deployers of REST APIs. The features included with RAMOSE for allowing users to query, filter and view documentation are useful additions. The importance of tools like RAMOSE comes at a time where a number of RDF datasets are being published but yet there are barriers to entry for web developers to these datasets. RAMOSE is certainly has broad appeal to the Semantic Web community for those who have RDF data and are faced with challenges of engaging web developers with learning and using SPARQL APIs. Recommend the paper for acceptance as it is in scope and is a valuable resource for the Semantic Web community, with some minor revisions as highlighted above.
|