[Dev] The Chandler/Cosmo sharing format

Bobby Rullo br at osafoundation.org
Wed Mar 8 10:26:11 PST 2006


On Mar 6, 2006, at 7:21 PM, Lisa Dusseault wrote:


> I understand that doing a PUT for both these parts of the stamped  
> resource is non-atomic. But there may be other ways of solving that  
> part.
>
> 1.   Microsoft invented a WebDAV extension to combine multiple  
> requests in a transaction:
> 	LOCK with special syntax to start transaction and get transaction ID
> 	PUT #1 with Transaction header to do the first resource created in  
> the transaction
> 	PUT #2 with same Transaction header
> 	UNLOCK with transaction ID to commit the changes
>

Cool. Do they have any documentation for this? Is it on any standards  
track?

> 2.  The "If" header allows you to create two resources in a way  
> that creating the second one relies on the existence of the first  
> one.  The second PUT would look like this
>
> 	PUT /users/lisa/work/task-prepare-staff-meeting HTTP/1.1
> 	If: <http://share.o11n.org/users/lisa/work/staff-meeting-event>  
> ([event-etag])
> 	Content-Type: text/calendar
> 	...
>
> There's two options, there may be others.
>


I'm not sure how that would solve the transactionality problem. If  
the second PUT failed, the first one would still remain, no?




More information about the Dev mailing list