code: @Override
  	public String getErrorMessage() {
  		String errorMessage = super.getErrorMessage();
  
  		if (!Util.empty(errorMessage)) {
  			return errorMessage;
  		}
  
  		if (variablePivot == null && fixedPivot == null) {
  			switch (operator) {
  				case BEFORE:
  					return InternalMessages.DEFAULT_VALIDATION_ERROR_DATE_BEFORE_TODAY;
  				case BEFORE_OR_EQUAL:
  					return InternalMessages.DEFAULT_VALIDATION_ERROR_DATE_BEFORE_OR_EQUAL_TODAY;
  				case EQUAL:
  					return InternalMessages.DEFAULT_VALIDATION_ERROR_DATE_EQUAL_TODAY;
  				case AFTER_OR_EQUAL:
  					return InternalMessages.DEFAULT_VALIDATION_ERROR_DATE_AFTER_OR_EQUAL_TODAY;
  				case AFTER:
  					return InternalMessages.DEFAULT_VALIDATION_ERROR_DATE_AFTER_TODAY;
  
  				default:
  					throw new SystemException("Unknown operator. [" + operator + "]");
  			}
  		} else {
  			switch (operator) {
  				case BEFORE:
  					return InternalMessages.DEFAULT_VALIDATION_ERROR_DATE_BEFORE;
  				case BEFORE_OR_EQUAL:
  					return InternalMessages.DEFAULT_VALIDATION_ERROR_DATE_BEFORE_OR_EQUAL;
  				case EQUAL:
  					return InternalMessages.DEFAULT_VALIDATION_ERROR_DATE_EQUAL;
  				case AFTER_OR_EQUAL:
  					return InternalMessages.DEFAULT_VALIDATION_ERROR_DATE_AFTER_OR_EQUAL;
  				case AFTER:
  					return InternalMessages.DEFAULT_VALIDATION_ERROR_DATE_AFTER;
  				default:
  					throw new SystemException("Unknown operator. [" + operator + "]");
  			}
  		}
  	}
docs: {@inheritDoc}