private Optional<ValidationEvent> tooMuch(Collection<String> names, Shape shape, ArnTrait trait) {
        Set<String> templateCheck = new HashSet<>(trait.getLabels());
        templateCheck.removeAll(names);
        if (!templateCheck.isEmpty()) {
            return Optional.of(error(shape,
                    trait,
                    String.format(
                            "Invalid aws.api#arn trait resource, `%s`. Found template labels in the trait "
                                    + "that are not the names of the identifiers of the resource: %s. Extraneous identifiers: [%s]",
                            trait.getTemplate(),
                            names,
                            tickedList(templateCheck))));
        }
        return Optional.empty();
    }
Ensures that all arn traits for a service are valid and that their templates
only reference valid resource identifiers.
smithy-aws-traits/src/main/java/software/amazon/smithy/aws/traits/ArnTemplateValidator.java