Skip to main content

FilterCondition

GitHub source

FilterCondition

evo.compute.tasks.common.filters.FilterCondition

A leaf filter condition applied to a single attribute of the filtered object.

Provide exactly one operator and the matching payload:

  • "in" / "not_in": membership tests — pair with values (a list of string category names or integer category keys).
  • "equal", "not_equal", "greater_than", "greater_than_or_equal_to", "less_than", "less_than_or_equal_to": numeric comparisons — pair with threshold (a single float).

Example::

>>> FilterCondition(attribute=grid.attributes["domain"], operator="in", values=["LMS1"])
>>> FilterCondition(attribute=grid.attributes["grade"], operator="greater_than", threshold=0.5)

type​

type: Literal['condition'] = 'condition'

Discriminator identifying this as a leaf filter condition.

attribute​

attribute: AttributeExpression

The attribute on the filtered object to evaluate the condition against.

operator​

operator: FilterOperator

The filter operator. Use in/not_in with values; numeric operators with threshold.

values​

values: list[str | int] | None = None

Category values to match. Required for in/not_in. Strings for category names, ints for category keys.

threshold​

threshold: float | None = None

Numeric threshold. Required for the numeric comparison operators.

Was this page helpful?