Analysis of possible frameworks for a graphical query editor in a web application
Today's sensors and analysis systems produce huge amounts of data and one of the main challenges is how to enable users to find relevant data in time. Software systems supporting queries must provide suitable filter mechanisms. Through this filtering, the full dataset can be reduced to a manageable amount of relevant data. Respective filter criteria can be chained together in the form of Boolean expressions using disjunctions and conjunctions, and the resulting hierarchical structures can be further simplified by parentheses. The practical use case that we present in this publication consists of a web application to access potentially large data sets using a defined set of metadata based catalogue entries. This application currently supports the specification of filter criteria, which can be concatenated by the user through a single global conjunction in a at hierarchy. The underlying query language supports more complex queries using any combination of conjunctions, disjunctions and brackets. There is a user requirement to extend the expressiveness of the client search queries so that the full scope of the query language can be leveraged meaningfully. One problem is how such complex search queries can be graphically structured and visualized in a clear and comprehensive way. There exist different approaches for the graphical visualization of program code and query languages. Some of these approaches also support the graphical editing of these representations by the user. Examples for such frameworks or tools are Blockly, Scratch or Node-RED. In this publication, an analysis of the applicability of such frameworks in the existing web application is presented. For this purpose, operational constraints and exclusion criteria that must be fulfilled for the use in our application are identified. This results in a selection of a framework for a future implementation.