Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [alf-dev] ALF SCM Vocabulary compared to WebDAV VersioningExtensions

Hi Glenn,

 

These are good questions.

 

Delta-V (http://www.ietf.org/rfc/rfc3253.txt ) is an extension to WebDAV (http://asg.web.cmu.edu/rfc/rfc2518.html ) which in turn is an extension of HTTP (RFC2616). HTTP, as you no doubt know, is a client/server protocol to handle transfer of non-versioned resources (e.g. web pages). WebDAV extends it to deal with collections (e.g. directory trees) and with locking (e.g. simple non-versioned checkout/checkin). The idea is to support distributed authoring of web sites. Delta-V in turn extends that to deal with versioning of the underlying resources.

 

JSR-147 (http://www.jcp.org/en/jsr/detail?id=147 ) is a client-side Java API to SCM systems, i.e. to systems that do versioning and sharing of directory/file resources.

 

I don’t know the answer to your #1, but I can say it’s not a coincidence that JSR-147 and WebDAV/Delta-V share a similar object model. If you look at the lead contributor to each, it’s the same person (Geoff Clemm of IBM/Rational). You could certainly build an SCM system in which JSR-147 is your client-side API, and WebDAV/Delta-V is the on-the-wire client/server protocol that gets transmitted in response to API calls. The standards are not incompatible.

 

It’s also not a coincidence that the proposal I wrote up for the ALF SCM vocabulary has a similar object model to both of the above. I worked with Geoff when I was at IBM/Rational, in fact working on JSR-147/WebDAV-related stuff. (Now I am AccuRev).

 

Regarding your question #2, certainly that seems like a possible (and likely) implementation strategy if the existing SCM system uses WebDAV/Delta-V as its client/server protocol.

 

Regarding your question #3, the obstacles to using WebDAV/Delta-V directly are: (a) It’s not SOAP – we’d have to somehow SOAP-ify it [is that a word? J ] (b) It’s too low-level, and (c) It involve streaming the files themselves through the protocol (well, not Delta-V per se, but the underlying HTTP protocol does), which I thought we agreed we are not doing.

 

In a sense this is the same discussion we were having in our phone meeting last week, when we were talking about whether the ALF SCM vocabulary could be the *same* protocol as the underlying SCM system uses for its internal client/server interface. I think what people were arguing (I was at least) was the ALF SCM vocabulary needs to be a higher level. To take the canonical update-workspace example. If a build tool gives the ALF request “Update Workspace”, it just wants it to happen. It doesn’t want to deal with all the files in the workspace streaming back through the protocol. Whereas the underlying SCM tool, which is what actually needs to make it happen, so it *does* need to have a protocol (somewhere) that deals with streaming file-contents and file-information.

 

To bring this back to your original question, I agree it’s general goodness if all these SCM standards share the same object model. And I agree we should look at WebDAV/Delta-V more carefully to see what good stuff we can mine out of it. But I’d have concerns that it is too low-level to use directly.

 

Richard Title

 


From: alf-dev-bounces@xxxxxxxxxxx [mailto:alf-dev-bounces@xxxxxxxxxxx] On Behalf Of Everitt, Glenn
Sent: Wednesday, May 03, 2006 8:57 AM
To: alf-dev@xxxxxxxxxxx
Subject: [alf-dev] ALF SCM Vocabulary compared to WebDAV VersioningExtensions

 

The document Versioning Extensions to WebDAV (Web Distributed Authoring and Versioning) I found here http://www.ietf.org/rfc/rfc3253.txt
has a section of Term definitions which is very close to what has been proposed which seems very good.  It also looks like WebDAV has already been implemented by some SCM products. I don’t know how complete these implementations are but again, this seems like good news.
 
But I have a couple of other questions related to this:
1.           Why doesn’t JSR 147 doesn’t reference the document above it seems like they address identical areas. 
2.           Is it possible for an ALF managed BPEL script to be written using existing WebDAV support already in SCM products?
3.           If 2 above is true then should we base our vocabulary as directly as possible on the existing WebDAV standard?
 
I know nothing about WebDAV and only know about SCM systems from a user perspective so these are probably naïve questions.  However, I am curious.

 

Thanks for any information

Glenn Everitt  (Corona Project)

The contents of this e-mail are intended for the named addressee only. It contains information that may be confidential. Unless you are the named addressee or an authorized designee, you may not copy or use it, or disclose it to anyone else. If you received it in error please notify us immediately and then destroy it.


Back to the top