Type Definitions (TypeDefinitions.xsd) are constrained variants of a primitive datatype whose allowed values must meet some predefined rules
Exactly what is a type definition is a bit subjective because it is generally up to the data modeller to make the decision between what is a Value-Type and what is an Entity-Type.
For example in some contexts an Address (House Number, Street, Town, Postcode) may be declared as a composite datatype where the value of each Address is recorded against the Addressable Entity but in another context the Address (where there are details to be gathered about the Address itself) it could be a defined referenced Business Entity instead.
However, even allowing for some fuzziness at the boundary, a general rule of thumb is that a Type Definition is a data-item that is generally defined outside of the domain and it is not within the domains authority to extend or redefine. There is also only ever one definition in force at any time.