@Override
  public List<String> validateResponseAttributes(
      List<FeedbackResponseAttributes> responses, int numRecipients) {
    if (responses.isEmpty()) {
      return new ArrayList<String>();
    }

    if (areDuplicatesAllowed) {
      return new ArrayList<String>();
    } else {
      List<String> errors = new ArrayList<>();

      for (FeedbackResponseAttributes response : responses) {
        FeedbackRankOptionsResponseDetails frd =
            (FeedbackRankOptionsResponseDetails) response.getResponseDetails();
        Set<Integer> responseRank = new HashSet<>();

        for (int answer : frd.getFilteredSortedAnswerList()) {
          if (responseRank.contains(answer)) {
            errors.add("Duplicate rank " + answer);
          }
          responseRank.add(answer);
        }
      }

      return errors;
    }
  }