private void configurePropertiesForObjectSchema(JsonNode rawProperties, ObjectSchema schema, URL schemaLocation) {
        if (rawProperties == null) {
            return;
        }

        for (Iterator<String> iterator = rawProperties.fieldNames(); iterator.hasNext();) {
            String fieldName = iterator.next();

            Property property = new Property();
            property.setName(fieldName);
            
            JsonNode nestedSchema = rawProperties.get(fieldName);
            property.setNestedSchema(parse(nestedSchema, schemaLocation));

            JsonNode required = nestedSchema.get("required");
            if (required != null) {
                property.setRequired(required.booleanValue());
            }
            
            schema.getProperties().add(property);
        }
    }