Re: [Ietf-carddav] Comments on draft-daboo-carddav-02

Julian Reschke <> Mon, 16 July 2007 15:01 UTC

Return-Path: <>
Received: from ( []) by (Postfix) with ESMTP id 5BEAF7FA50 for <>; Mon, 16 Jul 2007 08:01:22 -0700 (PDT)
Received: from localhost ( []) by (Postfix) with ESMTP id 5045214220D for <>; Mon, 16 Jul 2007 08:00:27 -0700 (PDT)
X-Virus-Scanned: by amavisd-new and clamav at
X-Spam-Score: -1.454
X-Spam-Status: No, score=-1.454 tagged_above=-50 required=4 tests=[AWL=0.947, BAYES_00=-2.599, DNS_FROM_RFC_ABUSE=0.2, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id JDz7kb36207A for <>; Mon, 16 Jul 2007 08:00:27 -0700 (PDT)
Received: from ( []) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTP id 0A8C614220A for <>; Mon, 16 Jul 2007 08:00:26 -0700 (PDT)
Received: from TENCOSERVER.TencoAssembliesInc.local ( []) (authenticated bits=0) by ( with ESMTP id l6GF0DW0028993; Mon, 16 Jul 2007 15:00:14 GMT
Received: from TENCOSERVER.TencoAssembliesInc.local ([]) by TENCOSERVER.TencoAssembliesInc.local with Microsoft SMTPSVC(5.0.2195.6713); Mon, 16 Jul 2007 11:00:13 -0400
Received: by TENCOSERVER.TencoAssembliesInc.local (Microsoft Connector for POP3 Mailboxes 5.00.2195) with SMTP (Global POP3 Download) id MSG07162007-110012-11730.MMD@TencoAssembliesInc.local; Mon, 16 Jul 2007 11:00:12 -0400
X-From_: Mon Jul 16 14:58:40 2007
Received: from ( []) by ( with ESMTP id l6GEwdot028789 for <>; Mon, 16 Jul 2007 14:58:40 GMT
Received: from lists by with local (Exim 4.50) id 1IAS0x-0003RC-6M for; Mon, 16 Jul 2007 14:57:31 +0000
Received: from ([]) by with esmtp (Exim 4.50) id 1IAS0v-0003Ps-US for; Mon, 16 Jul 2007 14:57:29 +0000
Received: from ([]) by with smtp (Exim 4.63) (envelope-from <>) id 1IAS0q-0002Ou-0e for; Mon, 16 Jul 2007 14:57:29 +0000
Received: (qmail invoked by alias); 16 Jul 2007 14:57:16 -0000
Received: from (EHLO []) [] by (mp026) with SMTP; 16 Jul 2007 16:57:16 +0200
X-Authenticated: #1915285
X-Provags-ID: V01U2FsdGVkX19yipxDm6By2i+9o03EcXWmFpqjoB+bfEUsvk1cjt Aio/+eDQm4sdz3
Message-ID: <>
Date: Mon, 16 Jul 2007 16:57:09 +0200
From: Julian Reschke <>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv: Gecko/20060516 Thunderbird/ Mnenhy/
MIME-Version: 1.0
To: Cyrus Daboo <>
References: <> <>
In-Reply-To: <>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
X-Y-GMX-Trusted: 0
Received-SPF: pass
X-SPF-Guess: pass
X-W3C-Hub-Spam-Status: No, score=-2.6
X-W3C-Scan-Sig: 1IAS0q-0002Ou-0e c931b356366e4f11ca4d916c2af5de1a
Subject: Re: [Ietf-carddav] Comments on draft-daboo-carddav-02
X-Mailing-List: <> archive/latest/12721
Precedence: list
Resent-Message-Id: <>
Resent-Date: Mon, 16 Jul 2007 14:57:31 +0000
X-Antivirus: Scanned by F-Prot Antivirus (
X-OriginalArrivalTime: 16 Jul 2007 15:00:13.0204 (UTC) FILETIME=[0307DD40:01C7C7BA]
Cc: WebDAV <>,
X-Mailman-Version: 2.1.5
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Mon, 16 Jul 2007 15:01:22 -0000

Cyrus Daboo wrote:
> Hi Julian,
> Thanks for your detailed review.

And thanks for the feedback!

> Note that it was actually RFC3253 that let the cat out of the bag (so to 
> speak) wrt new methods for creating collections (MKWORKSPACE and 
> MKACTIVITY). In CalDAV We chose to be consistent with that approach by 
> having MKCALENDAR, and hence CardDAV has MKADDRESSBOOK.

Understood. I think there's a small difference in that RFC3253 defined a 
generic framework for versioning -- which may be applicable to many use 
cases -- where Ca*DAV use it for a very specific business case. I'll 
admit that the border between "generic" and these ones is fuzzy, though.

> However, I do agree that this is not an ideal state of affairs. If there 
> is consensus in the WebDAV community to do so, I agree that we should 
> write up a formal extension to MKCOL that would cover all the other 
> MKxxx's behaviors. However, I do not believe that belongs in CardDAV, it 
> should be a separate extension that CardDAV can itself leverage. I would 
> be happy to put a spec together on that (extracting the behaviors from 
> the existing specs).

I think that would be great. I think all we need is a request body (XML 
+ mime type) that will allow to specify a set of WebDAV properties, 
including the resource type.

 > ...
>> Use of Reports
>> Everytime a new REPORT is introduced, a new set of information is made
>> hard to cache. In some cases that may be harmless (such as when it's
>> something like a query, line in some RFC3744 reports).
>> However, defining a "multiget" really seems to be a bad idea, and now
>> there are even two of those! Please take this out until it can be shown
>> that just sending a bunch of GET requests (which can take advantage of
>> caching) is not sufficient.
> CalDAV has proved (to me at least) that multiget is a big win for both 
> server and  client. Perhaps other implementers can also comment.
> Its a win for several reasons including:
> 1) Cutting down on roundtrips. We did have discussion about why 
> pipelining is not reliable in the PATCH extension thread on the HTTP 
> list, though in this case we are only dealing with GETs.

Yes, so I don't think that these concerns apply.

> 2) multiget allows both the data and properties to be returned in one 
> go: i.e. it is the equivalent of a GET and a PROPFIND.

Understood, but this is related to the issue below: if the contents of 
the calendar/address resource would be exposed as *true* WebDAV 
property, a single PROPFIND would be sufficient.

> ...
>> Property model
>> The specs avoid exposing the content of their data objects as WebDAV
>> properties. This leads to lots of workarounds, such as introducing
>> "pseudo-properties" containing the actual content
>> (CARDDAV:addressbook-data), and abuse of DAV:prop for something that is
>> not a WebDAV property. Don't do this, it requires generic WebDAV servers
>> to use lots of special cases. (WebDAV SEARCH started with pseudo
>> properties but got successfully rid of them, so this can be done).
> Well CardDAV and CalDAV are special cases of a generic WebDAV server. So 
> I don't see this as being a big issue. There are reasons for doing 
> things the way they are and I will address those in more detail in a 
> follow up to your more detailed review posted to the CardDAV list.
 > ...

Looking forward to that. As this is a general WebDAV design question, 
maybe we should keep it over on this list...

Best regards, Julian