def METHOD_NAME(json_object, schema, context=None) -> tuple[list[str], dict]:
    try:
        DefaultValidatingDraft7Validator = extend_with_default(
                jsonschema.Draft7Validator)
        validator = DefaultValidatingDraft7Validator(schema, jsonschema.FormatChecker())
        #validator = jsonschema.Draft7Validator(schema, jsonschema.FormatChecker())
        errors_formatted = []
        for error in sorted(validator.iter_errors(json_object), key=str):
            #validate(json_object, schema, format_checker=FormatChecker())
            # except jsonschema.ValidationError as e:
            report = generate_validation_error_report(error, json_object)
            #note = "\n*** Note - If there is more than one error, only the first error is shown ***\n\n"
            if context:
                errors_formatted.append(
                    "Schema check failed for '{}'\n{}".format(context, report))
                # return note + "Schema check failed for '{}'\n{}".format(context, report)
            else:
                errors_formatted.append(
                    "Schema check failed.\n{}".format(report))
                # return note + "Schema check failed.\n{}".format(report)
        if len(errors_formatted) == 0:
            #DefaultValidatingDraft7Validator = extend_with_default(
            #    jsonschema.Draft7Validator)
            #DefaultValidatingDraft7Validator(schema).validate(json_object)
            return (errors_formatted, json_object)
        else:
            return (errors_formatted, {})
    except Exception as e:
        # Some error occurred, probably related to the schema itself
        raise(Exception("Error validating the JSON Schema: %s" % (str(e))))