<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def info(self):
 """Retrieves information about the dataset. Args:: no argument Returns:: 5-element tuple holding: - dataset name - dataset rank (number of dimensions) - dataset shape, that is a list giving the length of each dataset dimension; if the first dimension is unlimited, then the first value of the list gives the current length of the unlimited dimension - data type (one of the SDC.xxx values) - number of attributes defined for the dataset C library equivalent : SDgetinfo """


        buf = _C.array_int32(_C.H4_MAX_VAR_DIMS)
        status, sds_name, rank, data_type, n_attrs = \
                _C.SDgetinfo(self._id, buf)
        _checkErr('info', status, "cannot execute")
        dim_sizes = _array_to_ret(buf, rank)
        return sds_name, rank, dim_sizes, data_type, n_attrs