@Override
  public ProblemDescriptor @Nullable [] checkFile(@NotNull PsiFile file, @NotNull InspectionManager manager, boolean isOnTheFly) {
    if (file instanceof XmlFile && file.isPhysical()) {
      DomManager domManager = DomManager.getDomManager(file.getProject());
      DomFileElement<MavenDomProjectModel> model = domManager.getFileElement((XmlFile)file, MavenDomProjectModel.class);


      if (model != null) {
        boolean maven35 = isMaven35OrMore(file);
        List<ProblemDescriptor> problems = new ArrayList<>(3);

        MavenDomParent mavenParent = model.getRootElement().getMavenParent();
        validate(manager, isOnTheFly, maven35, problems, mavenParent.getGroupId());
        validate(manager, isOnTheFly, maven35, problems, mavenParent.getArtifactId());
        validate(manager, isOnTheFly, maven35, problems, mavenParent.getVersion());

        if (problems.isEmpty()) return ProblemDescriptor.EMPTY_ARRAY;
        return problems.toArray(ProblemDescriptor.EMPTY_ARRAY);
      }
    }

    return null;
  }
@Override
  public ProblemDescriptor @Nullable [] checkFile(@NotNull PsiFile file, @NotNull InspectionManager manager, boolean isOnTheFly)