Glossary
Glossary Component Schema

Component Schema

Also known as: component contract, component contracts, component schemas, contract, the unit
Design SystemCWDS

Definitions

The Core's record of what one reusable component is — its kind, variants, shape, scope-keyed props and states, constraints, detection hints, accessibility contract and Component Token Contract — independent of any brand or rendering technology

The Agentic DS draft's word, adopted as the shared vocabulary on 2026-09-24. It is prescriptive: it says what a component may do, and every adapter is built from it. Since 2026-09-30 its content section is shape (formerly slots), and props and states are keyed by scope (component, or the singular of a repeating array in the shape). Its content model is a separate file with a different audience, and each field carries a governance tier. Tokens feed it, and patterns compose it.

Design System

The record cwds keeps for one reusable thing — intent, anatomy, token contract, content model — with references to its realizations and never their definitions

cwds's own word, named by ADR-0015 (2026-09-18); a cwds record dated before that says Pattern and means this. It is evidential where a Component Schema is prescriptive. It carries what the estate was observed to do, with provenance, occurrence counts and a corpus, plus the obligations held against those observations. It embeds its content model, and its token contract names semantics only. It is the evidence a Component Schema can be drafted from or checked against, not the same record under another name. Until 2026-09-24 this glossary made Component Contract the primary name, ahead of the sync. That changed once the draft's scope was set against the record's.

CWDS

What a component is, written once, so that every platform's copy can be built from it and checked against it. In the shared vocabulary that record is a Component Schema. In cwds it is a Component Contract: the record of what the estate actually does, which the schema can be drafted from and measured against. Three sources feed the cwds record, and none ranks the others: the authored IVY dialog, the production specimens with their counts, and the Figma node with the date it was read.

The chain

Component Schema → AEM Component, EDS Block, Figma component, and every other adapter's realization. Where an Element exists it sits between, and the realizations are converted from it. Where none does, the schema's anatomy and token contract are what each realization is held to. Two or more schemas composed under rules a single one cannot express — ordering, regulatory sequencing — are a Pattern.

Avoid: Pattern for this record — since 2026-09-18 that word names the composition. Bare Component when you mean the record. Component Contract for the shared Core's record: that is cwds's word, for a record that carries evidence the schema does not.

Kind

The Agentic DS draft classifies every Component Schema with a kind decided by two questions: does it have an open composition slot, and does it have state of its own?

KindOpen slot?Own state?Examples
contentNoNoimage, rich text, title
widgetNoYesbutton, slider, video player
containerYesNocolumns, grid, section
compositeYesYesaccordion, tabs, carousel

kind drives nesting: statefulAllows and the depth count. It does not describe focus. Two of the names come from the APG, and neither promises the APG's keyboard model. Whether a schema takes one tab stop or several follows from its a11y.pattern.

Related Terms

  • a: Appearance
  • ?: Keyboard shortcuts