Part V: Nominal Types
This part first introduces the nominal type constructors: value types, entity types, enum types, variant types, and quotient types. Later chapters describe features shared across those constructors, such as attributes, parameterised attributes, derived attributes, keys, embedding, generics, ordering, and constraints.
Subtyping is treated separately in the Subtypes part.