1 <!-- vCard profile for Evolution, KDE, SyncML -->
2 <mimeprofile name="vCard" fieldlist="contacts">
4 <profile name="VCARD" nummandatory="0"> <!-- we allow records without "N" as Address book can store them -->
5 <property name="VERSION">
6 <value conversion="version"/>
9 <property onlyformode="standard" name="PRODID" mandatory="no">
10 <value conversion="prodid"/>
13 <property name="REV" rule="EXTENDED-DATE-FORMAT" mandatory="yes">
14 <value field="REV" conversion="DATE+EXTFMT"/>
16 <property name="REV" rule="other" mandatory="yes">
20 <property name="UID" rule="HAVE-VCARD-UID" showindevinf="no">
24 <property name="N" values="5" mandatory="yes"> <!-- Note: makes N parse and generate even if not in remote's CTCap -->
25 <value index="0" field="N_LAST"/>
26 <value index="1" field="N_FIRST"/>
27 <value index="2" field="N_MIDDLE"/>
28 <value index="3" field="N_PREFIX"/>
29 <value index="4" field="N_SUFFIX"/>
36 <!-- FILE_AS not supported by KDE natively, let's use X-EVOLUTION-FILE-AS as extension -->
37 <property name="X-EVOLUTION-FILE-AS">
38 <value field="FILE_AS"/>
41 <property name="X-GENDER">
42 <value field="GENDER"/>
45 <!-- onlyformode="standard": not part of vCard 2.1, but some
46 peers (like the Funambol server) accept it anyway in
48 <property name="NICKNAME">
49 <value field="NICKNAME"/>
52 <property name="TITLE">
53 <value field="TITLE"/>
56 <property name="CATEGORIES" values="list" valueseparator="," altvalueseparator=";" > <!-- non-standard, but 1:1 as in vCard 3.0 (NOT like in vCalendar 1.0, where separator is ";") -->
57 <value field="CATEGORIES"/>
58 <position field="CATEGORIES" repeat="array" increment="1" minshow="0"/>
61 <!-- ORG property for KDE *and* everyone else; KDE *also* uses X-KADDRESSBOOK-X-Office -->
62 <property name="ORG" values="4">
63 <value index="0" field="ORG_NAME"/>
64 <value index="1" field="ORG_DIVISION"/>
65 <value index="2" field="ORG_OFFICE"/>
66 <value index="3" field="ORG_TEAM"/>
68 <property name="X-KADDRESSBOOK-X-Office" suppressempty="yes" rule="KDE">
69 <value field="ORG_OFFICE"/>
72 <!-- X-KADDRESSBOOK-X-Profession property for KDE, ROLE for everyone else -->
73 <property name="ROLE" rule="KDE"/>
74 <property name="ROLE" rule="other">
77 <property name="X-KADDRESSBOOK-X-Profession" suppressempty="yes" show="no" rule="KDE">
81 <property name="TEL" groupfield="GROUP_TAG">
83 <position field="TEL" repeat="array" increment="1" minshow="1"/>
84 <parameter name="TYPE" default="yes" positional="no" show="yes">
85 <value field="TEL_FLAGS" conversion="multimix" combine=",">
86 <enum name="HOME" value="B0"/>
87 <enum name="WORK" value="B1"/>
88 <enum mode="ignore" value="B2"/> <!-- OTHER -->
89 <enum name="VOICE" value="B3"/>
90 <enum name="CELL" value="B4"/>
91 <enum name="FAX" value="B5"/>
92 <enum name="PAGER" value="B6"/>
93 <enum name="PREF" value="B7"/>
94 <enum name="CAR" value="B8"/>
95 <enum name="X-EVOLUTION-CALLBACK" value="B9"/>
96 <enum name="X-EVOLUTION-RADIO" value="B10"/>
97 <enum name="X-EVOLUTION-TELEX" value="B11"/>
98 <enum name="X-EVOLUTION-TTYTDD" value="B12"/>
101 <parameter name="X-EVOLUTION-UI-SLOT" positional="no" show="no" rule="HAVE-EVOLUTION-UI-SLOT">
102 <value field="TEL_SLOT"/>
104 <parameter name="X-ABLabel" rule="HAVE-ABLABEL-PARAMETER" sharedfield="yes">
105 <value field="LABEL"/>
109 <property name="EMAIL" groupfield="GROUP_TAG">
110 <value field="EMAIL"/>
111 <position field="EMAIL" repeat="array" increment="1" minshow="1"/>
112 <parameter name="TYPE" default="yes" positional="no" show="yes">
113 <value field="EMAIL_FLAGS" conversion="multimix" combine=",">
114 <enum name="HOME" value="B0"/>
115 <enum name="WORK" value="B1"/>
116 <enum mode="ignore" value="B2"/> <!-- OTHER -->
117 <enum name="INTERNET" value="B3"/>
120 <parameter name="X-EVOLUTION-UI-SLOT" positional="no" show="no" rule="HAVE-EVOLUTION-UI-SLOT">
121 <value field="EMAIL_SLOT"/>
123 <parameter name="X-ABLabel" rule="HAVE-ABLABEL-PARAMETER" sharedfield="yes">
124 <value field="LABEL"/>
128 <property name="URL" groupfield="GROUP_TAG">
130 <position field="WEB" repeat="array" increment="1" minshow="1"/>
131 <parameter name="TYPE" default="yes" positional="no" show="yes">
132 <value field="WEB_FLAGS" conversion="multimix" combine=",">
133 <enum name="HOME" value="B0"/>
134 <enum name="WORK" value="B1"/>
135 <enum mode="ignore" value="B2"/> <!-- OTHER -->
136 <enum name="PREF" value="B3"/>
139 <parameter name="X-ABLabel" rule="HAVE-ABLABEL-PARAMETER" sharedfield="yes">
140 <value field="LABEL"/>
144 <property name="CALURI" suppressempty="yes">
145 <value field="CALURI"/>
147 <property name="FBURL" suppressempty="yes">
148 <value field="FBURL"/>
151 <!-- X-EVOLUTION-BLOG-URL property for everyone except KDE -->
152 <property name="X-EVOLUTION-BLOG-URL" suppressempty="yes" rule="KDE"/>
153 <property name="X-EVOLUTION-BLOG-URL" suppressempty="yes" rule="other">
154 <value field="BLOGURL"/>
156 <!-- the KDE way of expressing BLOGURL -->
157 <property name="X-KADDRESSBOOK-BlogFeed" suppressempty="yes" show="no" rule="KDE">
158 <value field="BLOGURL"/>
161 <!-- VIDEOURL not supported by KDE natively, let's use X-EVOLUTION-VIDEO-URL as extension -->
162 <property name="X-EVOLUTION-VIDEO-URL" suppressempty="yes" rule="other">
163 <value field="VIDEOURL"/>
166 <!-- item for SyncML server: EVOLUTION rule not active,
167 both X-EVOLUTION-MANAGER and X-MANAGER are sent.
169 item from SyncML server: EVOLUTION rule not active,
170 both X-EVOLUTION-MANAGER and X-MANAGER are checked,
171 but X-EVOLUTION-MANAGER later so that it overwrites
172 a value set earlier by X-MANAGER (if any). This is
173 a more or less arbitrary priority, chosen because
174 servers that know about SyncEvolution (ScheduleWorld,
175 Memotoo) use the X-EVOLUTION variant.
177 item to/from Evolution: EVOLUTION rule is active,
178 only X-EVOLUTION-MANAGER is used.
180 item to/from KDE: the X-EVOLUTION extensions are disabled,
181 only exchanged via KDE-only extensions
183 <property name="X-EVOLUTION-MANAGER" suppressempty="yes" delayedparsing="1" rule="KDE"/> <!-- disable X-EVOLUTION-MANAGER for KDE -->
184 <property name="X-EVOLUTION-MANAGER" suppressempty="yes" delayedparsing="1" rule="other">
185 <value field="MANAGER"/>
187 <property name="X-MANAGER" suppressempty="yes" rule="EVOLUTION"/> <!-- disables the X-MANAGER for EVOLUTION -->
188 <property name="X-MANAGER" suppressempty="yes" rule="KDE"/> <!-- disables the X-MANAGER for KDE -->
189 <property name="X-MANAGER" suppressempty="yes" rule="other">
190 <value field="MANAGER"/>
192 <property name="X-KADDRESSBOOK-X-ManagersName" suppressempty="yes" show="no" rule="KDE">
193 <value field="MANAGER"/>
196 <property name="X-EVOLUTION-ASSISTANT" suppressempty="yes" delayedparsing="1" rule="KDE"/>
197 <property name="X-EVOLUTION-ASSISTANT" suppressempty="yes" delayedparsing="1" rule="other">
198 <value field="ASSISTANT"/>
200 <property name="X-ASSISTANT" suppressempty="yes" rule="EVOLUTION"/>
201 <property name="X-ASSISTANT" suppressempty="yes" rule="KDE"/>
202 <property name="X-ASSISTANT" suppressempty="yes" rule="other">
203 <value field="ASSISTANT"/>
205 <property name="X-KADDRESSBOOK-X-AssistantsName" suppressempty="yes" show="no" rule="KDE">
206 <value field="ASSISTANT"/>
209 <property name="X-ABRELATEDNAMES" suppressempty="yes" groupfield="GROUP_TAG">
210 <value field="RELATEDNAMES"/>
211 <position field="RELATEDNAMES" repeat="array" increment="1" minshow="0"/>
212 <parameter name="X-ABLabel" rule="HAVE-ABLABEL-PARAMETER" sharedfield="yes">
213 <value field="LABEL"/>
217 <property name="X-EVOLUTION-SPOUSE" suppressempty="yes" delayedparsing="1" rule ="KDE"/>
218 <property name="X-EVOLUTION-SPOUSE" suppressempty="yes" delayedparsing="1" rule ="other">
219 <value field="SPOUSE" show="yes"/>
221 <property name="X-SPOUSE" suppressempty="yes" rule="EVOLUTION"/>
222 <property name="X-SPOUSE" suppressempty="yes" rule="KDE"/>
223 <property name="X-SPOUSE" suppressempty="yes" rule="other">
224 <value field="SPOUSE"/>
226 <property name="X-KADDRESSBOOK-X-SpousesName" suppressempty="yes" show="no" rule="KDE">
227 <value field="SPOUSE"/>
230 <property name="X-EVOLUTION-ANNIVERSARY" suppressempty="yes" delayedparsing="1" rule="KDE"/>
231 <property name="X-EVOLUTION-ANNIVERSARY" suppressempty="yes" delayedparsing="1" rule="other">
232 <value field="ANNIVERSARY"/>
234 <property name="X-ANNIVERSARY" suppressempty="yes" rule="EVOLUTION"/>
235 <property name="X-ANNIVERSARY" suppressempty="yes" rule="KDE"/>
236 <property name="X-ANNIVERSARY" suppressempty="yes" rule="other">
237 <value field="ANNIVERSARY"/>
239 <property name="X-KADDRESSBOOK-X-Anniversary" suppressempty="yes" show="no" rule="KDE">
240 <value field="ANNIVERSARY"/>
243 <property name="X-ABDATE" suppressempty="yes" groupfield="GROUP_TAG">
244 <value field="XDATE" conversion="DATE+EXTFMT"/>
245 <position field="XDATE" repeat="array" increment="1" minshow="0"/>
246 <parameter name="X-ABLabel" rule="HAVE-ABLABEL-PARAMETER" sharedfield="yes">
247 <value field="LABEL"/>
251 <property name="IMPP" suppressempty="yes" groupfield="GROUP_TAG">
252 <value field="IMPP"/>
253 <position field="IMPP" repeat="array" increment="1" minshow="0"/>
254 <parameter name="X-EVOLUTION-UI-SLOT" positional="no" show="no" rule="HAVE-EVOLUTION-UI-SLOT-IN-IMPP">
255 <value field="IMPP_SLOT"/>
257 <parameter name="X-SERVICE-TYPE" positional="no" show="no">
258 <value field="IMPP_SERVICE"/>
260 <parameter name="X-ABLabel" rule="HAVE-ABLABEL-PARAMETER" sharedfield="yes">
261 <value field="LABEL"/>
265 <property name="X-AIM" suppressempty="yes" rule="KDE"/>
266 <property name="X-AIM" suppressempty="yes" rule="other">
267 <value field="AIM_HANDLE"/>
268 <position field="AIM_HANDLE" repeat="array" increment="1" minshow="0"/>
269 <parameter name="X-EVOLUTION-UI-SLOT" positional="no" show="no" rule="HAVE-EVOLUTION-UI-SLOT">
270 <value field="AIM_SLOT"/>
273 <property name="X-messaging/aim-All" suppressempty="yes" show="no" rule="KDE">
274 <value field="AIM_HANDLE"/>
275 <position field="AIM_HANDLE" repeat="array" increment="1" minshow="0"/>
278 <property name="X-GADUGADU" suppressempty="yes" rule="KDE"/>
279 <property name="X-GADUGADU" suppressempty="yes" rule="other">
280 <value field="GADUGADU_HANDLE"/>
281 <position field="GADUGADU_HANDLE" repeat="array" increment="1" minshow="0"/>
282 <parameter name="X-EVOLUTION-UI-SLOT" positional="no" show="no" rule="HAVE-EVOLUTION-UI-SLOT">
283 <value field="GADUGADU_SLOT"/>
286 <property name="X-messaging/gadu-All" suppressempty="yes" show="no" rule="KDE">
287 <value field="GADUGADU_HANDLE"/>
288 <position field="GADUGADU_HANDLE" repeat="array" increment="1" minshow="0"/>
292 <property name="X-GROUPWISE" suppressempty="yes" rule="KDE"/>
293 <property name="X-GROUPWISE" suppressempty="yes" rule="other">
294 <value field="GROUPWISE_HANDLE"/>
295 <position field="GROUPWISE_HANDLE" repeat="array" increment="1" minshow="0"/>
296 <parameter name="X-EVOLUTION-UI-SLOT" positional="no" show="no" rule="HAVE-EVOLUTION-UI-SLOT">
297 <value field="GROUPWISE_SLOT"/>
300 <property name="X-messaging/groupwise-All" suppressempty="yes" show="no" rule="KDE">
301 <value field="GROUPWISE_HANDLE"/>
302 <position field="GROUPWISE_HANDLE" repeat="array" increment="1" minshow="0"/>
305 <property name="X-ICQ" suppressempty="yes" rule="KDE"/>
306 <property name="X-ICQ" suppressempty="yes" rule="other">
307 <value field="ICQ_HANDLE"/>
308 <position field="ICQ_HANDLE" repeat="array" increment="1" minshow="0"/>
309 <parameter name="X-EVOLUTION-UI-SLOT" positional="no" show="no" rule="HAVE-EVOLUTION-UI-SLOT">
310 <value field="ICQ_SLOT"/>
313 <property name="X-messaging/icq-All" suppressempty="yes" show="no" rule="KDE">
314 <value field="ICQ_HANDLE"/>
315 <position field="ICQ_HANDLE" repeat="array" increment="1" minshow="0"/>
318 <property name="X-JABBER" suppressempty="yes" rule="KDE"/>
319 <property name="X-JABBER" suppressempty="yes" rule="other">
320 <value field="JABBER_HANDLE"/>
321 <position field="JABBER_HANDLE" repeat="array" increment="1" minshow="0"/>
322 <parameter name="X-EVOLUTION-UI-SLOT" positional="no" show="no">
323 <value field="JABBER_SLOT"/>
326 <property name="X-messaging/xmpp-All" suppressempty="yes" show="no" rule="KDE">
327 <value field="JABBER_HANDLE"/>
328 <position field="JABBER_HANDLE" repeat="array" increment="1" minshow="0"/>
331 <property name="X-MSN" suppressempty="yes" rule="KDE"/>
332 <property name="X-MSN" suppressempty="yes" rule="other">
333 <value field="MSN_HANDLE"/>
334 <position field="MSN_HANDLE" repeat="array" increment="1" minshow="0"/>
335 <parameter name="X-EVOLUTION-UI-SLOT" positional="no" show="no" rule="HAVE-EVOLUTION-UI-SLOT">
336 <value field="MSN_SLOT"/>
339 <property name="X-messaging/msn-All" suppressempty="yes" show="no" rule="KDE">
340 <value field="MSN_HANDLE"/>
341 <position field="MSN_HANDLE" repeat="array" increment="1" minshow="0"/>
344 <property name="X-YAHOO" suppressempty="yes" rule="KDE"/>
345 <property name="X-YAHOO" suppressempty="yes" rule="other">
346 <value field="YAHOO_HANDLE"/>
347 <position field="YAHOO_HANDLE" repeat="array" increment="1" minshow="0"/>
348 <parameter name="X-EVOLUTION-UI-SLOT" positional="no" show="no" rule="HAVE-EVOLUTION-UI-SLOT">
349 <value field="YAHOO_SLOT"/>
352 <property name="X-messaging/yahoo-All" suppressempty="yes" show="no" rule="KDE">
353 <value field="YAHOO_HANDLE"/>
354 <position field="YAHOO_HANDLE" repeat="array" increment="1" minshow="0"/>
357 <property name="X-SKYPE" suppressempty="yes" rule="KDE"/>
358 <property name="X-SKYPE" suppressempty="yes" rule="other">
359 <value field="SKYPE_HANDLE"/>
360 <position field="SKYPE_HANDLE" repeat="array" increment="1" minshow="0"/>
361 <parameter name="X-EVOLUTION-UI-SLOT" positional="no" show="no" rule="HAVE-EVOLUTION-UI-SLOT">
362 <value field="SKYPE_SLOT"/>
365 <property name="X-messaging/skype-All" suppressempty="yes" show="no" rule="KDE">
366 <value field="SKYPE_HANDLE"/>
367 <position field="SKYPE_HANDLE" repeat="array" increment="1" minshow="0"/>
370 <!-- No X-messaging/sip-All in KDE?! Then let's use X-SIP for everyone. -->
371 <property name="X-SIP" suppressempty="yes">
372 <value field="SIP_HANDLE"/>
373 <position field="SIP_HANDLE" repeat="array" increment="1" minshow="0"/>
374 <parameter name="X-EVOLUTION-UI-SLOT" positional="no" show="no" rule="HAVE-EVOLUTION-UI-SLOT">
375 <value field="SIP_SLOT"/>
380 KDE way of expressing certain extensions that have no
381 other representations externally. Let's use the same
382 representation as in KDE for everyone else.
384 <property name="X-messaging/irc-All" suppressempty="yes">
385 <value field="IRC_HANDLE"/>
386 <position field="IRC_HANDLE" repeat="array" increment="1" minshow="0"/>
388 <property name="X-messaging/meanwhile-All" suppressempty="yes">
389 <value field="MEANWHILE_HANDLE"/>
390 <position field="MEANWHILE_HANDLE" repeat="array" increment="1" minshow="0"/>
392 <property name="X-messaging/sms-All" suppressempty="yes">
393 <value field="SMS_HANDLE"/>
394 <position field="SMS_HANDLE" repeat="array" increment="1" minshow="0"/>
396 <property name="X-KADDRESSBOOK-CRYPTOENCRYPTPREF" suppressempty="yes">
397 <value field="CRYPTOENCRYPTPREF"/>
399 <property name="X-KADDRESSBOOK-CRYPTOPROTOPREF" suppressempty="yes">
400 <value field="CRYPTOPROTOPREF"/>
402 <property name="X-KADDRESSBOOK-CRYPTOSIGNPREF" suppressempty="yes">
403 <value field="CRYPTOSIGNPREF"/>
405 <property name="X-KADDRESSBOOK-OPENPGPFP" suppressempty="yes">
406 <value field="OPENPGPFP"/>
408 <property name="X-KADDRESSBOOK-X-IMAddress" suppressempty="yes">
409 <value field="IM_ADDRESS"/>
412 <property name="X-MOZILLA-HTML">
413 <value field="WANTS_HTML"/>
416 <property name="ADR" values="7" groupfield="GROUP_TAG">
417 <value index="0" field="ADR_POBOX"/>
418 <value index="1" field="ADR_ADDTL"/>
419 <value index="2" field="ADR_STREET"/>
420 <value index="3" field="ADR_CITY"/>
421 <value index="4" field="ADR_REG"/>
422 <value index="5" field="ADR_ZIP"/>
423 <value index="6" field="ADR_COUNTRY"/>
424 <position field="ADR_POBOX" repeat="array" increment="1" minshow="1"/>
425 <parameter name="TYPE" default="yes" positional="no" show="yes">
426 <value field="ADR_STREET_FLAGS" conversion="multimix" combine=",">
427 <enum name="HOME" value="B0"/>
428 <enum name="WORK" value="B1"/>
429 <enum mode="ignore" value="B2"/> <!-- OTHER -->
432 <parameter name="X-ABLabel" rule="HAVE-ABLABEL-PARAMETER" sharedfield="yes">
433 <value field="LABEL"/>
437 <property name="BDAY" rule="EXTENDED-DATE-FORMAT">
438 <value field="BDAY" conversion="DATE+EXTFMT"/>
440 <property name="BDAY" rule="other">
441 <value field="BDAY"/>
444 <property name="NOTE" filter="no">
445 <value field="NOTE"/>
448 <property name="PHOTO" filter="no">
449 <value field="PHOTO" conversion="BLOB_AUTO"/>
450 <parameter name="TYPE" default="no" show="yes">
451 <value field="PHOTO_TYPE"/>
453 <parameter name="VALUE" default="no" show="yes">
454 <value field="PHOTO_VALUE"/>
458 <property name="GEO" values="2">
459 <value index="0" field="GEO_LAT"/>
460 <value index="1" field="GEO_LONG"/>
463 <!-- Label assigned to any of the repeating properties. -->
464 <property name="X-ABLabel" suppressempty="yes" groupfield="GROUP_TAG" rule="HAVE-ABLABEL-PROPERTY">
465 <value field="LABEL" repeat="array" increment="1" minshow="0"/>
466 <position field="LABEL" repeat="array" increment="1" minshow="1"/>
469 <property name="X-*" suppressempty="yes" show="false">
470 <value field="XPROPS"/>
471 <position field="XPROPS" repeat="array" increment="1" minshow="0"/>