public void reduceRedundantMemberAttributes(List<ObjectNode> jsonSchemas, ObjectNode definitionsNode, String referenceKeyPrefix) {
        final Map<String, Map<String, JsonNode>> definitions = new HashMap<>();
        for (Iterator<Map.Entry<String, JsonNode>> defIt = definitionsNode.fields(); defIt.hasNext(); ) {
            Map.Entry<String, JsonNode> definition = defIt.next();
            Map<String, JsonNode> attributes = new HashMap<>();
            for (Iterator<Map.Entry<String, JsonNode>> attIt = definition.getValue().fields(); attIt.hasNext(); ) {
                Map.Entry<String, JsonNode> attriibute = attIt.next();
                attributes.put(attriibute.getKey(), attriibute.getValue());
            }
            definitions.put(referenceKeyPrefix + definition.getKey(), attributes);
        }
        final String propertiesKeyword = this.config.getKeyword(SchemaKeyword.TAG_PROPERTIES);
        final String refKeyWord = this.config.getKeyword(SchemaKeyword.TAG_REF);
        this.finaliseSchemaParts(jsonSchemas,
                nodeToCheck -> this.reduceRedundantMemberAttributesIfPossible(nodeToCheck, propertiesKeyword, refKeyWord, definitions));
    }
Discard attributes on member schemas, that also reference an entry in the common definitions, which contains those exact same attributes.

@param jsonSchemas generated schemas that may contain redundant attributes in nested object member schemas
@param definitionsNode object node containing common schema definitions
@param referenceKeyPrefix designated prefix to the entries in the returned definitions node (i.e., on {@link SchemaKeyword#TAG_REF} values)
jsonschema-generator/src/main/java/com/github/victools/jsonschema/generator/impl/SchemaCleanUpUtils.java