> ## Documentation Index
> Fetch the complete documentation index at: https://docs.keyflow.space/llms.txt
> Use this file to discover all available pages before exploring further.

# Filter

### **Overview:**

The `Filter` block is designed to selectively pass through data based on specific criteria, allowing you to refine or eliminate undesired elements from a list. It supports a range of condition types such as handling empty values, performing numerical comparisons, evaluating boolean states, and matching text-based conditions. This block plays a vital role in workflows where data validation and cleansing are essential by ensuring that only entries meeting the defined criteria are processed.

***

### Inputs & Outputs

| I/O    | Feature              | Type     | Simple Explanation                                                                                                                                                                        |
| ------ | -------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| input  | `value`              | any\[]   | The actual data that you want to filter through.                                                                                                                                          |
| input  | `condition_value`    | any\[]   | The criterion against which the values will be filtered; if omitted, the value itself is used as the criterion.                                                                           |
| input  | `condition_type`     | selector | Specifies which type of filter condition will be applied during filtering.                                                                                                                |
| input  | `condition`          | any      | Defines the specific condition required for each value during filtering operations.                                                                                                       |
| input  | `output_blank_value` | boolean  | Determines whether to output a blank value when no matches are found based on the filtering condition set above.                                                                          |
| output | `filtered_output`    | Data     | Contains either those original inputs that matched your specified filter conditions or outputs an empty result if `output_blank_value` is true but no entries met your provided criteria. |

***

## Available List of Conditions

* **Is empty:** Confirms if an entry has no content.
* **Is not empty:** Validates whether there’s content present.
* **\[Number] is greater than:** Checks for numbers exceeding a given threshold.
* **\[Number] is less than:** Validates numbers falling below specified limits.
* **\[Number] is equal to:** Verifies if numbers match exactly with expected values.
* **\[Boolean] is true:** Ensures only true values pass through from boolean fields.
* **\[Boolean] is false:** Ensures only false values pass through from boolean fields.
* **\[Text] is exact match of:** Validates that strings completely correspond with given benchmarks without deviation.
* **\[Text] contains:** Checks whether strings have specific segments included within them.
* **\[Text] does not contain:** Filters out strings lacking certain specified segments or words.
* **\[Text] starts with:** Verifies that strings commence with defined prefixes for targeted inclusion in results.
* **\[Text] does not start with:** Excludes items whose string representations do not start according to specifications provided here .
* **\[Text] ends with**: Checks if strings conclude appropriately according particular suffix requirements outlined here . -\*\* \[Text ] does not end\*\* :Excludes unintended matches by confirming final determined suffixes prior established parameters .

## Use Cases

Imagine how this block can enhance your data processing tasks:

1. ***Filtering Out Records:*** Efficiently remove records failing certain benchmarks—for example, excluding customers younger than legal age or products priced beyond budget constraints during inventory assessments.

2. ***Empty Value Handling:*** Utilized effectively within large datasets across different collections—to isolate rows containing complete information by focusing solely upon populated attributes where critical analyses must take place .

3 . **\_ Boolean Field Subsetting :\_** Streamlining decisions involving flags¾ leveraging this technology allows analyses limited strictly just selecting options classified either “true” versus "false".

4 .**\_ String Processing :\_** Specifically target only terms featuring known keywords; forward-thinking marketers may course correct messaging strategy accordingly.\*;
a retail manager may actively manage what inventory enters promotional functions ”

In essence , wherever filtering down lists based upon relevant qualifications aids better clarity/consolidation +safeguards usability integrity....the "Filter" Block proves invaluable!
