Request Topics

This page explains how to talk with Crystal.

Conversation Basics

Asking a question to Crystal means asking about a Topic.

To ask a question, you just need to ask for the components of the Topic you have in mind, one after the other. That's all you need to start talking with Crystal!

In particular, your question should:

  • Include the Objective (or Visualization) and the Entity (or Entities) for that Topic

  • Optionally include other details such as Time Range and Dynamic Filters.

Make sure your questions are straightforward, clear, and concise.

A Crystal question

Discover the step-by-step process to write a question.

Introduce Your Question (Optional)

Start with any natural question formula, such as a request, an order, or even a greeting!

Specify the Topic (Mandatory)

Next, specify the Topic you want to ask about.

This means communicating the Objective and the Main Entity (or Main Entities) that constitute that Topic.

The two options to communicate an Objective are:

  • Naming a corresponding Visualization

  • Specifying the purpose of the Topic with a phrase

To specify an Entity, you can communicate:

  • A single Main Entity

  • Multiple Main Entities

Dive deeper!
  • In the first example, the Topic is made of the following elements:

    • Comparison = Objective

    • Sales and Leads = Main Entities

  • In the second example, the Topic is made of the following elements:

    • Breakdown = Visualization (of Objective Composition)

    • Users by Country = Main Entity

  • In the third example, the Topic is made of the following elements:

    • Who were the top = expression referring to the Ranking Objective

    • Sellers = Main Entity

Filter by Time Range (Optional)

After specifying the Topic you're interested in, you can add a time range to capture a specific moment in time.

Filter by Dynamic Filters (Optional)

Finally, if you want to further narrow down the scope of your analysis, you can add a Dynamic Filter, i.e. an Entity used as a Filter instead of as the Main Entity.

All you'll need to do is introduce the Filter with the correct preposition (e.g."for", "in", etc) and then add the Filter, by either:

  • Specifying the name of the Filter and the relative Filter Value, i.e. the specific instance for that Entity

  • Only specifying the Filter Value directly, by implying the Filter name.

Diver deeper!
  • The first example includes both a Filter and a Filter Value:

    • "… for Country" = Filter

    • "Spain" = Filter Value

  • The second example only includes a Filter Value:

    • "… for Spain" = Filter Value

Finally, in the case of numeric Dynamic Filters, you can also specify a condition on the Filter Values such as "greater than", "less than", and "between".

How does it work?

When you request to apply a Filter in a conversation, Crystal can:

  • Recognize the filter by exact match

    • For example, when the question is: "Show me the total sales for France," and the filter is "France".

Exact Match

This is when the text included in the question is the same as in the data source (unless a change is already included in the preprocessing, such as punctuation marks or special characters).

This is the easiest case for Crystal to recognize.

If the filter is "Italy" and you write "Italy" in the question, the system will recognize it immediately.

  • Recognize the filter by partial match

    • For example, when you ask: "Show me the total sales for "Italy", but the set Filter is "Northern Italy".

Partial Match

This is when the text in the question is not exactly the same as in the data source, and some parts are missing too.

This is considered a ‘partial match’: the system needs help from the machine-learning model NER (Named-Entity Recognition).

NER is a search engine that can analyze all the words in a sentence and rank the most relevant terms, with the highest-scoring words as possible filter values.

Example:

If you accidentally type "nrthern Italy" instead of "Northern Italy", the search engine will find possible filter values and assign a ranking:

  • Northern Italy;

  • Italy;

  • Southern Italy;

  • Italy.

Since "Northern Italy" has a higher score, it will be the closest to the typed value, and therefore recognized as the right filter value to select. No extra questions needed.

On the other hand, if you are looking for the total sales for the Australian market and type: "Total Sales for Austr" with Australia and Austria in your data source, the NER will find two values with equivalent scores: Australia and Austria.

Since Crystal cannot be sure which of the two you need, the Disambiguation capability will come into play, asking you to choose between the two values.

In Brief...

Here is a quick guide to help you ask your questions on Crystal.

N.
Step
Mandatory / Optional
Example

1

Question Formula

Optional

Can I see

2

Objective / Visualization

Mandatory / Highly Recommended (*)

the comparison between

3

Main Entity / Entities

Mandatory

Sales and Leads

4

Time Range Filter

Optional

in the past six months

5

Dynamic Filter #1

Optional

for Spain

6

Dynamic Filter #2

Optional

and for Italy?

Note

As shown in the example above, you can ask for more than one Dynamic Filter at the same time, by concatenating them in the same question.

Simply use the formula "and for" and specify the other Filter(s).

Express Yourself Naturally

With Crystal, you can express yourself as if you were speaking to a person.

That's because Crystal can:

  • Recognize words and sentences, even if spelled wrong or incomplete.

Learn More

For example, whether you spell:

  • Month & Day as numbers (“Total of Sales for 2022 10”, “Total of Sales for 2022 10 7”).

  • A month spelled out as a word ("Total of Sales for 2022 October” or “Total of Sales for October 2022”).

  • A month abbreviated (“Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec”).

  • Numbers with comma or dot (1,000 or 1.000)

Crystal will understand.

  • Recognize words that are not in the selected language but are officially used as part of the company jargon (e.g. anglicisms)

Learn More

For example, this can happen when using time aggregations, as words like "quarter" are frequently used in other languages too.

You can use English words in your queries even if you selected another language to speak in.

Crystal will understand.

  • Recognize synonyms and nuances

Learn More

When talking to Crystal, you can use the terminology that is most appropriate to the analysis context.

With aliasing, you can teach Crystal the language of your business by assigning synonyms to the Entities of your Topics.

To know more, consult the following articles:

Advanced Capabilities

When requesting a Topic, check out a few tricks that can come in handy on Crystal's advanced conversational capabilities!


Jump to Section

Entity-Based ConversationContext MemoryAutocomplete

Keep talking to your data!

Last updated

Was this helpful?