float lon(timeSeries) ; //........................................ Depending on the precision used for the variable, the data type could be int or double instead of float.
            lon:long_name = "" ; //...................................... RECOMMENDED
            lon:standard_name = "longitude" ; //......................... REQUIRED    - This is fixed, do not change.
            lon:units = "degrees_east" ; //.............................. REQUIRED    - CF recommends degrees_east, but at least use UDUNITS.
            lon:axis = "X" ; //.......................................... REQUIRED    - Do not change.
            lon:valid_min = 0.0f ; //.................................... RECOMMENDED - Replace this with correct value.
            lon:valid_max = 0.0f ; //.................................... RECOMMENDED - Replace this with correct value.
            lon:_FillValue = 0.0f;//..................................... REQUIRED  if there could be missing values in the data.
            lon:ancillary_variables = "" ; //............................ RECOMMENDED - List other variables providing information about this variable.
            lon:comment = "" ; //........................................ RECOMMENDED - Add useful, additional information here.

def check_lon(self, dataset):
        '''
        float lon(timeSeries) ; //........................................ Depending on the precision used for the variable, the data type could be int or double instead of float.
            lon:long_name = "" ; //...................................... RECOMMENDED
            lon:standard_name = "longitude" ; //......................... REQUIRED    - This is fixed, do not change.
            lon:units = "degrees_east" ; //.............................. REQUIRED    - CF recommends degrees_east, but at least use UDUNITS.
            lon:axis = "X" ; //.......................................... REQUIRED    - Do not change.
            lon:valid_min = 0.0f ; //.................................... RECOMMENDED - Replace this with correct value.
            lon:valid_max = 0.0f ; //.................................... RECOMMENDED - Replace this with correct value.
            lon:_FillValue = 0.0f;//..................................... REQUIRED  if there could be missing values in the data.
            lon:ancillary_variables = "" ; //............................ RECOMMENDED - List other variables providing information about this variable.
            lon:comment = "" ; //........................................ RECOMMENDED - Add useful, additional information here.
        '''
        results = []
        lon = util.get_lon_variable(dataset)
        if not lon:
            return Result(BaseCheck.HIGH, False, 'longitude', ['a variable for longitude doesn\'t exist'])
        lon_var = dataset.variables[lon]
        test_ctx = TestCtx(BaseCheck.HIGH, 'Required attributes for variable {}'.format(lon))
        test_ctx.assert_true(getattr(lon_var, 'standard_name', '') == 'longitude', 'standard_name attribute must be longitude')
        units = getattr(lon_var, 'units', '')
        test_ctx.assert_true(units and units_convertible(units, 'degrees_east'), 'units are valid UDUNITS for longitude')
        test_ctx.assert_true(getattr(lon_var, 'axis', '') == 'X', '{} axis attribute must be X'.format(lon))

        results.append(test_ctx.to_result())

        test_ctx = TestCtx(BaseCheck.MEDIUM, 'Recommended attributes for variable {}'.format(lon))
        test_ctx.assert_true(getattr(lon_var, 'long_name', '') != '', 'long_name attribute should exist and not be empty')
        self._check_min_max_range(lon_var, test_ctx)

        if hasattr(lon_var, 'comment'):
            test_ctx.assert_true(getattr(lon_var, 'comment', '') != '', 'comment attribute should not be empty if specified')
        test_ctx.assert_true(units == 'degrees_east', '{} should have units degrees_east'.format(lon))
        results.append(test_ctx.to_result())
        return results