/**
  * Check values of the form
  *
  * @param parameters the parameters of the filter
  * @param col the target column
  * @return true if values agree
  */
 private boolean checkValues(String[] parameters, Column col) {
   String[] values = Arrays.copyOfRange(parameters, VALUES, VALUES + NUMBER_OF_VALUES);
   if (values.length == NUMBER_OF_VALUES) {
     Number value1;
     Number value2;
     try {
       value1 = new BigDecimal(values[0]);
       value2 = new BigDecimal(values[1]);
     } catch (NumberFormatException e) {
       throw new ResourceException(
           Status.CLIENT_ERROR_BAD_REQUEST, "Not numeric value entered", e);
     }
     if (parameters.length == DIMENSION + 2) {
       // get dimension, if exists
       String dimension = parameters[DIMENSION];
       // get unit, if exists
       String unit = parameters[UNIT];
       try {
         if (col.getUnit() == null) {
           throw new ResourceException(
               Status.CLIENT_ERROR_BAD_REQUEST,
               "The column asked has no unit, it cannot be converted");
         }
         value1 = convert(unit, col.getUnit().getUnitName(), values[0], dimension);
         value2 = convert(unit, col.getUnit().getUnitName(), values[1], dimension);
       } catch (SitoolsException e) {
         throw new ResourceException(Status.CLIENT_ERROR_BAD_REQUEST, e.getMessage(), e);
       }
     }
     if (value1 != null && value2 != null) {
       numericBetween = new NumericBetweenSelection(value1, value2);
       return true;
     }
   }
   return false;
 }