'Coerce values according to their explicit type'

def set_value_explicit(self, value=None, data_type=TYPE_STRING):

    type_coercion_map = {self.TYPE_INLINE: self.check_string, self.TYPE_STRING: self.check_string, self.TYPE_FORMULA: str, self.TYPE_NUMERIC: self.check_numeric, self.TYPE_BOOL: bool}
    try:
        self._value = type_coercion_map[data_type](value)
    except KeyError:
        if (data_type not in self.VALID_TYPES):
            msg = ('Invalid    data    type:    %s' % data_type)
            raise DataTypeException(msg)
    self._data_type = data_type
