private ValidationEvent createRemovedEvent(String typeOfRemoval, EntityShape parentEntity, ShapeId childShape) {
        String childType = typeOfRemoval.equals(REMOVED_RESOURCE) ? "Resource" : "Operation";
        String typeOfParentShape = ShapeType.RESOURCE.equals(parentEntity.getType()) ? FROM_RESOURCE : FROM_SERVICE;
        String message = String.format(
                "%s binding of `%s` was removed from %s shape, `%s`",
                childType,
                childShape,
                parentEntity.getType(),
                parentEntity.getId());
        return ValidationEvent.builder()
                .id(typeOfRemoval + typeOfParentShape + childShape.getName())
                .severity(Severity.ERROR)
                .shape(parentEntity)
                .message(message)
                .build();
    }
A meta-validator that checks for the removal of an operation or
resource binding from a service or resource.

<p>A "RemovedOperationBinding" eventId is used when an operation is
removed, and a "RemovedResourceBinding" eventId is used when a
resource is removed.
smithy-diff/src/main/java/software/amazon/smithy/diff/evaluators/RemovedEntityBinding.java