What is a LeadConduit Rule?
Rules are the backbone of LeadConduit’s decision-making engine. They provide a powerful, flexible way for non-programmers to exercise logic-based control over LeadConduit flow events, mappings, filters and lead intake acceptance.
In its simplest form, a LeadConduit rule consists of a Target datum to be tested, an Operator that describes what test is being performed, and in most cases a Criteria value that the operator tests the target against. Here are some examples:
| Target | Operator | Criteria value |
|---|---|---|
| Is not blank | ||
| state | Is equal to | WV |
| DOB | Is not within the last | 18 Years |
| Age | Is less than | 65 |
| Postal Code | Is included in | 17201,95616,90210 |
| Currently Insured | Is true | |
| Program of Interest | includes | Nursing |
How to configure rules
Rule configuration starts with a three-column form, much like this one found in Source acceptance criteria:
First, select the Target from the Left-Hand Value menu. This menu will offer all flow fields, system fields, step outcomes and appended data available at that point in the flow.
Once you’ve selected the Target, the middle drop-down will present you with a selection of Operators that are appropriate to the type of data contained in the target. Certain operators are only meaningful for date-type targets, for instance, and will not be available if a string-type Target is selected.
The right-hand column accepts the Criteria value or reference identifier. This column may disappear if the Operator you’ve chosen (such as “is blank”) does not recognize any additional Criteria:
If a “+” sign appears in the Criteria column, clicking it will display a list of available flow fields, system fields, step outcomes, and appended data:
You may also type in text or numbers if your Criteria is a constant rather than a field or appended-data value:
If your operator works with multiple values, you can type those values in individually:
Tip: For managing a rule with a lot of values, you can copy or paste a comma separated list from a text editor instead of entering the values one at a time. Temporarily change the operator to “is equal to” to see the list as one string of comma separated values. Be sure to return the operator to it’s previous state after you are finished managing the values.
Multiple Rules
Add additional rules to a group by clicking the plus (+) button. Delete a rule by clicking its minus (-) button:
When you are evaluating more than one rule, you may choose whether all, or just any one of them need to be met for the entire rule to be considered “conditions met”:
Nested Rules
You may add a second, “nested” layer to any rule by clicking the down arrow inside a box. The original rule is known as the “Parent” and the second layer is known as the “Child”. In order for the parent to evaluate as “conditions met”, its child layer’s rules must also, taken as a group, evaluate as “conditions met”:
Only parent-level rules may have nested children, so the maximum number of nested layers is two.
Rule Sets
You can convert a top-level rule to a group of rules that is evaluated as if it were one, called a “Rule Set”, by clicking the solid square button. For instance, let’s say you want to create a group of rules that evaluate BabyDue Date. Beginning with this:
Append additional Baby Due Date rules to evaluate as a group:
Copying Rules and Rule Sets
You can make a copy of a rule or rule set by clicking the multiple page button to the far right:
After copy:
Rule operators
Rule operators are responsible for performing the core logic of a Rule. Every rule must have an operator. There are two kinds of operators. The below tables describe the available operators and what Types they can be used with.
Binary Operators:
Binary operators compare the left hand value ( **lhv)** and the right hand value ( **rhv)** of a Rule.
| Operator | Description | Types |
|---|---|---|
| is equal to | Is the lhv exactly equal to the lhv? |
string (case sensitive), number, range |
| is not equal to | Does the lhv contain a value different from the rhv? |
string (case sensitive), number, range |
| is less than | Is the lhv numerically less than the rhv? |
number, range |
| is less than or equal to | Is the lhv numerically less than or equal to the rhv? |
number, range |
| is greater than | Is the lhv numerically greater than than the rhv? |
number, range |
| is greater than or equal to | Is the lhv numerically greater than or equal to the rhv? |
number, range |
| is between | The lhv is between the range’s min and max (inclusive) e.g. “1-47” |
range |
| is not between | The lhv is not between the range’s min and max (exclusive) |
range |
| is included in | The lhv is included in the Array of values provided in the rhv
|
string, number, boolean |
| is not included in | The lhv is not included in the Array of values provided in the rhv
|
string, number, boolean |
| includes | The Array of values provided in the lhv contains the rhv
|
Array of strings, numbers, booleans |
| does not include | The Array of values provided in the lhv does not contain the rhv
|
Array of strings, numbers, booleans |
Unary Operators:
Unary operators evaluate only the lhv of a Rule. For rules that use a unary operator, an rhv cannot be provided.
| Operator | Description | Types |
|---|---|---|
| is blank | Is the lhv missing or empty? |
all |
| is not blank | Does the lhv contain a value? |
all |
| is true | Does the lhv evaluate to true? |
boolean |
| is false | Does the lhv evaluate to false? |
boolean |
| format is valid | The lhv was successfully interpreted as a value of its specified type. |
all |
| format is invalid | The lhv could not be interpreted as a value of its specified type. |
all |
**Pro Tip:**Easily set up “is Included In” rules with large lists of comma-separated values.
If you need to enter a large list of values into the right-hand-side of an “Is included in” or “Is not included in” rule, you don’t have to enter them one-by-one. Here’s a time-saving procedure.
- Prepare your list of values as a one-line, comma-separated list using a text editor like Notes or Notepad. Be sure to NOT leave any spaces around the commas, and enclose in quotes any entries that themselves contain commas.
- Set up the left-hand side of your rule normally.
- Before putting anything in the right-hand side of the rule, set the operator to “is equal to”.
- Paste your prepared list into the right hand side.
- Finally, change the operator to “is included in” or “is not included in” as desired, and save the result.
You can extract and edit your list by reversing the procedure.
Common Questions
What values does the operator “is blank” match?
- The “is blank” operator will match when the field contains an empty string, no values, or a null value.
- rules-dob.png60 KB
- rules-blank.png30 KB
- rules-dob-future.png10 KB
- rules-multiple-2.png100 KB
- rules-state.png100 KB
- rules-any-all.png40 KB
- rules-add-delete.png40 KB
- rules-nested-example.png100 KB
- rules-ruleset_example.png90 KB
- rules-rule-set-multiple.png100 KB
- rules-copy-1.png100 KB
- rules-copy-2.png60 KB
Comments
0 comments
Please sign in to leave a comment.