Domain-specific query languages
thesisposted on 2022-03-28, 14:01 authored by Yenchi Jaskolski
Data is a valuable commodity, and while there are many methods for effectively processing data, at the core of many of these is a query language - either general purpose, such as SQL and SPARQL, or domain-specific. Examples of the latter are query languages for linguistic annotations such as LPath+ and EmuQL. Domain-specific query languages allow greater expressiveness as they are more suited to a chosen data model. But what is the best way of creating such a query language, so as to ensure that the query system created is most suited to the task? Why do the query languages in the same domain vary so widely? Are some more expressive than others, or are they all just different surface forms of the same abstract query language? This study analyses and compares two query languages specific to the domain of linguistic annotations as examples of domain-specific query languages. It examines the structure ofthe query languages, as well as their levels of expressiveness in comparison to each other, relative to the questions that are being asked. Versions of each language are implemented to work with a unified data model, and so the questions asked of each will be the same. The end result is that whilst both can answer most questions and can be reduced to a singular query model, they may be limited by the data and interpreter used.