Natural Language Query

  • NLQ Data Connectors
  • Syntax guided NLP search query
  • NLP suggestions
  • Grid improvements
  • Multitenancy support

NLQ Data Connectors

Natural language processing functionality can be leveraged against a single MSSQL or a single PGSQL data source.

../_images/nlq_connectors.png

Syntax guided NLP search query

The search follows a mandatory syntax with a set of rules to follow. The following list of comparison words and signs will be automatically recognized by Izenda’s NLP and suggestions will appear.

Words/Signs Syntax Example
Avg Avg [Column Name] of [Table Name] Avg freight of orders
Sum Sum [Column Name] of [Table Name] Sum discount of order details
Maximum Maximum [Column Name] of [Table Name] Maximum unit price of products for categoryid = 1
Count Count [Column Name] of [Table Name] Count ship country of orders
Distinct sum Distinct sum [Column Name] of [Table Name] Distinct Sum Freight of orders
Distinct count Distinct count [Column Name] of [Table Name] Distinct count customer id of orders
= [Column Name] of [Table Name] for [Column Name] = [Value] Count ship country of orders for freight = 100
> [Column Name] of [Table Name] for [Column Name] > [Value] Ship country of orders for freight > 10
< [Column Name] of [Table Name] for [Column Name] < [Value] Ship country of orders for freight < 10
Between [Column Name] of [Table Name] for [Column Name] between [Value] and [Value] Product name of products for unit price between 10 and 50
Group [Column Name] of [Table Name] by [Column Name] Avg freight of orders by ship city
Like [Column Name] of [Table Name] for [Column Name] like [String value] Avg freight of orders for ship city like AM
Is [Column Name] of [Table Name] for [Column Name] is [String value] Avg freight of orders for ship city is Brazil (edited)

NLP Suggestions

As user types into the search box, Izenda will provide a list of suggestions to choose from. This list will be populated by the system after analyzing the data in DB/schemas. Users will need to select from the query suggestions and press ENTER to populate results in step 2.

Izenda will provide query assistance based on the following:

  • Synonyms: Izenda’s NLQ engine will save hours of your effort to add tags and keywords to column names. When you type a keyword which is not a part of the data model, the synonyms of the column names will be automatically recognized by Izenda’s model. The engine will pick the matching columns from the data model and help you build your query.

    ../_images/nlq_synonyms.gif

  • Relationships: Izenda’s NLQ engine identifies relationships in the DB and intelligently suggests columns from the related data sources. When you type a keyword which matches a column in another table with which relationship exists, the engine will suggest and help you build your query.

    ../_images/nlq_relationships.gif

  • Column Values: Izenda’s NLQ engine indexes the data connectors and helps in suggesting column values. When you type keywords ‘IS’ or ‘LIKE’, the engine will auto-populate values to easily select from.

    ../_images/nlq_value_suggestion.gif

Grid Features

For users who are unfamiliar with the data model, Grid improvements have been introduced in NLP step 2. This functionality will help in identifying, sorting and managing data very quickly. The ‘Add Column’ rail on the right side displays all the available columns that can be added to the grid. You can also find all applicable functions, formats and sorting options in the grid dropdown itself.

../_images/nlq_grid_Enhancements.gif

Multitenancy support

Izenda now has Multi-tenant capability in NLQ. A single instance of NLQ license can be served to multiple tenants. With this feature, every tenant can now configure NLQ separately with its own share of the data, configuration, user management and functionality.

Limitations

  • All column names in the search query have to be separated by a comma (,) for more suggestions to populate
  • Users will be required to select from query suggestions for grids to populate in Step 2
  • Synonyms of the values of column names will not be recognized by the model
  • Natural language processing functionality can be leveraged against only MSSQL or PGSQL configuration database