When adding a ldap addressbook, you are requested to use a 'connector'.
The connector is a xml file that describes the mapping between ldap
fields and VCard fields. If you're using a ldap addressbook in
read/write mode, I have added a field called 'unassigned' which is used
when a vcard property has no corresponding property in the ldap
structure. The ldap property used for this can be set to any field,
preferably a dedicated one.
The current connector files are located in the folder 'contacts/formats'
with the prefix 'backend_*'.
For now I have implemented 2 connectors, one inetOrgPerson and the other
inetOrgPerson connector can be used as is for inetOrgPerson ldap cards,
the ldap field businnessCategory will be used for the vcardunassigned
vcardunassigned connector uses a small schema I created to make it
easier for me, it adds 2 fields to the inetOrgPerson objectClass, the
country (which sometimes is absent in the ldap configuration) and a
vcardunassigned field. The schema file is also located in
I'm planning to write an admin/user documentation for this backend but I
guess it will be better written when I'll have other user feedbacks on it.