KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > columba > addressbook > model > VCARD


1 package org.columba.addressbook.model;
2 // The contents of this file are subject to the Mozilla Public License Version
3
// 1.1
4
//(the "License"); you may not use this file except in compliance with the
5
//License. You may obtain a copy of the License at http://www.mozilla.org/MPL/
6
//
7
//Software distributed under the License is distributed on an "AS IS" basis,
8
//WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
9
//for the specific language governing rights and
10
//limitations under the License.
11
//
12
//The Original Code is "The Columba Project"
13
//
14
//The Initial Developers of the Original Code are Frederik Dietz and Timo
15
// Stich.
16
//Portions created by Frederik Dietz and Timo Stich are Copyright (C) 2003.
17
//
18
//All Rights Reserved.
19
/**
20  * All VCARD features Columba is able to handle.
21  * <p>
22  * vCard standard: http://www.zvon.org/tmRFC/RFC2426/Output/index.html vCard in
23  * RDF/XML: http://www.w3.org/TR/vcard-rdf
24  *
25  * @author fdietz
26  */

27 public interface VCARD {
28     
29     public static String JavaDoc VCARD = "vcard";
30     
31     public static String JavaDoc ID = "id";
32
33     /** *********************** Identification Types *********************** */
34
35     /**
36      * These types are used in the vCard profile to capture information
37      * associated with the identification and naming of the person or resource
38      * associated with the vCard.
39      */

40
41     /**
42      * Type purpose: To specify the formatted text corresponding to the name of
43      * the object the vCard represents.
44      * <p>
45      * Example: Mr. John Q. Public
46      */

47     public static String JavaDoc FN = "fn";
48
49     /**
50      * Type purpose: To specify the components of the name of the object the
51      * vCard represents.
52      * <p>
53      * The structured type value corresponds, in sequence, to the Family Name,
54      * Given Name, Additional Names, Honorific Prefixes, and Honorific Suffixes.
55      * <p>
56      * Example: Public;John;Quinlan;Mr.
57      */

58     public static String JavaDoc N = "n";
59
60     public static String JavaDoc N_PREFIX = "prefix";
61
62     public static String JavaDoc N_FAMILY = "family";
63
64     public static String JavaDoc N_GIVEN = "given";
65
66     public static String JavaDoc N_ADDITIONALNAMES = "additionalnames";
67
68     public static String JavaDoc N_SUFFIX = "suffix";
69
70     /**
71      * Type purpose: To specify the text corresponding to the nickname of the
72      * object the vCard represents.
73      * <p>
74      * The nickname is the descriptive name given instead of or in addition to
75      * the one belonging to a person, place, or thing. It can also be used to
76      * specify a familiar form of a proper name specified by the FN or N types.
77      * <p>
78      * Example: Robbie
79      */

80     public static String JavaDoc NICKNAME = "nickname";
81
82     /**
83      * Type purpose: To specify the family name or given name text to be used
84      * for national-language-specific sorting of the FN and N types.
85      * <p>
86      * The sort string is used to provide family name or given name text that is
87      * to be used in locale- or national-language- specific sorting of the
88      * formatted name and structured name types. Without this information,
89      * sorting algorithms could incorrectly sort this vCard within a sequence of
90      * sorted vCards. When this type is present in a vCard, then this family
91      * name or given name value is used for sorting the vCard.
92      */

93     public static String JavaDoc SORTSTRING = "sort-string";
94
95     /**
96      * Columba-specific extension
97      * <p>
98      * Name which is displayed throughout Columba.
99      * @deprecated use formattedName instead
100      */

101     public static String JavaDoc DISPLAYNAME = "displayname";
102
103     /**
104      * ****************** Delivery Addressing Types ********************
105      */

106
107     /**
108      * These types are concerned with information related to the delivery
109      * addressing or label for the vCard object.
110      */

111
112     /**
113      * Type purpose: To specify the components of the delivery address for the
114      * vCard object.
115      * <p>
116      * The structured type value consists of a sequence of address components.
117      * The structured type value corresponds, in sequence, to the post office
118      * box; the extended address; the street address; the locality (e.g., city);
119      * the region (e.g., state or province); the postal code; the country name.
120      * <p>
121      * The type can include the type parameter "TYPE" to specify the delivery
122      * address type. The TYPE parameter values can include "dom" to indicate a
123      * domestic delivery address; "intl" to indicate an international delivery
124      * address; "postal" to indicate a postal delivery address; "parcel" to
125      * indicate a parcel delivery address; "home" to indicate a delivery address
126      * for a residence; "work" to indicate delivery address for a place of work;
127      * and "pref" to indicate the preferred delivery address when more than one
128      * address is specified.
129      */

130     public static String JavaDoc ADR = "adr";
131
132     public static String JavaDoc ADR_POSTOFFICEBOX = "pobox";
133
134     public static String JavaDoc ADR_EXTENDEDADDRESS = "extadd";
135
136     public static String JavaDoc ADR_STREETADDRESS = "street";
137
138     // city
139
public static String JavaDoc ADR_LOCALITY = "locality";
140
141     // state/province/county
142
public static String JavaDoc ADR_REGION = "region";
143
144     public static String JavaDoc ADR_POSTALCODE = "pcode";
145
146     public static String JavaDoc ADR_COUNTRY = "country";
147
148     public static String JavaDoc ADR_TYPE_DOM = "dom";
149
150     public static String JavaDoc ADR_TYPE_INTL = "intl";
151
152     public static String JavaDoc ADR_TYPE_POSTAL = "postal";
153
154     public static String JavaDoc ADR_TYPE_PARCEL = "parcel";
155
156     public static String JavaDoc ADR_TYPE_HOME = "home";
157
158     public static String JavaDoc ADR_TYPE_WORK = "work";
159
160     public static String JavaDoc ADR_TYPE_PREF = "pref";
161
162     /**
163      * Type purpose: To specify the formatted text corresponding to delivery
164      * address of the object the vCard represents.
165      * <p>
166      * The type value is formatted text that can be used to present a delivery
167      * address label for the vCard object. The type can include the type
168      * parameter "TYPE" to specify delivery label type. The TYPE parameter
169      * values can include all the different types already found in ADR,
170      * specified above.
171      */

172     public static String JavaDoc LABEL = "label";
173
174     public static String JavaDoc LABEL_TYPE_DOM = "dom";
175
176     public static String JavaDoc LABEL_TYPE_INTL = "intl";
177
178     public static String JavaDoc LABEL_TYPE_POSTAL = "postal";
179
180     public static String JavaDoc LABEL_TYPE_PARCEL = "parcel";
181
182     public static String JavaDoc LABEL_TYPE_HOME = "home";
183
184     public static String JavaDoc LABEL_TYPE_WORK = "work";
185
186     public static String JavaDoc LABEL_TYPE_PREF = "pref";
187
188     /**
189      * *************Telecommunications Addressing Types *************
190      */

191
192     /**
193      * These types are concerned with information associated with the
194      * telecommunications addressing of the object the vCard represents.
195      */

196
197     /**
198      * Type purpose: To specify the telephone number for telephony communication
199      * with the object the vCard represents.
200      * <p>
201      * The value of this type is specified in a canonical form in order to
202      * specify an unambiguous representation of the globally unique telephone
203      * endpoint. This type is based on the X.500 Telephone Number attribute.
204      * <p>
205      * The type can include the type parameter "TYPE" to specify intended use
206      * for the telephone number. The TYPE parameter values can include: "home"
207      * to indicate a telephone number associated with a residence, "msg" to
208      * indicate the telephone number has voice messaging support, "work" to
209      * indicate a telephone number associated with a place of work, "pref" to
210      * indicate a preferred-use telephone number, "voice" to indicate a voice
211      * telephone number, "fax" to indicate a facsimile telephone number, "cell"
212      * to indicate a cellular telephone number, "video" to indicate a video
213      * conferencing telephone number, "pager" to indicate a paging device
214      * telephone number, "bbs" to indicate a bulletin board system telephone
215      * number, "modem" to indicate a MODEM connected telephone number, "car" to
216      * indicate a car-phone telephone number, "isdn" to indicate an ISDN service
217      * telephone number, "pcs" to indicate a personal communication services
218      * telephone number. The default type is "voice".
219      */

220     public static String JavaDoc TEL = "tel";
221
222     public static String JavaDoc TEL_TYPE_HOME = "home";
223
224     public static String JavaDoc TEL_TYPE_MSG = "msg";
225
226     public static String JavaDoc TEL_TYPE_WORK = "work";
227
228     public static String JavaDoc TEL_TYPE_PREF = "pref";
229
230     public static String JavaDoc TEL_TYPE_VOICE = "voice";
231
232     public static String JavaDoc TEL_TYPE_FAX = "fax";
233
234     public static String JavaDoc TEL_TYPE_CELL = "cell";
235
236     public static String JavaDoc TEL_TYPE_VIDEO = "video";
237
238     public static String JavaDoc TEL_TYPE_PAGER = "pager";
239
240     public static String JavaDoc TEL_TYPE_BBS = "bbs";
241
242     public static String JavaDoc TEL_TYPE_MODEM = "modem";
243
244     public static String JavaDoc TEL_TYPE_CAR = "car";
245
246     public static String JavaDoc TEL_TYPE_ISDN = "isdn";
247
248     public static String JavaDoc TEL_TYPE_PCS = "pcs";
249
250     /**
251      * Type purpose: To specify the electronic mail address for communication
252      * with the object the vCard represents.
253      * <p>
254      * The type can include the type parameter "TYPE" to specify the format or
255      * preference of the electronic mail address. The TYPE parameter values can
256      * include: "internet" to indicate an Internet addressing type, "x400" to
257      * indicate a X.400 addressing type or "pref" to indicate a preferred-use
258      * email address when more than one is specified.
259      */

260     public static String JavaDoc EMAIL = "email";
261
262     public static String JavaDoc EMAIL_TYPE_INTERNET = "internet";
263
264     public static String JavaDoc EMAIL_TYPE_X400 = "x400";
265
266     public static String JavaDoc EMAIL_TYPE_PREF = "pref";
267
268     /** ********************* Organizational Types ********************* */
269
270     /**
271      * These types are concerned with information associated with
272      * characteristics of the organization or organizational units of the object
273      * the vCard represents.
274      */

275
276     /**
277      * Type purpose: To specify information concerning the role, occupation, or
278      * business category of the object the vCard represents.
279      * <p>
280      * This type is based on the X.520 Business Category explanatory attribute.
281      * This property is included as an organizational type to avoid confusion
282      * with the semantics of the TITLE type and incorrect usage of that type
283      * when the semantics of this type is intended.
284      */

285     public static String JavaDoc ROLE = "role";
286
287     /**
288      * Type purpose: To specify the job title, functional position or
289      * function of the object the vCard represents.
290      * <p>
291      * This type is based on the X.520 Title attribute.
292      */

293     public static String JavaDoc TITLE = "title";
294
295     /**
296      * Type purpose: To specify the organizational name and units associated
297      * with the vCard.
298      * <p>
299      * The type is based on the X.520 Organization Name and Organization Unit
300      * attributes. The type value is a structured type consisting of the
301      * organization name, followed by one or more levels of organizational unit
302      * names.
303      */

304     public static String JavaDoc ORG = "org";
305
306     public static String JavaDoc X_COLUMBA_DEPARTMENT = "department";
307     public static String JavaDoc X_COLUMBA_OFFICE = "office";
308     
309     
310     public static String JavaDoc URL = "url";
311     
312     public static String JavaDoc BDAY = "bday";
313     
314     public static String JavaDoc NOTE = "note";
315     
316     public static String JavaDoc CATEGORY = "category";
317     
318     public static String JavaDoc PHOTO = "photo";
319     /**
320      * Columba-specific extensions
321      */

322      public static String JavaDoc X_COLUMBA_URL_BLOG = "url-blog";
323      public static String JavaDoc X_COLUMBA_URL_CALENDAR = "url-calendar";
324      public static String JavaDoc X_COLUMBA_URL_FREEBUSY = "url-freebusy";
325      
326      public static String JavaDoc IM = "im";
327      
328      public static String JavaDoc X_COLUMBA_IM_YAHOO = "im-yahoo";
329      public static String JavaDoc X_COLUMBA_IM_AIM = "im-aim";
330      public static String JavaDoc X_COLUMBA_IM_JABBER = "im-jabber";
331      public static String JavaDoc X_COLUMBA_IM_MSN = "im-msn";
332      public static String JavaDoc X_COLUMBA_IM_ICQ = "im-icq";
333      
334      
335 }
Popular Tags