Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Import Macro Repair

This article highlights and explains how to set up conditionals and combine features to build powerful, precise rules. 

...

The antecedent is the first, or “if,” part of a conditional statement. The consequent is the second, or “then,” part of a conditional statement. The consequent is the result of the antecedent. Keep in mind that conditional statements might not always be written in the “if-then” form. Conditional statements may be nested such that either or both of the antecedent or the consequent may themselves be conditional or logical statements.


Example Conditionals
Info
title

Examples of conditionals you can use in Hawksearch would be the following:  

  • If an item is on sale, then boost it relative to the top of other relevant search results. 
  • If an item is discontinued or out of stock, then hide it. 
  • If an item is cheaper than other items in the search results, then bury it to the bottom of the results. 
  • If an item is a very popular item in the department, then pin it to the top of the search results for the department name.  

By using well-formed conditionals in Hawksearch to trigger actions, you can precisely enable actions like boost/bury, visibility rules, landing pages, item pinning, etc. 

Table of Contents
maxLevel3

Navigation

Conditional statements are found in Hawksearch to program and select pools of items or content based on certain conditions. The image above highlights the basic features of a conditional trigger. 

  1. ANY/ALL Selector Box
  2. Field Selection Dropdown Box
  3. Operator Selection Dropdown Box
  4. Value Input Field (Autocomplete Enabled)
  5. Add Condition Box
  6. Depth Adding Box
    1. Angled Bracket >> Adds a nested condition one layer below the selected condition. 
    2. Minus: Clicking on this deletes the selected condition.

...

If you now switch the ANY to ALL, you realize that there is no product that satisfies the conditional. The only product that would make this statement true, must be branded as Columbia, Salomon, and The North Face at the same time. 

Image Modified

To trigger an action for all Columbia branded items that were colored red, you would set up the following conditional: 

Image RemovedImage Added

Info
titleSingle condition

If a statement only has one condition, it doesn't matter if you use ANY or ALL since they are logically equivalent.  

Field Selection

Image Modified

You may select any field that is set toXXXXX.variable from the drop down box to be the field used to trigger an action. 

Operators

Conditional statements in Hawksearch utilize several operators to logically evaluate statements. All operators are not applicable to each field, depending on if the operator is derived from data or from user inputs.   

Image Modified

  1. Contains
  2. Does Not Contain
  3. Contains In
  4. Does Not Contain In In 
  5. Is 
  6. Is Not
  7. Is In 
  8. Is Not In


Info

Not all fields are capable of using all operators! Strings XXXXXXXXX CHECKSome fields are set as text strings, some as numbers, etc. The settings of a field determine what operators can be used. Also, if you're using a field condition that is explicitly in the data, your entry must be a perfect fit. For example, department name, color, or any other field.  

For numerical fields, the operators perform mathematical comparisons. 

...

The Is in operator is for any one a series of possible exact matches. Think of Is In as IS with an OR in between each term. For example,  

Image Modified

This is logically equivalent to this case with the ANY condition setting enabled: 

Image Modified

Here's a case where using is in makes a logical condition much easier to understand and implement.

...

Filter by label (Content by label)
showLabelsfalse
max5
spacescom.atlassian.confluence.content.render.xhtml.model.resource.identifiers.SpaceResourceIdentifier@21fba2
showSpacefalse
sortmodified
reversetrue
typepage
cqllabel in ( "conditional" , "in " , "contains" , "trigger" , "is" ) and type = "page" and space = "HSKB"
labelsconditional trigger is in contains

...