Teneo Developers
Table of Contents
Was this page helpful?

Share to

Lexical resources

Lexical Resources are large collections of predefined language objects. They come with Teneo and are available in many different languages. Lexical Resources cover general language vocabulary and common phrases so that you do not have to model them yourself. They are hierarchically ordered with more complex language objects consisting of less complex language objects. This allows you to use words and expressions at your desired complexity level.

A full list of languages with Lexical Resources is available here.

Lexical Resources are always automatically assigned when you create a solution. They can be found in the Solution backstage under Resources.



Many of the words covered by the Lexical Resources are structured in a hierarchy with more general entities at the top and more specific entities at the bottom. This allows you to use the degree of granularity you need for your current bot. To give an example, sometimes it might be sufficient for you to know that the user is talking about an alcoholic drink, while in other cases it may be crucial to know the exact type of beer the user wants to order. Below, we show a simplified part of the hierarchical structure used for drink-related vocabulary in the Lexical Resources.

Build - Lexical resources: drinksTaxonomy

Common Phrases

Most Lexical Resources do not only cover words but also common phrases consisting of several words. Often there are many different ways to express the same intention. This is where phrasal language objects come into play. Say that the user of your bot wants to buy a coffee. You may use the phrasal language object I_WANT.PHR in combination with the object for BUY.VB.LEX in your condition in order to capture a wide range of different varieties to express this intention. These are some examples covered by I_WANT.PHR:

I want / I would like to / I feel like / Is it possible to get / Could I have / Can I have / Let me have / I need to get / I would absolutely love to / I'd be keen to / Give me / I'm interested in / ...

Adapt existing Lexical Resources

Sometimes, you may want to adapt language objects included in the Lexical Resource. This may happen because the current project requires broader or different coverage.
If you want to modify a language object from a Lexical Resource, you have to make a local copy of it and store it in your solution. You can now modify this local copy as you need. At runtime, only this locally modified version of the language object will be used, as local language objects always have precedence over the language objects in the Lexical Resources.

You may wonder why you have to copy the language object before you modify it. Well, Lexical Resources are complex collections of language objects and it could be risky to allow their direct modification. Naming the copy like the original language object ensures that the modifications you made will propagate up to other language objects in the Lexical Resources that make use of the one you modified.