...
The carddav server delivers content out of a hierarchy of information. The shape of that hierarchy is determined by the configuration. Different parts of the hierarchy are typically delivered by different directory handlers. For example, as configured, the "/directory/users" branch is a gateway to the enterprise user directory - delivering vcards based on the account information.
Principal searches
The caldav server uses carddav to provide information about principals via teh principal-property-search report. A query of the form
Code Block |
---|
<?xml version="1.0" encoding="utf-8" ?>
<D:principal-property-search xmlns:D="DAV:"
xmlns:C="urn:ietf:params:xml:ns:caldav"
xmlns:CD="urn:ietf:params:xml:ns:carddav">
<D:property-search>
<D:prop>
<D:displayname/>
</D:prop>
<D:match>dougl</D:match>
</D:property-search>
<D:prop>
<D:displayname/>
<C:calendar-user-address-set/>
<CD:address-data content-type="application/vcard+json" />
</D:prop>
</D:principal-property-search> |
will result in a carddav query. Currently the url used is built in to the system and is /pubcarddav/directory/. The query has the form
Code Block |
---|
<?xml version="1.0" encoding="UTF-8" ?>
<C:addressbook-query xmlns:C="urn:ietf:params:xml:ns:carddav"
xmlns="DAV:">
<prop>
<getetag/>
<C:address-data content-type="application/vcard+json"/>
</prop>
<C:filter test="anyof">
<C:prop-filter name="FN">
<C:text-match collation="i;unicode-casemap" match-type="contains">dougl</C:text-match> </C:prop-filter>
</C:filter>
</C:addressbook-query> |