Shapes are used to model structures and member types. If they are a structure the shape defines what members it has and what shape those members are. It also defines which of those members are required. If it is not a structure then it is used to specify the type of the member and its properties.