Skip to content

Declarative logic

Minyu uses a declarative approach to system behavior. Instead of describing step-by-step actions, the system is configured by defining structure, conditions, and relationships.

Once defined, these declarations are evaluated uniformly wherever they apply. This explains why the same rules and classifications affect views, imports, APIs, and scheduling without separate configuration.

Declarative definitions

A declarative definition describes what must be true, not how to make it true.

In Minyu, this applies to models, classifications, permissions, and schedules. Definitions state conditions, constraints, or relationships. The system is responsible for evaluating them when data is read, written, or interpreted.

This means that configuration describes desired states and rules, not execution flows.

Evaluation vs navigation

Navigation is the act of moving through data: opening views, following relations, or inspecting rows.

Evaluation is the act of determining outcomes: whether something is visible, allowed, valid, or selectable.

In Minyu, evaluation does not depend on navigation order or UI interaction. The same evaluation occurs regardless of how data is accessed. This is why behavior is consistent across different interfaces and entry points.

Propagation of changes

Because definitions are centralized, changes propagate automatically.

When a model, classification, or rule is updated, all dependent evaluations reflect the change immediately. There is no need to update views, rewire logic, or adjust integrations separately.

This propagation is intentional. It ensures that behavior stays aligned with the current configuration rather than drifting over time.

How this affects troubleshooting

When behavior changes unexpectedly, the cause is usually a definition that was added, modified, or removed.

Troubleshooting should focus on identifying which declarative element affects the outcome: a model change, a classification condition, a rule, or a schedule binding.

The question to ask is not what action caused this, but which definition now evaluates differently.