An NLI over your Database

The steps to deploy an NLI over your existing database. And then some guidance on customization.

Deploy an NLI in Five Minutes!

First you create a configuration which associates default words and phrases with tables, views, columns, values and foreign keys of your database. Then you launch an NLI through which users can access your database.

The figure below illustrates this: (1) you connect to your database; (2) a configuration is built and saved on the file system of the C-Phrase Server; (3) you launch an NLI; (4) users ask questions to access the database. This whole process should take under five minutes!

Customize Your NLI

You may wish to improve the quality of your initial NLI by customizing it. In C-Phrase all customization is performed using the C-Phrase Admin Tool. This involves mostly using a tree editor to edit and add phrases attached to database elements and to set special properties. While you may want to specify some regexp expressions and some SQL wrappers, there is no grammar to specify. The tool does not expect any linguistic expertise and only a basic understanding of databases. For a refresher on the critical database concepts, watch the following video.

The simplest type of customization is to rework and extend the words and phrases that match database tables, columns, foreign keys and column values. Based on how you created your configuration, C-Phrase may have added synonyms for names of tables, views and columns in your database. These phrases may be edited, removed or extended. In addition C-Phrase has some default methods for how it generates synonyms for database values. These too can be re-configured. Note you may always explicitly add values to your configuration to provide custom names to specific values (e.g. "Bean town" is a synonym for the city name "Boston").

There are many more advanced customizations you can make to your NLI. Most noteably this includes the ability to define views within C-Phrase's configuration. Since the views are expressed in the SQL of the underlying database, you are given tremendous ability to fashion a conceptual model that matches your user's understanding of the database. There are many other special customizations covered in the detailed documentation here.

Please let us know if we can help you author your NLI and please give us feedback on what types of customizations you are interested in seeing us support in the future.