In light of the rapid evolution of social media that we experience over the past decade, and
their establishment as one of the main means of communication and dialogical exchange, the
problem of extracting meaningful information from data residing in human dialogues is now
more crucial than ever. Until recently, the challenges associated with this problem were being
addressed as an application domain for the computational models of fields like the Semantic
Web, Information Retrieval, Data Mining etc. However, there are some information
requirements when searching in dialogues which are quite specific and common for all types
of dialogues, regardless of their context or goal, e.g. concerning the structure of the different
opinions and the correlations among them, which could stand as an autonomous area to
study. Isolating those requirements and bringing them together in the specification of a formal
language, designed exclusively for this purpose, is a research direction which has been given
less attention.
Incited by this deficiency, in this thesis we introduce ArgQL (Argumentation Query Language),
a high-level declarative language for querying dialogical data. ArgQL provides a simple and
dialogue-related terminology to write queries in the domain, which in existing query
languages would be quite difficult to express. The theory that founds the data model adopts
some of the most prevailing semantics in the area of Computational Argumentation. As a
result, the target data consist of graphs of interconnected, structured arguments and ArgQL
allows for the navigation across such graphs. We present the formal specification of the
language, including the definition of its main constructs, the concrete syntax, as well as the
semantics that determine the evaluation of those constructs against the data model.
Subsequently, we propose a methodology to translate ArgQL into other languages and in
particular we show the case of RDF and its associated query language, SPARQL. To this end,
we define an RDF scheme based on the AIF conceptualization and we formalize the mappings
between this and our data model. We then build the process of query translation, as a set of
rules that define the correspondence between the different ArgQL constructs and the
respective SPARQL graph patterns. The soundness and completeness of the process is verified
by proving the equivalence between the matching data for each of these two languages, with
respect to their formal semantics. Although correct, the conformation to the precise definition
of the translation rules results to non-optimal queries. Therefore, on top of this methodology,
we propose some optimization, that succeeds shorter and by extension more efficient
queries. We also give prominence to the practical side of ArgQL and we implement the
language, allowing for its execution on real data-sets. Thus, one of the outcomes of this work
was an online query endpoint, where someone can test his own queries. Finally, we conduct
an experimental study to evaluate the query performance under different execution
parameters.