Teneo Developers

Match Requirements

The matching process

Each Intent Trigger can contain as many Match Requirements as needed. For each user input, the list of Match Requirements is checked top-to-bottom, executing each Match Requirement against the user input.
If all Match Requirements match, the Intent Trigger is considered to trigger for the user input, so the following nodes in the Flow will be executed.
If any of the Match Requirements does not match, the rest of the list is left unevaluated.

Types

The following Match Requirements are available in Flow Intent Triggers and Transitions:

  • Class Match Requirement
  • Condition Match Requirement
  • Entity Match Requirement
  • Language Object Match Requirement
  • Script Match Requirement
  • Context Match Requirement

Class

A Class Match Requirement matches whenever the user input is classified with the selected class as the TOP_INTENT.
Since the Machine Learning model selects a single TOP_INTENT class for each input, only one Class Match Requirement can be defined per Intent Trigger.
When working in a Flow, clicking the name of the Class Match Requirement while pressing Ctrl allows to open the Class Manager directly.

Read more about Class Management in Teneo Studio, or learn more about machine learning in Teneo in the Knowledge Base.

Condition

The Condition Match Requirement matches based on the syntactic condition (using the Teneo Linguistic Modelling Language).
It is possible to add more than one Condition Match Requirement per Intent Trigger.
The Condition Match Requirement can also be drafted automatically based on the positive examples of the Intent Trigger to facilitate a starting point to the user.

Read more

Entity

The Entity Match Requirement matches if the selected Entity is presented in the user input.
When adding this kind of Match Requirement, it is not necessary to write the % (percentage) sign known from the Condition editor; get suggestions on available Entities by writing the first letters and pressing Ctrl+space.

Read more about Entities here.

Language Object

The Language Object Match Requirement is matched if the condition of the selected Language Object matches the user input.
When adding this kind of Match Requirement, it is not necessary to write the % (percentage) sign known from the Condition editor; get suggestions on available Language Objects by writing the first letters and pressing Ctrl+space.

Read more about Language Objects here

Script

A Script Match Requirement matches if the script returns a value that can be interpreted as a True Boolean value.
Script Match Requirements give the user the option to define Groovy scripts that will be executed each time a new user input is processed.
Script Match Requirements are the slowest among Match Requirements, so users are encouraged to use them late in the Match Requirement chain so their execution is prevented if the other Match Requirements do not match.

Context

The Context Match Requirement groups different Context conditions that can be matched for an input: Global and Flow Variables and Scripted Contexts.
Global Variable Context matches whenever the value of the selected Global Variable matches the return value of the expression in the Match Requirement.
Flow Variable Context matches whenever the value of the selected Flow Variable matches the return value of the expression in the Match Requirement.
Scripted Context matches whenever the evaluated Scripted Context is one of the selected states.

Read more in the Globals section

Multiple Match Requirements

Each Intent Trigger can contain as many Match Requirements as needed, although only one Class Match Requirement is allowed per Intent Trigger.
New Match Requirements are inserted to the top of the list when added; a handle to drag/drop them into the desired order is available in the top-right corner of the Match Requirement.

Entities
Language Objects
Global Context
Listeners and Variables
Scripts and Groovy in Teneo
Data Actions