# Chatbot-Based Natural Language Interfaces for Data Visualisation: A Scoping Review
## 2 Background
### User Interface
#### Input  
The types of inputs (analytical questions) that a V-NLI system deals with are low- and high-level queries. In **Low-level** queries, the users explicitly describe their intent, for example, _\"Show me action films that won an award in the past 10 years\"_. Therefore, these queries can be interpreted easily. In contrast, **High-level** open-ended queries are naturally broader and their interpretation can be more complex [15; 50]. In many cases, these high-level analytical questions should be decomposed as a series of low-level queries and be answered as such [64]. For example, to answer _\"What are the trends in award-winning films?\"_ the system needs to infer the low-level queries: first, visualise award-winning films over a certain period of time, and then show their relevant characteristics (genre, special effects, franchises and others). Whenever the V-NLI system is not able to give an answer to this type of complex question, it might need to ask additional questions to the users. Note that both types of queries allow the users to interact with the data by means of the seven-interaction methods (select, explore, reconfigure, encode, abstract/elaborate, filter and connect) as defined in the description of the Interaction Space in Section 2.1, at any of the steps (View Transformation, Visual Mapping and Data Transformation) of the data visualisation pipeline as depicted in Figure 1.  
Moreover, queries can be One-turn or Follow-up. In **One-turn** queries, the users ask the system in a single shot. Thus, even when the conversation may flow along several one-turn queries, it may not be necessary for the V-NLI system to maintain the context of the conversation [65]. On the other hand, the users usually perform **Follow-up** queries, which are a series of interconnected questions [66]. Therefore, the system should be able to remember the context of the conversation while answering the questions [15; 39]. For example, if the first query is _\"Colour nodes by age\"_ and the second query is _\"Now by gender\"_, NLI understands that the user continues talking about nodes and wants to use the same function, colour, but now colouring them by gender. Nevertheless, the underlying system (AI**NT**) may fail to understand the queries of the users', thus not meeting their expectations [67]. Moreover, inexperienced users may have difficulties expressing their queries about visualisations. Then, the design of the conversational system faces the challenge of understandability, i.e., the ability of the system to be aware of the users' intents, really knowing and grasping the nuances of users' intentions, and also the challenge of discoverability [19], i.e., the ability of the users to know what they can ask to the system. Indeed, both properties are closely related since designing chatbots for discoverability may improve understandability. The challenges of both understandability and discoverability require an interactive conversational system to guide the users on how to effectively communicate their goals (also referred to as intentions). Well-known **Conversational Guidance** strategies are based on **help**--the chatbot gives the users hints on what to ask; **intent auto-complete** functions--the system makes suggestions of possible intents while the users are writing the intent [62; 68; 69; 70]; and **intent recommendations**[40]--after giving a response, the system suggests, based on data or on the previous turns of the analytical conversation, possible next intents to the users. Additionally, the understandability problem of NLIs is mainly derived from the biggest challenge that NL poses, which is ambiguity. One solution is to ask the users what they meant or to use disambiguity widgets [62; 68]. For instance, when the user query is _\"Show me medals for hockey\"_, the NLI might not correctly interpret which type of hockey the user is referring to. Then, a widget may appear for the term _'Hockey'_ showing two options _'indoor hockey'_ and _'ice-hockey'_ as both of these sports are basically called hockey.