| But wait ... the relative URL in A.html will try to get the 2.1 version of | logo.gif, which doesn't exist! Assuming you mean that the version=2.1 | really refers to a collection of resources, I'll assume you can add a | symbolic link to version 2.0 of logo.gif into the version=2.1 collection. | At this point, let me introduce resource C.html, which, like A.html, has | three versions, 1.0, 2.0 and 2.1. As you might imagine, C.html also | includes logo.gif, but C.html is an older page which has not been updated | recently, and hence includes logo.gif version 1.0. So the URL for C.html | is: | | http://foo.bar.com/top/version=2.1/C.html | | Utilizing the solution of adding a symbolic link to logo.gif, version 1.0 | into collection "version=2.1", we suddenly realize that a symbolic link to | logo.gif already exists (left over from adding the link to version 2.0 of | logo.gif for A.html version 2.1). This is a problem. Your examples are confusing versions (generically) and revision numbers. Revisions are usually file-specific. That is, each file has its own independent revision space. Versions are more generic, and include symbolic labels (the example I used) which occupy a separate namespace from revisions. Thus http://foo.bar.com/version=best/A.html http://foo.bar.com/version=best/B.html May get revision 2.1 of A.html and 2.0 of B.html. Surfing works. | I strongly feel the text/config MIME type approach is the best one for | handling browsing of collections of versioned objects. But not in version-unaware clients! Christopher