Cascade
The xtyle cascading model defines how definitions inherit from parents and how hierarchies emerge — top-down or bottom-up.
Hierarchy is User-Defined
Section titled “Hierarchy is User-Defined”The spec doesn’t prescribe what nodes represent. A node is a xtyle definition with an optional parent and optional children. What those nodes mean is up to you:
- Leagues and teams
- Companies, divisions, and products
- A personal creative identity and its projects
Inheritance Rules
Section titled “Inheritance Rules”- A child inherits everything from its parent that it doesn’t explicitly override.
- Overrides are per-token, not per-pillar. Override one color without touching the rest.
- Absence is not an override. If a child doesn’t define a token, it inherits. Setting a token to
nullis an intentional override. - The cascade is arbitrarily deep.
Bottom-Up Derivation
Section titled “Bottom-Up Derivation”The distinctive feature. You don’t have to build top-down.
Start with Team A (red, bold voice) and Team B (blue, bold voice). Step back — what do they share? A league xtyle emerges: it mandates the bold voice and the shared font, but leaves colors to the teams.
Once the parent exists, new teams inherit from it while existing teams keep their overrides. The parent can be re-derived as teams evolve.
Context Variants
Section titled “Context Variants”Orthogonal to the hierarchy, any node can define context-specific variants:
- Dark mode / light mode
- Print vs. screen
- Mobile vs. desktop
- Seasonal or event-specific
Variants override tokens within a single node. They can span pillars — a “match-day” variant can override both visual colors and verbal taglines.