VQL Error Messages

The following section describes common error messages.

VQL Conversion Error Messages

Legacy Profile tasks produce VQL conversion error messages if they encounter ill-formed or unexpected content during the VQL conversion that it performs to import a VQL category into IDOL server.

If you set up a log stream in the IDOL server configuration file that has LogTypeCSVs set to Index, VQL conversion writes error messages to log files under this line of text:

[LP - VQLTask] VQL conversion failed

NOTE: A corrupt VQL might produce several errors, but the task reports only a single error.

General Errors

Unknown operator <operator name>

The category the Legacy Profile task is importing includes an element in angled brackets that is not one of the operators which the task can convert. For example:

   <cat>

Unable to parse adjacent operators

The category the Legacy Profile task is importing contains an expression in which certain operators appear immediately adjacent to each other. It is not always meaningful to place operators immediately adjacent to each other without any intervening text.

VQL could not be fully parsed—invalid use of operators—Unable to fully parse VQL

The Legacy Profile task cannot complete the VQL conversion stage of legacy profile importing for some reason other than those identified by the other error messages listed in this appendix.

Proximity Errors

NEAR requires at least two operands—Problematic proximity operator—at least two operands required

The category the Legacy Profile task is importing contains an expression in which a proximity operator occurs with only one operand.

The proximity operators NEAR, PARAGRAPH, and SENTENCE require two or more words or phrases to be within a specified distance from each other.

Unrecognized

The category the Legacy Profile task is importing contains an expression in which it does not recognize the usage of the NEAR operator. This error can occur for one of the following reasons:

  • the VQL category input is corrupt

  • the usage of NEAR is unsupported. For example, the Legacy Profile task does not convert nested NEAR statements such as:

dog <NEAR/10> (kennel <NEAR/10> bone)

Adjacent NEAR values should not be different

The category the Legacy Profile task is importing contains an expression in which the distances specified for NEAR operators are not identical. For example:

dog <NEAR/10> kennel <NEAR/5> bone

If the proximity operator NEAR occurs adjacent to another occurrence of NEAR in an expression, the distance specified between operands by each use of NEAR must be the same.

Adjacent SENTENCE operators

The proximity operator SENTENCE occurs adjacent to another instance of SENTENCE in an expression. This expression is not valid VQL. For example:

dog <SENTENCE> cat <SENTENCE> fish

ORDER must come directly before another operator

The category the Legacy Profile task is importing contains an expression in which the ORDER operator does not occur immediately before another operator.

The ORDER operator must apply to another operator. ORDER is followed by an unsupported operator

The category the Legacy Profile task is importing contains an expression in which the ORDER operator does not occurs immediately before a proximity operator.

The ORDER operator can apply only to the proximity operators NEAR, PARAGRAPH, and SENTENCE.

Unable to process <ORDER><NEAR>

The category the Legacy Profile task is importing contains an expression in which the ORDER operator occurs immediately before a NEAR operator that does not specify a distance.

When the ORDER operator applies to the proximity operator NEAR, there must be some distance included for NEAR (for example, <NEAR/5>).

Boolean Operator Errors

Unmatched brackets

The category that the Legacy Profile task is importing contains a closing bracket that is missing a corresponding opening bracket. For example:

(dogs) <OR> cats)

NOT cannot be terminal—Problematic NOT/Bracket—single operand required

The category the Legacy Profile task is importing contains an expression in which NOT is not followed by a Boolean expression.

The NOT operator must occur before the Boolean expression that it applies to.

NOTE: The NOT, AND, and OR operators, unlike other operators, do not need to occur in angle brackets (<OR> and OR are both valid). For this reason, you must put occurrences of the word or or and that you do not want to use as operators into double quote marks (“or”, “and”). This error message often returns when the word or or and occurs without quotation marks.

Prefix unavailable for comma, OR, AND and IN

The category that the Legacy Profile task is importing contains an expression in which one of the operators below appears to be used in prefix form.

Some operators can occur either as infixes to their operands or as prefixes. Because of potential ambiguities, the Legacy Profile task does not accept these operators as prefixes:

,
OR
AND
IN

NOTE: The NOT, AND, and OR operators, unlike other operators, do not need to occur in angle brackets (<OR> and OR are both valid). For this reason, you must put occurrences of the word or or and that you do not want to use as operators into double quote marks (“or”, “and”). This error message often returns when the word or or and occurs without quotation marks.

Problematic AND/OR—at least two operands required

The category that the Legacy Profile task is importing contains an expression in which the OR or AND operator has only one operand. For example:

dog AND

The OR and AND operators must apply to at least two operands (for example dog AND cat).

NOTE: The NOT, AND, and OR operators, unlike other operators, do not need to occur in angle brackets (<OR> and OR are both valid). For this reason, you must put occurrences of the word or or and that you do not want to use as operators into double quote marks (“or”, “and”). This error message often returns when the word or or and occurs without quotation marks.

Field Restriction Errors

Nested IN operators

The category the Legacy Profile task is importing contains an expression in which an IN operator is nested within another IN expression. For example:

dog <IN> (pet <IN> animal)

The IN operator requires that a word or phrase occurs in a specified field. For example, dog <IN> pet is matched only if the word dog occurs in the pet field. Because nested fields cannot exist, it is not possible to nest IN operators.

Invalid use of IN operator—Problematic IN—two operands required

The category the Legacy Profile task is importing contains an expression in which the task cannot determine the expression and field operands for an IN operator.

The IN operator requires word or phrase to occur in a specified field, with two operands in the correct order: an expression (which defines the words or phrases to look for) and the field in which it must occur.

Problematic IN—single field required

The category the Legacy Profile task is importing contains an expression in which more than one field operand appears to be specified for an IN operator.

The IN operator requires word or phrase to occur in a specified field, with two operands in the correct order: an expression (which defines the word or phrase to look for) and the field in which it must occur.

Word and Phrase Errors

Mismatched quotes

The category the Legacy Profile task is importing contains an expression in which an operator in angular brackets occurs within double quote marks. For example:

"dogs <AND> cats"

Double quote marks indicate words or phrases that are used without modification (for example, to indicate that a word must be matched exactly, or a phrase containing and, or or not are not used as a Boolean expression).

While it is possible the expression "dogs <AND> cats" is correct and valid, it is more likely to be a corrupt form of an expression such as:

"dogs" <AND> "cats"

Unmatched quotes

The category the Legacy Profile task is importing contains an odd number of double quote marks.

Unable to resolve WORD/PHRASE—Word/Phrase has children

The category the Legacy Profile task is importing contains an expression with the WORD or PHRASE operator used in a way that the task cannot parse.

Invalid use of WORD operator

The category the Legacy Profile task is importing contains an expression in which the WORD operator occurs before more than one word.

The WORD operator must occur before a single word.

Invalid use of PHRASE operator

The category the Legacy Profile task is importing contains an expression in which the PHRASE operator does not appear to be followed by the components of a phrase.

The PHRASE operator must be followed by the components of a phrase.

Unsupported use of PHRASE operator—Unrecognized use of PHRASE

The category the Legacy Profile task is importing contains an expression in which the PHRASE operator occurs before elements from which the task cannot build a phrase.

The PHRASE operator builds phrases from one or more words or phrases or a comma-separated list of ORed words or phrases.

Expression Errors

VQL is not in conjunctive IN format

The conjunctive in format requires that each line of VQL consists of one or more component expressions that are connected with the AND operator.

Each component must exclude the IN operator, or be of the form expression <IN> field, where expression excludes the IN operator. For example:

expression A

In this example, expression A does not use the IN operator.

(expression A) AND (expression B) AND (expression C)

In this example, expression A, expression B and expression C do not use the IN operator.

(expression A) AND (expression B <IN> field1) AND (expression C)

In this example, expression A, expression B and expression C do not use the IN operator. Note that while expression B is part of an IN expression, it does not itself use the IN operator.