Validation

Added

The actor has given the system something it cannot accept, and is about to find out on the system’s terms. Validation arrives at the field where the input happened, says what is wrong and how to fix it, and stays until the correction.

Persistence is the defining property — a message demanding action must outlive the glance, which makes validation the counterpart of transient feedback within status feedback’s three delivery shapes.

Timing

Reward early, punish late. A first-time entry should not be judged while the actor is still typing — flag it when they leave the field, or on submit. Once a field has been flagged, reverse the rule: re-validate on every keystroke, so the fix is confirmed the moment it lands rather than at the next blur.

Resources & references

Consequences

  • the message sits at the field that produced it, says what is wrong and what would fix it, and stays there until the correction lands
  • the timing rule inverts once a field has failed: judging a first attempt mid-typing is punishment, and waiting for the next blur to confirm a fix is withholding
  • every message is prose somebody wrote, and a long form's worth of them is a body of writing that decides whether the actor recovers or abandons the form

Related patterns

Instantiates

  • Status feedback — the persistent, correction-demanding delivery shape of status feedback

Complements

  • Data entry — a forgiving format prevents errors this move would otherwise have to report

Tangentially related

  • Disabled state — disabling submit until the form is valid hides the problem this move exists to explain

Related

  • Editing in place — when the display is the control, the message has to fit beside the value rather than under a labelled field
  • Prompt scaffolding — prompt-quality feedback is validation applied before the request runs

Preceded by

  • Data entry — input that arrived cleanly can still be wrong in ways the control can't catch, so accepting a value and accepting it as correct are separate steps

Hosted by

  • Form — the form is the surface that hosts fieldwise messages and wires them to submission