The unit of data in PSPP is a value.
Values are classified by type and width. The
type of a value is either numeric or string (sometimes
called alphanumeric). The width of a string value ranges from 1 to
MAX_STRING bytes. The width of a numeric value is artificially
defined to be 0; thus, the type of a value can be inferred from its
Some support is provided for working with value types and widths, in data/val-type.h:
Returns true if val_type is a valid value type, that is, either
VAL_STRING. Useful for assertions.
VAL_NUMERICif width is 0 and thus represents the width of a numeric value, otherwise
VAL_STRINGto indicate that width is the width of a string value.
The following subsections describe how values of each type are represented.