Subject: [VCARDDAV] How to get all the objects of an addressbook collection?

From: Dmitry Savenko <[email-masked]>
Date: Tue, 10 Aug 2010 12:29:49 +0700

Hello!
What's the best way to get all the objects of an addressbook
collection via CardDAV protocol?
For now, I was able to do it by PROPFIND the collection first, and
then do addressbook-multiget REPORT with all hrefs I got. But I feel
like there is a better way to do it. I tried to play with
addressbook-query REPORT, but achieve nothing. My assumption was that
the following should work:

<?xml version="1.0" encoding="utf-8" ?>
<C:addressbook-query xmlns:D="DAV:"
                xmlns:C="urn:ietf:params:xml:ns:carddav">
<D:prop>
  <D:getetag />
  <C:address-data />
</D:prop>
<C:filter>
    <C:prop-filter name="FN" />
</C:filter>
</C:addressbook-query>

It's said in the standard draft that an empty prop-filter match if the
property exists. But I always get an empty multistatus response. I'm
using Zimbra Collaboration Suite as a CardDAV server.

Best regards,
Dmitry.

P.S. I'm not sure I'm asking in the right place. If so, I'm sorry.