Verbo HTTP MODIFY para REST?

Por lo que veo, no hay una forma REST completa de aplicar una modificación a un recurso. Para hacerlo, debe PONER el recurso en su totalidad, sobrescribiendo la representación anterior. Creo que esto es fuente de problemas, en particular cuando el recurso tiene una gran representación.

Creo que esto sugiere la falta de un verbo en HTTP1.1: algo como MODIFY, o PATCH. Ni siquiera WebDAV tiene este verbo (tiene PROPPATCH, cuyo concepto es similar, pero no para los recursos).

¿No es el conjunto actual de verbos HTTP 1.1 demasiado limitado para el RESTing del mundo real?

Editar: Encontré una propuesta en IETF sobre el verbo PATCH

http://tools.ietf.org/html/draft-dusseault-http-patch-15

Esta especificación define el nuevo PATCH de método HTTP / 1.1 [RFC2616] que se utiliza para aplicar modificaciones parciales a un recurso.

Es necesario un nuevo método para mejorar la interoperabilidad y evitar errores. El método PUT ya está definido para sobrescribir un recurso con un nuevo cuerpo completo y no se puede reutilizar para hacer cambios parciales. De lo contrario, los servidores proxy y los cachés e incluso los clientes y servidores pueden confundirse en cuanto al resultado de la operación. PATCH se mencionó en las especificaciones HTTP anteriores, pero no se definió completamente.

Por lo que veo, el único problema de tal verbo es la falta de idempotencia.

Editar: A partir de marzo de 2010, RFC 5789 existe (Método PATCH para HTTP).

Respuestas a la pregunta(4)

Su respuesta a la pregunta