code: public void checkFamily(final Family family) {
          final LocalDate familyDate = analyzeDates(family);
          final LocalDate seenDate = earliestDate(seenFamily);
          if (seenDate == null) {
              if (familyDate != null) {
                  seenFamily = family;
              }
          } else {
              if (familyDate != null) {
                  if (familyDate.isBefore(seenDate)) {
                      final Person spouse = (new FamilyNavigator(family))
                              .getSpouse(person);
                      final Person seenSpouse = (new FamilyNavigator(seenFamily))
                              .getSpouse(person);
                      final String message = String.format(
                              "Family order: family with spouse %s (%s) is after "
                              + "family with spouse %s (%s)",
                              spouse.getName().getString(),
                              familyDate.toString(),
                              seenSpouse.getName().getString(),
                              seenDate.toString());
                      getResult().addMismatch(message);
                  }
                  seenFamily = family;
              }
          }
      }
docs: Check this family for internal order and relative
  order to the other families for this person.
  
  @param family the family to check