The attribute type defines the type of information that the attribute can store.
The attribute definition can set further parameters for the attribute. For example, the attribute definition can provide default values, or restrict the range of values that can be stored. The attribute definition also defines whether the attribute is a module attribute, an object attribute, or both.
The attribute value is the value of the attribute for the object or for the module. For object attributes, each object in the module can have a different attribute value, within the parameters defined by the attribute type and the attribute definition. For module attributes, the attribute is displayed in the module properties, and the value of the attribute applies to the whole module.