Adaptive Search Queries: Query Expression

Adaptive Search supports multiple operators that adhere to SCIM standards. You can define the query expression as shown below:

q: "<the query expression>"

The following operators are supported for building a query expression:

Operator Attribute Type JSON Operand Type Description JSON Sample Description Exceptions

AllOfTheWords

Text/Entity

String

All of the words

{"op": "$all" , "attribute": "PartyUniqueName", "value": "Technologies United"}

If the attribute value (or the entity's all field) includes all of keywords in array of values specified in the operand the there is a match.

if the attribute is not a text attribute or an entity

AnyOfTheWords

Text/Entity

String

Any of the words

q: {op: "$any" , attribute: "PartyUniqueName", value: ["pinnacle", "united"]}

If the attribute value (or the entity's all field) includes anyof keywords in array of values specified in the operand the there is a match.

if the attribute is not a text attribute or an entity

NoneOfTheWords

Text/Entity

String

None of the words

q: {op: "$none" , attribute: "PartyUniqueName", value: ["pinnacle", "united"]}

If the (or the entity's all field) attribute value includes noneof keywords in array of values specified in the operand the there is a match.

if the attribute is not a text attribute or an entity

Equals

Boolean, Currency, Date, Time, Timestamp, Number, String, Text

Boolean, Date, Time, Timestamp, Number, String, Text

Equals

q: {op: "$eq" , attribute: "PartyUniqueName", value: "(503) Holdings I, LLC (Aberdeen, US)"}

The attribute and operand must be identical for a match.

If operand is not combatible with the attribute type

NotEquals

Boolean, Currency, Date, Time, Timestamp, Number, String, Text

Boolean, Date, Time, Timestamp, Number, String

Not equals

q: {op: "$ne" , attribute: "PartyUniqueName", value: "(503) Holdings I, LLC (Aberdeen, US)"}

The attribute value and the operand must not be identical for a match.

if the operandis not combatible with the attribute type

Exists

Boolean, Currency, Enum, Date, Time, Timestamp, Number, String, Text

none

Exists

q: {op: "$pr" , attribute: "PrimaryAddress"}

If the attribute has a non-empty or non-null value, or if it contains a non-empty node for complex attributes, there is a match.

if the operand is not combatible with the attribute type

NotExists

Boolean, Currency, Enum, Date, Time, Timestamp, Number, String, Text

none

Not exists

q: {op: "$npr" , attribute: "PrimaryAddress"}

If the attribute value is null

if the operand is not combatible with the attribute type

FuzzyMatch

Text

String

Fuzzy match

q: {op: "$fm" , attribute: "PartyUniqueName", value: "Holdings"}

Does a fuzzy match, requires atleast four characters

if the attribute is not a text field

GreaterThan

Currency,Date, Time, Timestamp, Number

Date, Time, Timestamp, Number

Greater than

q: {op: "$gt" , attribute: "Revenue", value: 1500}

If the attribute value is greater than the operand, there is a match.

if the attribute type is not Currency,Date, Time, Timestamp, or Number

GreaterThanOrEqual

Currency, Date, Time, Timestamp, Number

Date, Time, Timestamp, Number

Greater than or equal

q: {op: "$ge" , attribute: "Revenue", value: 1500}

If the attribute value is greater than or equal to the operand, there is a match.

if the attribute type is not Currency,Date, Time, Timestamp, or Number

Less Than

Currency, Date, Time, Timestamp, Number

Date, Time, Timestamp, Number

Less than

q: {op: "$lt" , attribute: "Revenue", value: 1500}

If the attribute value is less than the operand, there is a match.

if the attribute type is not Currency,Date, Time, Timestamp, or Number

LessThanOrEqual

Currency, Date, Time, Timestamp, Number

Date, Time, Timestamp, Number

Less than or equal

q: {op: "$le" , attribute: "Revenue", value: 1500}

If the attribute value is less than or equal to the operand, there is a match.

if the attribute type is not Currency,Date, Time, Timestamp, or Number

In

Currency, Date, Enum, Time, Timestamp, Number, String, Text

An array of values compatible the attribute type

In

q: {op: "$in" , attribute: "PartyUniqueName", value: ["pinnacle", "united"]}

If the attribute value is equal to any of the specificed values in the array of values

if the operand is not an array of values combatible with the attribute type

NotIn

Currency, Date, Enum, Time, Timestamp, Number, String, Textt

An array of values compatible the attribute type

Not in

q: {op: "$notin" , attribute: "PartyUniqueName", value: ["pinnacle", "united"]}

If the attribute value is equal to any of the specificed values in the array of values

if the operand is not an array of values combatible with the attribute type

Between

Currency, Date, Time, Timestamp, Number

Two operands compatible the attribute type

(min,max)

q: {op: "$wi" , attribute: "CreationDate", value1: "2014-09-18T19:59:38.000+0000", value2: "2017-09-18T19:59:38.000+0000"}

if the attribute value is >= min and < max

if the value1 is not combatible with the attribute type

Not Between

Currency, Date, Time, Timestamp, Number

Two operands compatible the attribute type

(min,max)

q: {op: "$notwi" , attribute: "CreationDate", value1: "2014-09-18T19:59:38.000+0000", value2: "2017-09-18T19:59:38.000+0000"}

If the attribute value is < min or >= max

if the value1 is not combatible with the attribute type

StartsWith

String, Text

String

Starts with

q: {op: "$sw" , attribute: "PartyUniqueName", value: "United"}

The entire operand must be a substring of the attribute value, starting at the beginning of the attribute value. This criterion is satisfied if the two strings are identical

if the attribute type is not String or Text

EndsWith

String, Text

String

Ends with

q: {op: "$ew" , attribute: "PartyUniqueName", value: "United"}

The entire operand must be a substring of the attribute value matching at the end of the attribute value. This criterion is satisfied if the two strings are identical.

if the attribute type is not String or Text

Contains

String Text

String

Contains

q: {co: "$co" , attribute: "PartyUniqueName", value: "Oracle"}

The entire operand must be a substring of the attribute value for a match.

if the attribute type is not String or Text