@Override
        public String toMessageString() {
            String str = messageString;
            if (str == null) {
                // Returns a comma separated (with a space), sorted list of each flattened
                // value's debug string.
                str = getFlattenedValues().stream()
                        .map(AttributeValue::toMessageString)
                        .sorted()
                        .collect(Collectors.joining(", ", "[", "]"));
                messageString = str;
            }
            return str;
        }
A projected attribute value that matches N values contained within it.

<p>Projections wrap other values and match if any contained value matches,
are only considered present if there are 1 or more values, and return
new projections based on properties contained within the projection.
smithy-model/src/main/java/software/amazon/smithy/model/selector/AttributeValueImpl.java