Re: Fwd: New Version Notification for draft-toomim-httpbis-versions-02.txt

Julian brings up an important deep distinction here:

On 10/31/24 11:35 PM, Julian Reschke wrote:
> A version *is* an HTTP resource. It has content; it has metadata, it can
> be retrieved with GET.
>
> It seems we need to work on terminology: version-controlled resources
> (aka versioned resources, mutable), and their versions (snapshots, in
> general immutable). All of these are HTTP resources, because you can
> interact with them using HTTP. 


Let me phrase this as a question:

    What's the relationship between *versions* and *resources*?

I believe we agree that a resource *has* versions, because a resource 
changes its state over time, and each state can be identified with (or 
as) a version.

We also agree that a version *can* be served *as* a resource, as this 
occurs e.g. whenever I make a "index2.html" file.

However, I disagree that a version *necessarily is* a resource. Julian 
argues that a version is an HTTP resource because you can interact with 
it using HTTP. However, I don't think that being able to interact with 
something over HTTP is enough to make it a resource. If my resource /foo 
has two representations (one in HTML, and one in text/plain), then I can 
interact with those representations over HTTP, but that doesn't make 
each representation a separate resource. Likewise, I think a resource 
can have multiple versions, and those versions do not necessarily need 
to be their own resources.

This semantic distinction seems to be at the root of our different 
perspectives on the versions-02 draft.

Thoughts?

Received on Friday, 1 November 2024 22:09:12 UTC