Defines the DataValue interface and some trivial implementations