Aggregate value types.
Primitive value types.
Reference types.
Second-class types.
Value types are either primitive or aggregate.
The names of the product elements
The name of the type