From: Tim_Ellison@oti.com (Tim Ellison OTT) To: jvasta@rational.com (Vasta, John) Cc: ietf-dav-versioning@w3.org (ietf-dav-versioning) Message-ID: <2000Feb24.110739.1250.1487452@otismtp.ott.oti.com> Date: Thu, 24 Feb 2000 11:08:33 -0500 Subject: RE: Enumerating repositories and worksp spoken quietly: Actually, I'm in favour of removing repositories from the spec., but then again I'm not implementing on a repository that requires them. Tim ---------- >From: Vasta, John >To: 'jamsden@us.ibm.com' >Cc: ietf-dav-versioning >Subject: RE: Enumerating repositories and worksp >Date: Thursday, February 24, 2000 10:43AM > >Jim, > >This isn't the same problem I was trying to describe. I'm talking about the >problem that developers of DAV clients will have trying to create software >which will interoperate both with servers that have constraints on resource >locations, and servers which don't. I am not talking about the user of those >clients. > >The current draft Delta-V document allows for servers to have constraints, >because real versioning systems in existence today do, and it would not be >possible to implement the protocol on top of those systems (at least, not >efficiently) unless the protocol models those constraints. When you wrote "I >think there shouldn't be any repository", do you really mean that you >advocate removing all the repository language in the current draft? Since I >hadn't seen any comments like that before, I assumed the repository part of >the draft was generally accepted by everyone. Without it, I'm at a loss as >to how to implement the protocol on top of systems for which repositories >are a fundamental feature of their architectures. > >John > >> -----Original Message----- >> From: jamsden@us.ibm.com [mailto:jamsden@us.ibm.com] >> Sent: Wednesday, February 23, 2000 3:07 PM >> To: ietf-dav-versioning@w3.org >> Subject: Re: Enumerating repositories and workspaces >> >> >> >> >> >> >> John, >> Responses below in <jra> tags. >> |------------------------+------------------------> >> | | "Vasta, John" | >> | | <jvasta@rational.com>| >> | | Sent by: | >> | | ietf-dav-versioning-r| >> | | equest@w3.org | >> | | | >> | | 02/22/2000 11:41 AM | >> | | | >> |------------------------+------------------------> >> >------------------------| >> | | >> | á á á á To: | >> | ietf-dav-versioning@w| >> | 3.org | >> | á á á á cc: | >> | á á á á Subject: | >> | Enumerating | >> | repositories and | >> | workspaces | >> >------------------------| >> >> >> >> >> >> >> >> There seems to be no way for a client to discover all the >> repositories and >> workspaces known to a server. I think a client interface >> would need this >> capability in order to support these kinds of use cases: >> >> 1. A user wants to edit a resource, or add a new resource. The client >> interface would like to provide a file browser kind of view >> for the user to >> select a resource to work on, or a location to work in. If the server >> constrains resources to be contained in repositories, how >> does the client >> discover what all the possible repositories are? >> <jra> >> This is a general problem. If a user wants to edit a resource >> that does X, >> how does he know where it is? The answer is someone tells him the >> organization of the Web project, and he browses the >> collection hierarchy >> with that knowledge to find the desired resource. Just like >> we all use file >> systems. Putting one resource type in a special place only invites the >> desire to put any other resource type in some special known place, and >> we're right back where we started. The only reason WebDAV >> should specify >> anything is if the information is required for its own use, >> or if there is >> some interoperability opportunity that would be lost without it. We've >> intentionally tried to avoid casting policy decisions into >> the protocol in >> favor of mechanisms that can support many policies. Interoperability >> happens at the mechanism, not the policy. If policies become >> popular in >> their own right, clients may be developed to expect them. This could >> introduce an interoperability problem, but attempting to determine all >> possible policies that should be supported is a much greater problem. >> </jra> >> >> 2. A user is working on multiple projects, each in its own >> workspace. When >> starting a client authoring tool, the tool will want to ask >> the user which >> workspace to work in. In this case, not only does it seem desirable to >> enumerate the workspaces known to the server, but also to >> identify which >> workspaces "belong" to a particular user. >> <jra> >> Same problem as above. A user would be expected to know >> something about the >> project they are working on, like the overall structure of the Web >> application, resource naming conventions, HTML styles, etc. >> Included in >> this would be location of project information and reusable or shared >> workspace. I don't think the protocol should be concerned >> with any of this. >> </jra> >> >> >> I think there should be two properties which identify collections that >> contain repositories and workspaces. The properties could be >> defined on the >> root of a server's URL namespace, or on every resource. >> (Alternatively, a >> server could make all workspaces and repositories appear >> under the root of >> its namespace; a versioning client could use the resourcetype >> property to >> distinguish them, but downlevel clients wouldn't, and so >> would present a >> confusing view of resources to a user.) >> <jra> >> I think there shouldn't be any repository, and that >> workspaces are user >> objects that can be placed anywhere in the namespace the user wants. >> Otherwise we get undesirable coupling between independent projects and >> workspace name collisions. >> </jra> >> >> Also, I think workspaces should have an "owner" property so >> that clients >> can >> identify candidate workspaces for selection by a user. (The DAV:owner >> element defined for locks could be used for this property.) >> <jra> >> Workspaces are resources, and can have ACLs to control >> access. Otherwise, >> they are not "owned" by anyone and can be shared by many >> users at the same >> time. We don't think this will be the usual use case, but >> there's no reason >> to prevent it unless that is some development organization's policy. >> </jra> >> >> John Vasta >> Rational Software >> >> >> >> > >