class ValidationViolation extends ValidationMessage {

    public static final Collection<ValidationViolation> wrapMessages(String validatorId, Collection<? extends ValidationMessage> messages, Path filePath, Path basePath, String nodePath, int line, int column) {
        Collection<ValidationViolation> violations = new LinkedList<>();
        for (ValidationMessage message : messages) {
            violations.add(wrapMessage(validatorId, message, filePath, basePath, nodePath, line, column));
        }
        return violations;
    }

      ValidationViolation(String validatorId, ValidationMessage message, Path filePath, Path basePath, String nodePath, int line, int column, Throwable t);
    private  ValidationViolation(String validatorId, ValidationMessage message);
    public  ValidationViolation(String validatorId, @NotNull ValidationMessageSeverity severity, @NotNull String message);
    public  ValidationViolation(@NotNull ValidationMessageSeverity severity, @NotNull String message);
    public  ValidationViolation(@NotNull ValidationMessageSeverity severity, @NotNull String message, Path filePath, Path basePath, String nodePath, int line, int column, Throwable t);
    public  ValidationViolation(String validatorId, @NotNull ValidationMessageSeverity severity, @NotNull String message, Path filePath, Path basePath, String nodePath, int line, int column, Throwable t);

}