code: protected void performValidation(String path, Object value, List<ValidationResult> results) {
  		String name = path != null ? path : "value";
  
  		if (value == null) {
  			// Check for required values
  			if (_required)
  				results.add(new ValidationResult(path, ValidationResultType.Error, "VALUE_IS_NULL",
  						name + " cannot be null", "NOT NULL", null));
  		} else {
  			value = ObjectReader.getValue(value);
  
  			// Check validation rules
  			if (_rules != null) {
  				for (IValidationRule rule : _rules)
  					rule.validate(path, this, value, results);
  			}
  		}
  	}
docs: Validates a given value against the schema and configured validation rules.
  
  @param path    a dot notation path to the value.
  @param value   a value to be validated.
  @param results a list with validation results to add new results.