# Rules Expression Examples ## 1. Expanded / Compressed Pattern Rule **Example:** Column: **ZipCode** Requirement: ZipCode should have 4 or 5 digits only. * **Input Variable**: `Var_1` (mapped to column ZipCode) * **Static Variable**: `valid_zip` (List type: \["DDDD", "DDDDD"]) | **Expression** | **List Type** | **Sample Value** | **Expected Result** | | ---------------------------------------------------------------------- | ------------------- | ---------------- | ------------------- | | `validate Var_1 expect expanded_pattern IN valid_zip` | \["DDDD", "DDDDD"] | 1234 | True | | `validate Var_1 expect expanded_pattern IN valid_age` | \["D", "DD", "DDD"] | 1008 | False | | `validate Var_1 expect compressed_pattern IN valid_compressed_pattern` | \["DLD"] | 123ab9 | True | ## 2. Range Rule **Example:** Column: **Age** Requirement: Age should be between 18 and 60. * **Input Variable**: `Var_2` (mapped to column Age) * **Expression**: `validate Var_2 expect numeric_value in_range (18, 60)` | **Sample Value** | **Expected Result** | | ---------------- | ------------------- | | 25 | True | | 17 | False | ## 3. Regex Pattern Rule **Example:** Column: **Email** Requirement: Email should be in valid format. * **Input Variable**: `Var_3` (mapped to column Email) | **Expressions** | **Sample Value** | **Expected Result** | | -------------------------------------------------------------------------------- | ----------------- | ------------------- | | `Validate var_3 expect regex('^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+.[A-Za-z]{2,}$')` | test@example.com | True | | `Validate var_3 expect regex('^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+.[A-Za-z]{2,}$')` | invalid-email.com | False | | `validate var_3 expect regex('\d+')` | 123456789 | True | ## 4. Length Rule **Example:** Column: **Username** Requirement: Username should be between 5 to 15 characters long. * **Input Variable**: `Var_4` (mapped to column Username) | **Expressions** | **Sample Value** | **Expected Result** | | ---------------------------------------------- | ------------------------ | ------------------- | | `validate Var_4 expect length in_range(5, 15)` | JohnD | True | | `validate Var_4 expect length in_range(5, 15)` | JD | False | | `validate Var_4 expect length=5` | India | True | | `validate Var_4 expect length<>5` | India | False | | `validate Var_4 expect spec_char_count=1` | NY 10011, USA | True | | `validate Var_4 expect space_count<=1` | United States Of America | False | | `validate Var_4 expect frequency=1` | India | True | ## 5. List Rule **Example:** Column: **Country** Requirement: Country should be either USA, Canada, or UK. * **Input Variable**: `Var_5` (mapped to column Country) * **Static Variable**: `valid_countries` (List type: \["USA", "Canada", "UK"]) | **Expressions** | **Sample Value** | **Expected Result** | | ---------------------------------------------------- | ---------------- | ------------------- | | `validate Var_5 expect Value IN valid_countries` | USA | True | | `validate Var_5 expect value IN valid_countries` | Germany | False | | `validate Var_5 expect value not_in valid_countries` | India | True | ## 6. Null Rule **Example:** Column: `Var_6` Requirement: Validate different null handling scenarios. * **Input Variable:** `Var_6` | Expression | Sample Value | Expected Result | | ------------------------------------------------------------ | ---------------- | ------------------- | | `validate Var_6 expect is_null` | None | False | | `validate Var_6 expect is_null` | \_\_null\_\_ | True | | `validate Var_6 expect not is_null` | \_\_null\_\_ | False | | `validate Var_6 expect not is_null` | 12345 | True | | `validate Var_6 expect not is_null` | (Empty) | (Empty) | | `validate if(Var_6 is null, true, false) expect is_true` | \_\_null\_\_ | True | ## 7. Custom Condition Rule **Example:** Column: **Salary** Requirement: If the job title is "Manager", the salary should be greater than 50,000. * **Input Variables**: `Var_7` (mapped to column JobTitle), `Var_8` (mapped to column Salary) * **Expression**: `validate case when Var_7 == 'Manager' then Var_8> 5000 else false end expect is_true` | **Job Title** | **Salary** | **Expected Result** | | ------------- | ---------- | --------------------- | | Manager | 60000 | True | | Developer | 45000 | True (Not applicable) | | Manager | 40000 | False | ## 8. Date Format Rule **Example:** Column: **TransactionDate** Requirement: Date should be in YYYY-MM-DD format. * **Input Variable**: `Var_8` (mapped to column TransactionDate) | **Expression** | **Sample Value** | **Expected Result** | | --------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ------------------- | | `validate Var_8 expect is_date` | 2024-02-01 | True | | `validate Var_8 expect is_date` | 2021-01-01T00:00:00Z | False | | `validate Var_8 expect is_date_time` | 2011/12/03 10:15:30 | True | | `validate Var_8 expect date_time_value in_range valid_datetime` |
Static Variable ⇒ Date Time Range
From=-2d, To=@now
Sample Value ⇒ 2025-07-16 05:24:36.441