refer to the different kinds of data that a variable may hold in a programming language.
refer to the classification of values that are to be continued in a variable; vary from one language to another; have specifications and limitations
used to represent common pieces of data