tl; dr : все в порядке, чтобы назначить etags ресурсу, который содержит «коллекцию», но это приложение должно управлять идентификацией / изменением элементов в этой коллекции при определении действительногоetag.
Ресурс в архитектурном стиле REST не подразумевает, что это отдельный элемент или коллекция.Он просто представляет состояние приложения в заданной точке рабочего процесса.Ресурс будет содержать описательные данные и, надеюсь, ссылки на возможные последующие шаги в этой точке рабочего процесса.Рабочий процесс может быть таким же простым, как получение статуса заказа, или сложным, как оформление заказа на сайте электронной коммерции с возможностью отмены заказа.
etag - это механизм определения того,конкретное состояние (ресурс) актуально или нет.Назначение etag ресурсу, который возвращает коллекцию данных, означает, что ваше приложение идентифицирует это состояние элементов коллекции в этой точке, и если что-либо в этих элементах изменится, предыдущее значение etag больше не будет действительным.Ваше приложение должно решить, когда элементы коллекции изменятся и как идентифицировать отдельные элементы.Другими словами, etags применяются к ресурсам, но не к отдельным компонентам данного ресурса.