Question Equivalence Rules

The question equivalence rule provides a general expression to match several equivalent questions. The rule forms part of a question equivalence class. When you ask a question, Answer Server matches the question text against the rules in your question equivalence classes.

In general, you use text with a Boolean or proximity expression to match questions.

For example, the questions Why is the sky blue?What causes the sky to appear blue?, and What gives the sky the color blue? are all equivalent. You might use the rule sky NEAR blue to match all these questions.

You can expand the rules to more complicated expressions to match more complicated sets of equivalent questions. The expression can use the same Boolean and proximity syntax as the IDOL Content component query text, along with bracketed expressions to specify priority. For more information, refer to the IDOL Server Reference.


You cannot use Wildcard expressions in your question equivalence rules unless there is also a non-Wildcard term required by the rule. For example, you cannot use the rule sk*, because it contains only a Wildcard term. However, you can use sk* AND blue, because blue is also required. Answer Server returns an error if you try to use an invalid rule.

In general, HPE recommends that you do not use Wildcard expressions in your rules.

In all these cases, you add the rule to the question equivalence class by using the ManageResources action. The add and update operations for question equivalence classes accept a rule property, which accepts the expression as a string value. For example:

"rule":"sky NEAR blue",

For these rules, you can use the GetResources action to suggest rules. See Generate a Question Equivalence Rule. You can also use the TestRule action to test whether a rule matches all the questions you want. See Test Your Question Equivalence Rule

For more information about adding a rule to a question equivalence class, see Create a Question Equivalence Class and Add an Answer and Update a Question Equivalence Class.

Special Rule Types

In certain special cases, you might also want to use a FieldText expression. This option is most useful when you have a very short question that you want to match exactly. In this case, you can use a FieldText expression to prevent the rule from matching any longer question that contains your short question.

For example, the question What is life? is very short, and might easily match longer questions that are not equivalent, such as What is Life of Pi about?.

When you want to use a FieldText expression when you add or update a question equivalence class, you set the rule property as an object. This object has a required text property, and an optional fieldtext property, which set the appropriate text and FieldText rules.

The Ask action sends the question to your Answer Bank Agenstore in a DRECONTENT field. You can use your FieldText expression to match text in this field by using the IDOL Content component FieldText operators.

For example:

"rule": { "text": "What is Life?", "fieldtext": "MATCH{What is Life?}:DRECONTENT" }

This rule matches only the exact question What is life?

For more information about FieldText operators, refer to the IDOL Server Reference.


You must always specify the text property. That is, you cannot create a rule with only FieldText.

The more complicated rule types can be useful in certain circumstances. However, the GetResources rule suggestion option does not return any suggestions that contain FieldText. Similarly, you cannot test complex FieldText rules by using the TestRule action.