Skip to content

Overview of Classification Types

Classifications in Minyu provide a consistent mechanism for assigning boolean metadata to rows. Each classification evaluates to true or false and is automatically re-evaluated when dependent data or time changes. Classifications are used uniformly across the system for read logic, write validation, and filtering. Minyu supports three classification types, each addressing a different category of logic.

Value Classifications

Value classifications evaluate a single column in a table using a predicate (e.g., is not empty, is greater than, is valid email). They are used for data-quality checks, basic validations, and simple conditions applied directly to individual fields.

Checking if a value is present

A classification evaluates to true if email is not empty.

Numeric threshold validation

A classification evaluates to true if age is greater than 18.

Relational Classifications

Relational classifications evaluate conditions based on related data. They follow a defined relations path, collect distinct rows at the end of that path, and compare the result against an expected count. Optional filters—classification, set, and temporal—allow refining the path. Relational classifications are used when both read logic and write logic depend on the existence, absence, or properties of related rows.

Checking for at least one related row

A customer evaluates to true if at least one active contract exists.

Validating absence of relations

A resource evaluates to true if it has zero overlapping bookings.

Logical Classifications

Logical classifications combine other classifications using boolean logic and evaluate them using a discrete, truth-table–style model. They reference value, relational, or logical classifications and define which combinations of results should evaluate to true. Logical classifications are used to express compound conditions.

Combining two conditions

A classification evaluates to true only if HasValidEmail and HasActiveContract are both true.

OR-based eligibility rule

A classification evaluates to true if either IsAdmin or IsManager is true.