draft-toomim-httpbis-versions
HTTP Resource Versioning
HTTP resources change over time. Each change to a resource creates a
new "version" of its state. HTTP systems often need a way to
identify, read, write, navigate, and/or merge these versions, in
order to implement cache consistency, create history archives, settle
race conditions, request incremental updates to resources, interpret
incremental updates to versions, or implement distributed
collaborative editing algorithms.
This document analyzes existing methods of versioning in HTTP,
highlights limitations, and specifies a more general versioning
approach that can enable new use-cases for HTTP. An upgrade path for
legacy intermediaries is provided.