Models
A model describes the shape of a kind of data — a type. It belongs to a schema and is made of properties.
Properties
Each property has:
- A name (e.g.
email,birthDate,totalAmount). - A type — string, localized string (a separate value per language), integer, decimal, boolean, datetime, reference to another model, or a collection of any of those.
- A description that explains the meaning of the property to humans and to AI agents.
- An optional default value.
- Optionally, an expression that makes the property virtual (computed at read time from other properties).
For text that end users read and that should change with the interface language — names, titles, labels — use a Localized String instead of a plain string (see Localized String).
Constraints
Beyond the basic type, properties can carry constraints:
- Display — order, visibility, read-only flag, layout
flex, grouping into sections. - String constraints — minimum and maximum length, regex patterns.
- Integer constraints — minimum and maximum values.
- Datetime constraints — earliest and latest allowed times.
- Reference constraints — which model a reference points to, cardinality (1..1, 1..N, N..N).
- Collection constraints — minimum and maximum element count.
These constraints power the auto-generated forms and the per-model help page (see Schemas & Models on the left).
Versioning
Models can be versioned. Yellow keeps a history of changes so old instances stay readable even after the model evolves.