A Query represents a topic for which a set of voters or rankers submit their preference lists. For example, a Query may be a simple question like "who is the best football player for 2022?", or a more complex structure like a sequence of genes.

Implementation files
The Query class is defined in the src/Query.h header file; its member functions are implemented in src/Query.cpp.

Technical Details
The role of this object is central in the entire rank aggregation process, since it connects the input preference lists and the output aggregate list. In particular, a Query is connected to:

  • an Aggregator that triggers the execution of a rank aggregation algorithm on the collection of the InputLists, and
  • an Evaluator the evaluates the quality of the generated aggregate list with respect to a set of relevance judgments.

The following interactive block diagram depicts the functionality of the Query class inside the entire architecture of FLAGR.

FLAGR architecture