This comes out my research into a workaround for http://www.zimbra.com/forums/isync-c...directory.html. Thanks to another poster, I've got a system working that allows attendee lookups, but not lookups of locations or resources.
Basically, it looks like iCal uses ./principals/users/<username> when generating an invitation to a person, <username>@<zimbrahost>.
But for resources/locations, I think iCal uses ./principals/__uids__ and/or ./principals/resources and ./principals/locations.
(See pp. 27-28 of http://images.apple.com/server/macos...0.5_2nd_Ed.pdf.)
So what I'm wondering is, is there an actual CalDAV principals directory for each user/location/resource in Zimbra, or does Zimbra just use the directory request to provide necessary information on the fly? If the former, then maybe some trickery could be done with symbolic links to get Zimbra to interoperate with iCal autocompletion lookups for locations/resources.
Otherwise my fallback is to treat resources and locations as if they were people, as far as iCal is concerned. This will work but it's not as nice when it comes to lookups in iCal's Address Panel and the use of the Location field in an iCal event.