code: private Set<String> getTheMissingFields(Set<String> locatedTargets) {
          Set<String> missing = new HashSet<>();
          for (String target : getNeeded()) {
              if (!locatedTargets.contains(target)) {
                  // Handle wildcard targets differently
                  if (target.endsWith("*")) {
                      if (target.endsWith(".*")) {
                          if (!locatedTargets.contains(target.substring(0, target.length() - 2))) {
                              missing.add(target);
                          }
                      }
                      // Else: it ends with :* and it is always "present".
                  } else {
                      missing.add(target);
                  }
              }
          }
          return missing;
      }
docs: --------------------------------------------