[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: AuthzSVNAccessFile and collection path syntax

From: Garret Wilson <garret_at_globalmentor.com>
Date: 2005-07-09 15:52:35 CEST

Branko,

Branko Čibej wrote:

> No, Subversion of course does not allow that -- it would translate to
> having a directory and file with the same name in your working copy,
> and I've not seen a single filesystem yet that allows that.
>
Who said anything about file systems? Subversion is (slightly
simplified) a WebDAV extension to provide access to a repository. Sure,
one of its (newer) repository *implementations* uses a file system, but
another one uses a database. The URI is part of the *interface* to the
repository, *logically* identifying a resource.

WebDAV (the interface upon which the Subversion repository interface is
based) has no problem with logically distinguishing between a
/repos/foo/ collection and a /repos/foo non-collection resource. A files
system is simply one (possible) implementation of that interface, and
it's conceivable (I've done it before) that the files system could even
set up some intermediate translation in which directories with the same
name as resources get special name extensions, or even where *all*
directories get a separate name extension. A file system is an
implementation detail, which shouldn't affect what WebDAV/Subversion is
able to represent *logically* in its interface.

Now that I have reread your response, I see that you were talking about
the *client* file system, saying effectively that no one could use this
feature if no client file systems could support it (i.e. no one would
have any clashing files to send). But the same interface vs.
implementation argument stands---why couldn't I have a client database
that uses Subversion as its back-end repository? Or a client RDF data
model with a WebDAV/Subversion back-end?

We're also talking about simultaneity---all file systems can have
/repos/foo/ collection and /repos/foo non-collection, as long as they
aren't simultaneous. Subversion is all about history
(non-simultaneity?), which means that retrieving /repos/foo at different
stages could result in different types of resources (collection or
non-collection), and I'm sure I could think up some scenario where I
wouldn't like the results... ;)

I guess this is important to me, not only for consistency reasons, but
also because I want at some point to use Subversion as a back-end to
some logical data pool (perhaps RDF), where I care about consistency in
URI representation. It's natural (see the references in my previous
post) to make some sort of wish-washy blurring when absolutely necessary
to support buggy WebDAV clients, but internally and throughout it would
be nice if Subversion were rigorous in its resource URI identification
policy.

Cheers,

Garret

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Jul 9 15:53:32 2005

This is an archived mail posted to the Subversion Dev mailing list.