TL; DR
Если применить приведенные ниже спецификации к вашему примеру, Ответ 2 будет правильным. Обновление атрибута eventNotificationCriteria ресурса заменит существующее значение обновленным значением.
TS; WM
Иногда непросто определить, что происходит во время обновления. Если не указано иное, применяется общая процедура, указанная в TS-0001 - Функциональная архитектура, раздел 8.1.2: Запрос применяется:
Обновление (U): содержимое существующего Кому адресуемый ресурс заменяется новым контентом, как в параметре Content. Если некоторые атрибуты в параметре Content не существуют на целевом ресурсе, такие атрибуты создаются с назначенными значениями. Если для некоторых атрибутов параметра Content задано значение NULL, такие атрибуты удаляются из адресуемого ресурса.
И для зависящих от операции параметров:
Update (U): Контент - это контент, который необходимо заменить в существующем ресурсе. Для атрибутов, которые должны обновляться в ресурсе, Content включает имена таких атрибутов с их новыми значениями. Для атрибутов, которые должны быть созданы в ресурсе, Content включает имена таких атрибутов с соответствующими значениями. Для атрибутов, которые должны быть удалены в ресурсе, Content включает в себя имена таких атрибутов с их значением, равным NULL.
Но вы также должны всегда смотреть на TS-0004 - Сервис Протокол ядра уровня . Например, в разделе 7.4.8.2: спецификация ресурса c и очень подробные процедуры для операций CRUD вы найдете подробности для операций CRUD на ресурсах.
Обновление
Я думаю, что дальнейшее обсуждение оправдано, чтобы подчеркнуть, что причина # 1 неверна, потому что en c является сложным атрибутом. Поскольку все эти значения являются частью одного атрибута, применяется упомянутое правило. Если выполняется аналогичная операция обновления с простыми атрибутами, тогда «объединение» атрибутов является правильным, аналогично ответу № 1.