docs: private Map<String, Set<String>> getSourceProperties(ModelDescription description) {
          Map<String, Set<String>> result = new LinkedHashMap<String, Set<String>>();
          try {
              Class<?> sourceModel = registry.loadModel(description);
              while (sourceModel != null && !sourceModel.equals(Object.class)) {
                  for (Field field : sourceModel.getDeclaredFields()) {
                      result.put(field.getName(), new HashSet<String>());
                  }
                  sourceModel = sourceModel.getSuperclass();
              }
          } catch (ClassNotFoundException e) {
              LOGGER.error("Unable to load model {}", description);
              return result;
          }
          return result;
      }