Message-ID: <003501be8a99$fff49140$e6ea7392@honeybee> From: "Sankar Virdhagriswaran" <sv@crystaliz.com> To: "Geoffrey M. Clemm" <gclemm@tantalum.atria.com> Cc: <jamsden@us.ibm.com>, <ietf-dav-versioning@w3.org> Date: Mon, 19 Apr 1999 15:20:42 -0400 Subject: Re: WeDAV Versioning Summary Geoff, Jim I was away on travel and am still deluged with work. Just so that the issue of workspaces does not get lost, I want to send a brief note about the reasons for my objections. I hope to do better based on questions I might get. My objections are based on two reasons: a) Modularity, and b) Application requirements thinking about using the DELTA-V protocol in the context of two applications that you folks may not have considered. Unfortunately, I do not have the time to write up the scenarios or the detailed specifications we would need. Therefore, my points (below) may sound theoretical, but they are not. MODULARITY One way to state my objection to workspace is based on the fact that DELTA-V really covers 3 different (top level) concepts. The first is the 'transactional' semantics of cooperative development (often called cooperative transactions in CS research) with merge support. The second is the notion of views on underlying data. The third is the notion of workspaces that are used to perform work by individuals or groups. I think we should separate these three for modularity sake alone. APPLICATION REQUIREMENTS Additionally, for the type of applications we are thinking about, merge has two implications: 'consistency management' and the 'place where the merge is performed'. By tying these two closely, the protocol does not allow for merge schemes that do not assume a 'place' with a 'view' where users perform the merge activity (a counter example is a document to which merge is applied or a calendar that is merged with other calendars in a meeting maker). In our way of thinking much of the information pieces (changes, change proposals, change sets, etc., etc.) are thought of as 'documents' which can be edited, shipped, shared, replicated, and done things to that you would expect to do a document. In this context, workspaces with view rules where merge is performed may be too heavy weight an object (and probably rooted in some 'place' according to the current spec.) and may not result in consistent behavior when shipped from one host to another (lacking global namespaces, etc.) Hope this helps. <soapbox> My philosophical bent is that versioning, configuraiton management, and cooperative transaction management are useful in many different application contexts. Considering that the DAV advanced collections will (hopefully) provide a way to develop many different kinds of applications that use 'structured collections', I hope that we do not limit the utility of DELTA-V in those other application contexts. It feels to me that the design team has leveraged your experience in file system based configuration management in specifying the semantic model so far. However, that may be a very small part of the type of applications that would want to use DELTA-V given that we are working in the context of base DAV (is there a different name for this thing?), DAV advanced collections, and DASL. These three components of DAV are much more general and hence I am hoping that DELTA-V will also allow support for such generality for a variety of applications. </soapbox> PS: For your own exercise, think about how one can construct a syndicated product catalog system with DELTA-V, DAV advanced collections, and DASL. Then you may begin to see why I am not too happy with the close tie-in between workspaces and merge support. PPS: I donot understand what Geoff mentions as automatic merging support.