|
|
|
Permit Rewordings / Warn (Settings/Preferences tab)The Permit Rewording checkbox is new in version 4.0, and enables a built-in error handler which attempts to find alternate ways of interpreting the user's question. This feature may or may not be appropriate for your application. It's probably best suited for those situations where users have very little familiarity with the database and its contents, and would have less patience for the kind of "Sorry, please try again" message that can result from incorrectly-phrased questions. Using this feature can raise the response rate dramatically, but some percentage of these responses will be either incorrect or only partially correct. For development purposes, the "Warn on Rewording" checkbox lets you instruct the system to provide feedback on exactly when this special feature is invoked. This lets you scrutinize more carefully the responses and/or SQL translations which are generated as a result of these "rewordings". (Note that warning message boxes describing the rewording of the original question will not appear unless the "Warn on Rewording" checkbox and the "Show Warnings" checkbox (located on the Advanced tab of Settings) are BOTH checked. As an example, the question "list the employees" is handled by a typical interface, and would not generate any special messages. In contrast, "for all employees, give a list" uses a syntax not immediately understood by the system. If "Permit Rewordings" is checked, this question will be split at the comma, and resubmitted as "give a list for all employees", yielding a valid SQL translation. If the Warnings boxes are checked as described above, a message box will also appear, stating: Reworded query as: give a list for all employees Similarly, "did Christina Berglund ever have seafood" will not translate unless reworded as "where Christina AND Berglund AND seafood". This is the kind of simple list or correspondence question that can be handled by the rewording mechanism
However, details may be lost in the rewording process. For example, "add the price of all condiments" can be understood, yielding the sum of UnitPrices of all products in the Condiments category. But "take the price of all condiments and add them" is changed to "unitprice where condiments". The SQL which results lists the individual unitprice of each condiment. Although this answer is clearly "in the ballbark", it's not an accurate answer to the question. (Of course, there's no guarantee that any particular answer from a natural language system will be 100% accurate.) Still, this helps illustrate that there may be times where you prefer to see Permit Rewordings can still be applied as a kind of fall-back handler, even when more specific customization methods such as Question and Answer scripts are in use. Scripts can check for the code values used by thie function (WarningCode between 1 and 3 -- indicating the successful rewording stategy). Scripts can choose to ignore or abide by translations of reworded questions. Since Question scripts fire only for the original question, not reworded variants, any PrivateErrorCode values carried forward into an Answer script are based on the user's typed input alone. We also recommend against using the Permit Rewordings option in combination with more specific customization methods such as Question and Answer scripts.
Last Updated: March, 2002 |