[NUI] TCSACR-226 code change (#1032)
[platform/core/csapi/tizenfx.git] / src / Tizen.Pims.Contacts / Tizen.Pims.Contacts / ContactsViews.cs
1 /*
2 * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
3 *
4 * Licensed under the Apache License, Version 2.0 (the License);
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an AS IS BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17
18 using System;
19 using System.Diagnostics.CodeAnalysis;
20
21 namespace Tizen.Pims.Contacts
22 {
23     namespace ContactsViews
24     {
25         /// <summary>
26         /// This namespace provides information about the views with properties.
27         /// </summary>
28         /// <remarks>
29         ///  Views are provided to access and handle entities. A view is a structure, which has property elements.
30         ///  A view is almost the same as a database "VIEW", which limits access and guarantees performance.
31         ///  A "record" represents a single row of the views.
32         ///  A record can have basic properties of five types: integer, string, boolean, long, and double.
33         /// </remarks>
34         /// <since_tizen> 4 </since_tizen>
35
36         internal static class Property
37         {
38             private const uint AddressBook = 0x00100000;
39             private const uint Group = 0x00200000;
40             private const uint Person = 0x00300000;
41             private const uint Data = 0x00600000;
42             private const uint SpeedDial = 0x00700000;
43             private const uint Phonelog = 0x00800000;
44             private const uint UpdateInfo = 0x00900000;
45             private const uint PhonelogStat = 0x00B00000;
46
47             private const uint Contact = 0x01000000;
48             private const uint Name = 0x01100000;
49             private const uint Number = 0x01200000;
50             private const uint Email = 0x01300000;
51             private const uint Address = 0x01400000;
52             private const uint URL = 0x01500000;
53             private const uint Event = 0x01600000;
54             private const uint GroupRelation = 0x01700000;
55             private const uint Relationship = 0x01800000;
56             private const uint Company = 0x01900000;
57             private const uint Nickname = 0x01A00000;
58             private const uint Messenger = 0x01B00000;
59             private const uint Note = 0x01C00000;
60             private const uint Profile = 0x01D00000;
61             private const uint Image = 0x01E00000;
62             private const uint Extension = 0x01F00000;
63             private const uint MyProfile = 0x02000000;
64             private const uint ActivityPhoto = 0x02100000;
65             private const uint Sip = 0x02200000;
66
67             /* data_type mask 0x000FF000 */
68             private const uint DataTypeBool = 0x00010000;
69             private const uint DataTypeInt = 0x00020000;
70             private const uint DataTypeLong = 0x00030000;
71             private const uint DataTypeString = 0x00040000;
72             private const uint DataTypeDouble = 0x00050000;
73             private const uint DataTypeRecord = 0x00060000;
74
75             private const uint ReadOnly = 0x00001000;
76
77             internal enum Id : uint
78             {
79                 None,
80
81                 /* address book */
82                 AddressBookId = (AddressBook | DataTypeInt | ReadOnly),
83                 AddressBookAccountId = (AddressBook | DataTypeInt) + 1,
84                 AddressBookName = (AddressBook | DataTypeString) + 2,
85                 AddressBookMode = (AddressBook | DataTypeInt) + 3,
86
87                 /* group */
88                 GroupId = (Group | DataTypeInt | ReadOnly),
89                 GroupAddressBookId = (Group | DataTypeInt) + 1,
90                 GroupName = (Group | DataTypeString) + 2,
91                 GroupRingtone = (Group | DataTypeString) + 3,
92                 GroupImage = (Group | DataTypeString) + 4,
93                 GroupVibration = (Group | DataTypeString) + 5,
94                 GroupExtraData = (Group | DataTypeString) + 6,
95                 GroupIsReadOnly = (Group | DataTypeBool) + 7,
96                 GroupMessageAlert = (Group | DataTypeString) + 8,
97
98                 /* person */
99                 PersonId = (Person | DataTypeInt | ReadOnly),
100                 PersonDisplayName = (Person | DataTypeString | ReadOnly) + 1,
101                 PersonDisplayContactId = (Person | DataTypeInt) + 2,
102                 PersonRingtone = (Person | DataTypeString) + 3,
103                 PersonThumbnail = (Person | DataTypeString | ReadOnly) + 4,
104                 PersonVibration = (Person | DataTypeString) + 5,
105                 PersonIsFavorite = (Person | DataTypeBool) + 6,
106                 PersonFavoritePriority = (Person | DataTypeDouble | ReadOnly) + 7,
107                 PersonLinkCount = (Person | DataTypeInt | ReadOnly) + 8,
108                 PersonAddressBookIds = (Person | DataTypeString | ReadOnly) + 9,
109                 PersonHasPhoneNumber = (Person | DataTypeBool | ReadOnly) + 10,
110                 PersonHasEmail = (Person | DataTypeBool | ReadOnly) + 11,
111                 PersonDisplayNameIndex = (Person | DataTypeString | ReadOnly) + 12,
112                 PersonStatus = (Person | DataTypeString | ReadOnly) + 13,
113                 PersonMessageAlert = (Person | DataTypeString) + 14,
114                 PersonSnippetType = (Person | DataTypeInt | ReadOnly) + 15,
115                 PersonSnippetString = (Person | DataTypeString | ReadOnly) + 16,
116
117                 /* person-stat */
118                 PersonUsageType = (Person | DataTypeInt) + 100,
119                 PersonTimesUsed = (Person | DataTypeInt) + 101,
120
121                 /* simple contact : read only */
122                 /* contact */
123                 ContactId = (Contact | DataTypeInt | ReadOnly),
124                 ContactDisplayName = (Contact | DataTypeString | ReadOnly) + 1,
125                 ContactDisplaySourceDataId = (Contact | DataTypeInt | ReadOnly) + 2,
126                 ContactAddressBookId = (Contact | DataTypeInt) + 3,
127                 ContactRingtone = (Contact | DataTypeString) + 4,
128                 ContactImage = (Contact | DataTypeRecord) + 5,
129                 ContactThumbnail = (Contact | DataTypeString | ReadOnly) + 6,
130                 ContactIsFavorite = (Contact | DataTypeBool) + 7,
131                 ContactHasPhoneNumber = (Contact | DataTypeBool | ReadOnly) + 8,
132                 ContactHasEmail = (Contact | DataTypeBool | ReadOnly) + 9,
133                 ContactPersonId = (Contact | DataTypeInt) + 10,
134                 ContactUId = (Contact | DataTypeString) + 11,
135                 ContactVibration = (Contact | DataTypeString) + 12,
136                 ContactChangedTime = (Contact | DataTypeInt | ReadOnly) + 13,
137                 ContactName = (Contact | DataTypeRecord) + 14,
138                 ContactCompany = (Contact | DataTypeRecord) + 15,
139                 ContactNote = (Contact | DataTypeRecord) + 16,
140                 ContactNumber = (Contact | DataTypeRecord) + 17,
141                 ContactEmail = (Contact | DataTypeRecord) + 18,
142                 ContactEvent = (Contact | DataTypeRecord) + 19,
143                 ContactMessenger = (Contact | DataTypeRecord) + 20,
144                 ContactAddress = (Contact | DataTypeRecord) + 21,
145                 ContactURL = (Contact | DataTypeRecord) + 22,
146                 ContactNickname = (Contact | DataTypeRecord) + 23,
147                 ContactProfile = (Contact | DataTypeRecord) + 24,
148                 ContactRelationship = (Contact | DataTypeRecord) + 25,
149                 ContactGroupRelation = (Contact | DataTypeRecord) + 26,
150                 ContactExtension = (Contact | DataTypeRecord) + 27,
151                 ContactLinkMode = (Contact | DataTypeInt) + 28,
152                 ContactMessageAlert = (Contact | DataTypeString) + 29,
153                 ContactSip = (Contact | DataTypeRecord) + 30,
154
155                 /* my_profile */
156                 MyProfileId = (MyProfile | DataTypeInt | ReadOnly),
157                 MyProfileDisplayName = (MyProfile | DataTypeString | ReadOnly) + 1,
158                 MyProfileAddressBookId = (MyProfile | DataTypeInt) + 2,
159                 MyProfileImage = (MyProfile | DataTypeRecord) + 3,
160                 MyProfileThumbnail = (MyProfile | DataTypeString | ReadOnly) + 4,
161                 MyProfileUId = (MyProfile | DataTypeString) + 5,
162                 MyProfileChangedTime = (MyProfile | DataTypeInt) + 6,
163                 MyProfileName = (MyProfile | DataTypeRecord) + 7,
164                 MyProfileCompany = (MyProfile | DataTypeRecord) + 8,
165                 MyProfileNote = (MyProfile | DataTypeRecord) + 9,
166                 MyProfileNumber = (MyProfile | DataTypeRecord) + 10,
167                 MyProfileEmail = (MyProfile | DataTypeRecord) + 11,
168                 MyProfileEvent = (MyProfile | DataTypeRecord) + 12,
169                 MyProfileMessenger = (MyProfile | DataTypeRecord) + 13,
170                 MyProfileAddress = (MyProfile | DataTypeRecord) + 14,
171                 MyProfileURL = (MyProfile | DataTypeRecord) + 15,
172                 MyProfileNickname = (MyProfile | DataTypeRecord) + 16,
173                 MyProfileProfile = (MyProfile | DataTypeRecord) + 17,
174                 MyProfileRelationship = (MyProfile | DataTypeRecord) + 18,
175                 MyProfileExtension = (MyProfile | DataTypeRecord) + 19,
176                 MyProfileSip = (MyProfile | DataTypeRecord) + 20,
177
178                 /* data */
179                 DataId = (Data | DataTypeInt),
180                 DataContactId = (Data | DataTypeInt) + 1,
181                 DataType = (Data | DataTypeInt) + 2,
182                 DataIsPrimaryDefault = (Data | DataTypeBool) + 3,
183                 DataIsDefault = (Data | DataTypeBool) + 4,
184                 DataData1 = (Data | DataTypeInt) + 5,
185                 DataData2 = (Data | DataTypeString) + 6,
186                 DataData3 = (Data | DataTypeString) + 7,
187                 DataData4 = (Data | DataTypeString) + 8,
188                 DataData5 = (Data | DataTypeString) + 9,
189                 DataData6 = (Data | DataTypeString) + 10,
190                 DataData7 = (Data | DataTypeString) + 11,
191                 DataData8 = (Data | DataTypeString) + 12,
192                 DataData9 = (Data | DataTypeString) + 13,
193                 DataData10 = (Data | DataTypeString) + 14,
194
195                 /* contact_name */
196                 NameId = (Name | DataTypeInt | ReadOnly),
197                 NameContactId = (Name | DataTypeInt) + 1,
198                 NameFirst = (Name | DataTypeString) + 2,
199                 NameLast = (Name | DataTypeString) + 3,
200                 NameAddition = (Name | DataTypeString) + 4,
201                 NameSuffix = (Name | DataTypeString) + 5,
202                 NamePrefix = (Name | DataTypeString) + 6,
203                 NamePhoneticFirst = (Name | DataTypeString) + 7,
204                 NamePhoneticMiddle = (Name | DataTypeString) + 8,
205                 NamePhoneticLast = (Name | DataTypeString) + 9,
206
207                 /* contact_number */
208                 NumberId = (Number | DataTypeInt | ReadOnly),
209                 NumberContactId = (Number | DataTypeInt) + 1,
210                 NumberType = (Number | DataTypeInt) + 2,
211                 NumberLabel = (Number | DataTypeString) + 3,
212                 NumberIsDefault = (Number | DataTypeBool) + 4,
213                 NumberNumber = (Number | DataTypeString) + 5,
214                 NumberNumberFilter = (Number | DataTypeString) + 6,
215                 NumberNormalizedNumber = (Number | DataTypeString | ReadOnly) + 7,
216                 NumberCleanedNumber = (Number | DataTypeString | ReadOnly) + 8,
217
218                 /* contact_email */
219                 EmailId = (Email | DataTypeInt | ReadOnly),
220                 EmailContactId = (Email | DataTypeInt) + 1,
221                 EmailType = (Email | DataTypeInt) + 2,
222                 EmailLabel = (Email | DataTypeString) + 3,
223                 EmailIsDefault = (Email | DataTypeBool) + 4,
224                 EmailEmail = (Email | DataTypeString) + 5,
225
226                 /* contact_address */
227                 AddressId = (Address | DataTypeInt | ReadOnly),
228                 AddressContactId = (Address | DataTypeInt) + 1,
229                 AddressType = (Address | DataTypeInt) + 2,
230                 AddressLabel = (Address | DataTypeString) + 3,
231                 AddressPostbox = (Address | DataTypeString) + 4,
232                 AddressPostalCode = (Address | DataTypeString) + 5,
233                 AddressRegion = (Address | DataTypeString) + 6,
234                 AddressLocality = (Address | DataTypeString) + 7,
235                 AddressStreet = (Address | DataTypeString) + 8,
236                 AddressCountry = (Address | DataTypeString) + 9,
237                 AddressExtended = (Address | DataTypeString) + 10,
238                 AddressIsDefault = (Address | DataTypeBool) + 11,
239
240                 /* contact_url */
241                 URLId = (URL | DataTypeInt | ReadOnly),
242                 URLContactId = (URL | DataTypeInt) + 1,
243                 URLType = (URL | DataTypeInt) + 2,
244                 URLLabel = (URL | DataTypeString) + 3,
245                 URLData = (URL | DataTypeString) + 4,
246
247                 /* contact_event */
248                 EventId = (Event | DataTypeInt | ReadOnly),
249                 EventContactId = (Event | DataTypeInt) + 1,
250                 EventType = (Event | DataTypeInt) + 2,
251                 EventLabel = (Event | DataTypeString) + 3,
252                 EventDate = (Event | DataTypeInt) + 4,
253                 EventCalendarType = (Event | DataTypeInt) + 5,
254                 EventIsLeapMonth = (Event | DataTypeBool) + 6,
255
256                 /* contact_grouprelation */
257                 GroupRelationId = (GroupRelation | DataTypeInt | ReadOnly),
258                 GroupRelationGroupId = (GroupRelation | DataTypeInt) + 1,
259                 GroupRelationContactId = (GroupRelation | DataTypeInt) + 2,
260                 GroupRelationGroupName = (GroupRelation | DataTypeString) + 3,
261
262                 /* contact_relationship */
263                 RelationshipId = (Relationship | DataTypeInt | ReadOnly),
264                 RelationshipContactId = (Relationship | DataTypeInt) + 1,
265                 RelationshipType = (Relationship | DataTypeInt) + 2,
266                 RelationshipLabel = (Relationship | DataTypeString) + 3,
267                 RelationshipName = (Relationship | DataTypeString) + 4,
268
269                 /* contact_image */
270                 ImageId = (Image | DataTypeInt | ReadOnly),
271                 ImageContactId = (Image | DataTypeInt) + 1,
272                 ImageType = (Image | DataTypeInt) + 2,
273                 ImageLabel = (Image | DataTypeString) + 3,
274                 ImagePath = (Image | DataTypeString) + 4,
275                 ImageIsDefault = (Image | DataTypeBool) + 5,
276
277                 /* contact_company */
278                 CompanyId = (Company | DataTypeInt | ReadOnly),
279                 CompanyContactId = (Company | DataTypeInt) + 1,
280                 CompanyType = (Company | DataTypeInt) + 2,
281                 CompanyLabel = (Company | DataTypeString) + 3,
282                 CompanyName = (Company | DataTypeString) + 4,
283                 CompanyDepartment = (Company | DataTypeString) + 5,
284                 CompanyJobTitle = (Company | DataTypeString) + 6,
285                 CompanyRole = (Company | DataTypeString) + 7,
286                 CompanyAssistantName = (Company | DataTypeString) + 8,
287                 CompanyLogo = (Company | DataTypeString) + 9,
288                 CompanyLocation = (Company | DataTypeString) + 10,
289                 CompanyDescription = (Company | DataTypeString) + 11,
290                 CompanyPhoneticName = (Company | DataTypeString) + 12,
291
292                 /* contact_nickname */
293                 NicknameId = (Nickname | DataTypeInt | ReadOnly),
294                 NicknameContactId = (Nickname | DataTypeInt) + 1,
295                 NicknameName = (Nickname | DataTypeString) + 2,
296
297                 /* contact_messenger */
298                 MessengerId = (Messenger | DataTypeInt | ReadOnly),
299                 MessengerContactId = (Messenger | DataTypeInt) + 1,
300                 MessengerType = (Messenger | DataTypeInt) + 2,
301                 MessengerLabel = (Messenger | DataTypeString) + 3,
302                 MessengerIMId = (Messenger | DataTypeString) + 4,
303
304                 /* contact_note */
305                 NoteId = (Note | DataTypeInt | ReadOnly),
306                 NoteContactId = (Note | DataTypeInt) + 1,
307                 NoteNote = (Note | DataTypeString) + 2,
308
309                 /* contact sip */
310                 SipId = (Sip | DataTypeInt | ReadOnly),
311                 SipContactId = (Sip | DataTypeInt) + 1,
312                 SipAddress = (Sip | DataTypeString) + 2,
313                 SipType = (Sip | DataTypeInt) + 3,
314                 SipLabel = (Sip | DataTypeString) + 4,
315
316                 /* contact_profile */
317                 ProfileId = (Profile | DataTypeInt | ReadOnly),
318                 ProfileContactId = (Profile | DataTypeInt) + 1,
319                 ProfileUId = (Profile | DataTypeString) + 2,
320                 ProfileText = (Profile | DataTypeString) + 3,
321                 ProfileOrder = (Profile | DataTypeInt) + 4,
322                 ProfileServiceOperation = (Profile | DataTypeString) + 5,
323                 ProfileMIME = (Profile | DataTypeString) + 6,
324                 ProfileAppId = (Profile | DataTypeString) + 7,
325                 ProfileUri = (Profile | DataTypeString) + 8,
326                 ProfileCategory = (Profile | DataTypeString) + 9,
327                 ProfileExtraData = (Profile | DataTypeString) + 10,
328
329                 ExtensionId = (Extension | DataTypeInt | ReadOnly),
330                 ExtensionContactId = (Extension | DataTypeInt) + 1,
331                 ExtensionData1 = (Extension | DataTypeInt) + 2,
332                 ExtensionData2 = (Extension | DataTypeString) + 3,
333                 ExtensionData3 = (Extension | DataTypeString) + 4,
334                 ExtensionData4 = (Extension | DataTypeString) + 5,
335                 ExtensionData5 = (Extension | DataTypeString) + 6,
336                 ExtensionData6 = (Extension | DataTypeString) + 7,
337                 ExtensionData7 = (Extension | DataTypeString) + 8,
338                 ExtensionData8 = (Extension | DataTypeString) + 9,
339                 ExtensionData9 = (Extension | DataTypeString) + 10,
340                 ExtensionData10 = (Extension | DataTypeString) + 11,
341                 ExtensionData11 = (Extension | DataTypeString) + 12,
342                 ExtensionData12 = (Extension | DataTypeString) + 13,
343
344                 /* speeddial */
345                 SpeedDialDialNumber = (SpeedDial | DataTypeInt),
346                 SpeedDialNumberId = (SpeedDial | DataTypeInt) + 1,
347                 SpeedDialNumber = (SpeedDial | DataTypeString | ReadOnly) + 2,
348                 SpeedDialNumberLabel = (SpeedDial | DataTypeString | ReadOnly) + 3,
349                 SpeedDialNumberType = (SpeedDial | DataTypeInt | ReadOnly) + 4,
350                 SpeedDialPersonId = (SpeedDial | DataTypeInt | ReadOnly) + 5,
351                 SpeedDialDisplayName = (SpeedDial | DataTypeString | ReadOnly) + 6,
352                 SpeedDialThumbnail = (SpeedDial | DataTypeString | ReadOnly) + 7,
353                 SpeedDialNormalizedNumber = (SpeedDial | DataTypeString | ReadOnly) + 8,
354                 SpeedDialCleanedNumber = (SpeedDial | DataTypeString | ReadOnly) + 9,
355                 SpeedDialNumberFilter = (SpeedDial | DataTypeString | ReadOnly) + 10,
356
357                 /* phonelog */
358                 PhonelogId = (Phonelog | DataTypeInt | ReadOnly),
359                 PhonelogPersonId = (Phonelog | DataTypeInt) + 1,
360                 PhonelogAddress = (Phonelog | DataTypeString) + 2,
361                 PhonelogLogTime = (Phonelog | DataTypeInt) + 3,
362                 PhonelogLogType = (Phonelog | DataTypeInt) + 4,
363                 PhonelogExtraData1 = (Phonelog | DataTypeInt) + 5,
364                 PhonelogExtraData2 = (Phonelog | DataTypeString) + 6,
365                 PhonelogNormalizedAddress = (Phonelog | DataTypeString | ReadOnly) + 7,
366                 PhonelogCleanedAddress = (Phonelog | DataTypeString | ReadOnly) + 8,
367                 PhonelogAddressFilter = (Phonelog | DataTypeString | ReadOnly) + 9,
368                 PhonelogSimSlotNo = (Phonelog | DataTypeInt) + 10,
369
370                 /* phonelog_stat */
371                 PhonelogStatLogCount = (PhonelogStat | DataTypeInt | ReadOnly),
372                 PhonelogStatLogType = (PhonelogStat | DataTypeInt | ReadOnly) + 1,
373                 PhonelogStatSimSlotNo = (PhonelogStat | DataTypeInt | ReadOnly) + 2,
374
375                 /* updated_info : read only */
376                 UpdateInfoId = (UpdateInfo | DataTypeInt),
377                 UpdateInfoAddressBookId = (UpdateInfo | DataTypeInt) + 1,
378                 UpdateInfoType = (UpdateInfo | DataTypeInt) + 2,
379                 UpdateInfoVersion = (UpdateInfo | DataTypeInt) + 3,
380                 UpdateInfoImageChanged = (UpdateInfo | DataTypeBool) + 4,
381                 UpdateInfoLastChangedType = (UpdateInfo | DataTypeInt) + 5,
382             }
383         }
384
385         internal static class Record
386         {
387             internal const uint AverageSize = 120;  /* average size of person record */
388         }
389
390         /// <summary>
391         /// Enumeration for the contact change states.
392         /// </summary>
393         /// <since_tizen> 4 </since_tizen>
394         public enum ChangeType
395         {
396             /// <summary>
397             /// Inserted.
398             /// </summary>
399             /// <since_tizen> 4 </since_tizen>
400             Inserted,
401             /// <summary>
402             /// Updated.
403             /// </summary>
404             /// <since_tizen> 4 </since_tizen>
405             Updated,
406             /// <summary>
407             /// Deleted.
408             /// </summary>
409             /// <since_tizen> 4 </since_tizen>
410             Deleted,
411         }
412
413         /// <summary>
414         /// Describes the properties of an address book record.
415         /// </summary>
416         /// <since_tizen> 4 </since_tizen>
417         public static class AddressBook
418         {
419             /// <summary>
420             /// Identifier of this contacts address book view.
421             /// </summary>
422             /// <since_tizen> 4 </since_tizen>
423             public const string Uri = "tizen.contacts_view.addressbook";
424             /// <summary>
425             /// Integer, read only, database record ID of the address book.
426             /// </summary>
427             /// <since_tizen> 4 </since_tizen>
428             public const uint Id = (uint)Property.Id.AddressBookId;
429             /// <summary>
430             /// Integer, read/write once, account ID that the address book belongs to.
431             /// </summary>
432             /// <since_tizen> 4 </since_tizen>
433             public const uint AccountId = (uint)Property.Id.AddressBookAccountId;
434             /// <summary>
435             /// String, read/write, it cannot be null. Duplicate names are not allowed.
436             /// </summary>
437             /// <since_tizen> 4 </since_tizen>
438             public const uint Name = (uint)Property.Id.AddressBookName;
439             /// <summary>
440             /// Integer, read/write, AddressBook mode, refer to the ModeValue.
441             /// </summary>
442             /// <since_tizen> 4 </since_tizen>
443             public const uint Mode = (uint)Property.Id.AddressBookMode;
444
445             /// <summary>
446             /// Enumeration for the address book modes.
447             /// </summary>
448             /// <since_tizen> 4 </since_tizen>
449             public enum ModeValue
450             {
451                 /// <summary>
452                 /// All modules can read and write the contacts of this address_book.
453                 /// </summary>
454                 /// <since_tizen> 4 </since_tizen>
455                 None,
456                 /// <summary>
457                 /// All modules can only read the contacts of this address_book.
458                 /// </summary>
459                 /// <since_tizen> 4 </since_tizen>
460                 ReadOnly,
461             }
462         }
463
464         /// <summary>
465         /// Describes the properties of a Group record.
466         /// </summary>
467         /// <since_tizen> 4 </since_tizen>
468         public static class Group
469         {
470             /// <summary>
471             /// Identifier of this contacts group view.
472             /// </summary>
473             /// <since_tizen> 4 </since_tizen>
474             public const string Uri = "tizen.contacts_view.group";
475             /// <summary>
476             /// Database record ID of the group.
477             /// </summary>
478             /// <since_tizen> 4 </since_tizen>
479             public const uint Id = (uint)Property.Id.GroupId;
480             /// <summary>
481             /// AddressBook ID that the group belongs to.
482             /// </summary>
483             /// <since_tizen> 4 </since_tizen>
484             public const uint AddressBookId = (uint)Property.Id.GroupAddressBookId;
485             /// <summary>
486             /// Group name.
487             /// </summary>
488             /// <since_tizen> 4 </since_tizen>
489             public const uint Name = (uint)Property.Id.GroupName;
490             /// <summary>
491             /// Ringtone path of the group.
492             /// </summary>
493             /// <since_tizen> 4 </since_tizen>
494             public const uint RingtonePath = (uint)Property.Id.GroupRingtone;
495             /// <summary>
496             /// Image path of the group.
497             /// </summary>
498             /// <since_tizen> 4 </since_tizen>
499             public const uint ImagePath = (uint)Property.Id.GroupImage;
500             /// <summary>
501             /// Vibration path of the group.
502             /// </summary>
503             /// <since_tizen> 4 </since_tizen>
504             public const uint Vibration = (uint)Property.Id.GroupVibration;
505             /// <summary>
506             /// Extra data for the default group name.
507             /// </summary>
508             /// <since_tizen> 4 </since_tizen>
509             public const uint ExtraData = (uint)Property.Id.GroupExtraData;
510             /// <summary>
511             /// The group is read-only or not.
512             /// </summary>
513             /// <since_tizen> 4 </since_tizen>
514             public const uint IsReadOnly = (uint)Property.Id.GroupIsReadOnly;
515             /// <summary>
516             /// Message alert path of the group.
517             /// </summary>
518             /// <since_tizen> 4 </since_tizen>
519             public const uint MessageAlert = (uint)Property.Id.GroupMessageAlert;
520         }
521
522         /// <summary>
523         /// Describes the properties of a Person record.
524         /// </summary>
525         /// <since_tizen> 4 </since_tizen>
526         public static class Person
527         {
528             /// <summary>
529             /// Identifier of this contacts person view.
530             /// </summary>
531             /// <since_tizen> 4 </since_tizen>
532             public const string Uri = "tizen.contacts_view.person";
533             /// <summary>
534             /// Database record ID of the person.
535             /// </summary>
536             /// <since_tizen> 4 </since_tizen>
537             public const uint Id = (uint)Property.Id.PersonId;
538             /// <summary>
539             /// Display name of the person.
540             /// </summary>
541             /// <since_tizen> 4 </since_tizen>
542             public const uint DisplayName = (uint)Property.Id.PersonDisplayName;
543             /// <summary>
544             /// The first character of the first string for grouping. This is normalized using ICU (projection).
545             /// </summary>
546             /// <since_tizen> 4 </since_tizen>
547             public const uint DisplayNameIndex = (uint)Property.Id.PersonDisplayNameIndex;
548             /// <summary>
549             /// Display contact ID that the person belongs to.
550             /// </summary>
551             /// <since_tizen> 4 </since_tizen>
552             public const uint DisplayContactId = (uint)Property.Id.PersonDisplayContactId;
553             /// <summary>
554             /// Ringtone path of the person.
555             /// </summary>
556             /// <since_tizen> 4 </since_tizen>
557             public const uint RingtonePath = (uint)Property.Id.PersonRingtone;
558             /// <summary>
559             /// Image thumbnail path of the person.
560             /// </summary>
561             /// <since_tizen> 4 </since_tizen>
562             public const uint ThumbnailPath = (uint)Property.Id.PersonThumbnail;
563             /// <summary>
564             /// Vibration path of the person.
565             /// </summary>
566             /// <since_tizen> 4 </since_tizen>
567             public const uint Vibration = (uint)Property.Id.PersonVibration;
568             /// <summary>
569             /// Message alert path of the person.
570             /// </summary>
571             /// <since_tizen> 4 </since_tizen>
572             public const uint MessageAlert = (uint)Property.Id.PersonMessageAlert;
573             /// <summary>
574             /// Status of the social account.
575             /// </summary>
576             /// <since_tizen> 4 </since_tizen>
577             public const uint Status = (uint)Property.Id.PersonStatus;
578             /// <summary>
579             /// The person is a favorite or not.
580             /// </summary>
581             /// <since_tizen> 4 </since_tizen>
582             public const uint IsFavorite = (uint)Property.Id.PersonIsFavorite;
583             /// <summary>
584             /// The priority of the favorite contacts. It can be used as a sorting key.
585             /// </summary>
586             /// <since_tizen> 4 </since_tizen>
587             public const uint FavoritePriority = (uint)Property.Id.PersonFavoritePriority;
588             /// <summary>
589             /// Link count of the contact records (projection).
590             /// </summary>
591             /// <since_tizen> 4 </since_tizen>
592             public const uint LinkCount = (uint)Property.Id.PersonLinkCount;
593             /// <summary>
594             /// AddressBook IDs that the person belongs to (projection).
595             /// </summary>
596             /// <since_tizen> 4 </since_tizen>
597             public const uint AddressBookIds = (uint)Property.Id.PersonAddressBookIds;
598             /// <summary>
599             /// The person has a phone number or not.
600             /// </summary>
601             /// <since_tizen> 4 </since_tizen>
602             public const uint HasPhoneNumber = (uint)Property.Id.PersonHasPhoneNumber;
603             /// <summary>
604             /// The person has an email or not.
605             /// </summary>
606             /// <since_tizen> 4 </since_tizen>
607             public const uint HasEmail = (uint)Property.Id.PersonHasEmail;
608             /// <summary>
609             /// Keyword matched data type.
610             /// </summary>
611             /// <since_tizen> 4 </since_tizen>
612             public const uint SnippetType = (uint)Property.Id.PersonSnippetType;
613             /// <summary>
614             /// Keyword matched data string.
615             /// </summary>
616             /// <since_tizen> 4 </since_tizen>
617             public const uint SnippetString = (uint)Property.Id.PersonSnippetString;
618         }
619
620         /// <summary>
621         /// Describes the properties of a Contact record.
622         /// </summary>
623         /// <since_tizen> 4 </since_tizen>
624         public static class Contact
625         {
626             /// <summary>
627             /// Identifier of this contacts view.
628             /// </summary>
629             /// <since_tizen> 4 </since_tizen>
630             public const string Uri = "tizen.contacts_view.contact";
631             /// <summary>
632             /// Database record ID of the contact.
633             /// </summary>
634             /// <since_tizen> 4 </since_tizen>
635             public const uint Id = (uint)Property.Id.ContactId;
636             /// <summary>
637             /// Display name of the contact.
638             /// </summary>
639             /// <since_tizen> 4 </since_tizen>
640             public const uint DisplayName = (uint)Property.Id.ContactDisplayName;
641             /// <summary>
642             /// The source type of the display name, refer to the DisplayNameSourceType.
643             /// </summary>
644             /// <since_tizen> 4 </since_tizen>
645             public const uint DisplaySourceType = (uint)Property.Id.ContactDisplaySourceDataId;
646             /// <summary>
647             /// AddressBook ID that the contact belongs to.
648             /// </summary>
649             /// <since_tizen> 4 </since_tizen>
650             public const uint AddressBookId = (uint)Property.Id.ContactAddressBookId;
651             /// <summary>
652             /// Ringtone path of the contact.
653             /// </summary>
654             /// <since_tizen> 4 </since_tizen>
655             public const uint RingtonePath = (uint)Property.Id.ContactRingtone;
656             /// <summary>
657             /// Image thumbnail path of the contact.
658             /// </summary>
659             /// <since_tizen> 4 </since_tizen>
660             public const uint ThumbnailPath = (uint)Property.Id.ContactThumbnail;
661             /// <summary>
662             /// The contact is a favorite or not.
663             /// </summary>
664             /// <since_tizen> 4 </since_tizen>
665             public const uint IsFavorite = (uint)Property.Id.ContactIsFavorite;
666             /// <summary>
667             /// The contact has a phone number or not.
668             /// </summary>
669             /// <since_tizen> 4 </since_tizen>
670             public const uint HasPhoneNumber = (uint)Property.Id.ContactHasPhoneNumber;
671             /// <summary>
672             /// The contact has an email or not.
673             /// </summary>
674             /// <since_tizen> 4 </since_tizen>
675             public const uint HasEmail = (uint)Property.Id.ContactHasEmail;
676             /// <summary>
677             /// Person ID that the contact belongs to. If set when inserting, a contact will be linked to the person.
678             /// </summary>
679             /// <since_tizen> 4 </since_tizen>
680             public const uint PersonId = (uint)Property.Id.ContactPersonId;
681             /// <summary>
682             /// Unique identifier.
683             /// </summary>
684             /// <since_tizen> 4 </since_tizen>
685             public const uint UId = (uint)Property.Id.ContactUId;
686             /// <summary>
687             /// Vibration path of the contact.
688             /// </summary>
689             /// <since_tizen> 4 </since_tizen>
690             public const uint Vibration = (uint)Property.Id.ContactVibration;
691             /// <summary>
692             /// Message alert path of the contact.
693             /// </summary>
694             /// <since_tizen> 4 </since_tizen>
695             public const uint MessageAlert = (uint)Property.Id.ContactMessageAlert;
696             /// <summary>
697             /// Last changed contact time.
698             /// </summary>
699             /// <since_tizen> 4 </since_tizen>
700             public const uint ChangedTime = (uint)Property.Id.ContactChangedTime;
701             /// <summary>
702             /// The link mode, refer to the LinkModeValue. If the person_id was set, this value will be ignored.
703             /// </summary>
704             /// <since_tizen> 4 </since_tizen>
705             public const uint LinkMode = (uint)Property.Id.ContactLinkMode;
706             /// <summary>
707             /// Name child record (single).
708             /// </summary>
709             /// <since_tizen> 4 </since_tizen>
710             public const uint Name = (uint)Property.Id.ContactName;
711             /// <summary>
712             /// Company child record (multiple).
713             /// </summary>
714             /// <since_tizen> 4 </since_tizen>
715             public const uint Company = (uint)Property.Id.ContactCompany;
716             /// <summary>
717             /// Note child record (multiple).
718             /// </summary>
719             /// <since_tizen> 4 </since_tizen>
720             public const uint Note = (uint)Property.Id.ContactNote;
721             /// <summary>
722             /// Number child record (multiple).
723             /// </summary>
724             /// <since_tizen> 4 </since_tizen>
725             public const uint Number = (uint)Property.Id.ContactNumber;
726             /// <summary>
727             /// Email child record (multiple).
728             /// </summary>
729             /// <since_tizen> 4 </since_tizen>
730             public const uint Email = (uint)Property.Id.ContactEmail;
731             /// <summary>
732             /// Event child record (multiple).
733             /// </summary>
734             /// <since_tizen> 4 </since_tizen>
735             public const uint Event = (uint)Property.Id.ContactEvent;
736             /// <summary>
737             /// Messenger child record (multiple).
738             /// </summary>
739             /// <since_tizen> 4 </since_tizen>
740             public const uint Messenger = (uint)Property.Id.ContactMessenger;
741             /// <summary>
742             /// Address child record (multiple).
743             /// </summary>
744             /// <since_tizen> 4 </since_tizen>
745             public const uint Address = (uint)Property.Id.ContactAddress;
746             /// <summary>
747             /// URL child record (multiple).
748             /// </summary>
749             /// <since_tizen> 4 </since_tizen>
750             public const uint URL = (uint)Property.Id.ContactURL;
751             /// <summary>
752             /// Nickname child record (multiple).
753             /// </summary>
754             /// <since_tizen> 4 </since_tizen>
755             public const uint Nickname = (uint)Property.Id.ContactNickname;
756             /// <summary>
757             /// Profile child record (multiple).
758             /// </summary>
759             /// <since_tizen> 4 </since_tizen>
760             public const uint Profile = (uint)Property.Id.ContactProfile;
761             /// <summary>
762             /// Relationship child record (multiple).
763             /// </summary>
764             /// <since_tizen> 4 </since_tizen>
765             public const uint Relationship = (uint)Property.Id.ContactRelationship;
766             /// <summary>
767             /// Image child record (multiple).
768             /// </summary>
769             /// <since_tizen> 4 </since_tizen>
770             public const uint Image = (uint)Property.Id.ContactImage;
771             /// <summary>
772             /// GroupRelation child record (multiple).
773             /// </summary>
774             /// <since_tizen> 4 </since_tizen>
775             public const uint GroupRelation = (uint)Property.Id.ContactGroupRelation;
776             /// <summary>
777             /// Extension child record (multiple).
778             /// </summary>
779             /// <since_tizen> 4 </since_tizen>
780             public const uint Extension = (uint)Property.Id.ContactExtension;
781             /// <summary>
782             /// SIP child record (multiple).
783             /// </summary>
784             /// <since_tizen> 4 </since_tizen>
785             public const uint Sip = (uint)Property.Id.ContactSip;
786
787             /// <summary>
788             /// Enumeration for the link modes when inserting the contact.
789             /// </summary>
790             /// <since_tizen> 4 </since_tizen>
791             public enum LinkModeValue
792             {
793                 /// <summary>
794                 /// Auto link immediately.
795                 /// </summary>
796                 /// <since_tizen> 4 </since_tizen>
797                 Auto,
798                 /// <summary>
799                 /// Do not auto link when the contact is inserted.
800                 /// </summary>
801                 /// <since_tizen> 4 </since_tizen>
802                 None
803             }
804
805             /// <summary>
806             /// Enumeration for the Contact display name source types.
807             /// </summary>
808             /// <since_tizen> 4 </since_tizen>
809             public enum DisplayNameSourceType
810             {
811                 /// <summary>
812                 /// Invalid source of the display name.
813                 /// </summary>
814                 /// <since_tizen> 4 </since_tizen>
815                 Invalid,
816                 /// <summary>
817                 /// Produced display name from the email record.
818                 /// </summary>
819                 /// <since_tizen> 4 </since_tizen>
820                 Email,
821                 /// <summary>
822                 /// Produced display name from the number record.
823                 /// </summary>
824                 /// <since_tizen> 4 </since_tizen>
825                 Number,
826                 /// <summary>
827                 /// Produced display name from the nickname record.
828                 /// </summary>
829                 /// <since_tizen> 4 </since_tizen>
830                 Nickname,
831                 /// <summary>
832                 /// Produced display name from the company record.
833                 /// </summary>
834                 /// <since_tizen> 4 </since_tizen>
835                 Company,
836                 /// <summary>
837                 /// Produced display name from the name record.
838                 /// </summary>
839                 /// <since_tizen> 4 </since_tizen>
840                 Name,
841             }
842
843             /// <summary>
844             /// Enumeration for the contacts data types.
845             /// </summary>
846             /// <since_tizen> 4 </since_tizen>
847             public enum DataType
848             {
849                 /// <summary>
850                 /// None.
851                 /// </summary>
852                 /// <since_tizen> 4 </since_tizen>
853                 None,
854                 /// <summary>
855                 /// Name.
856                 /// </summary>
857                 /// <since_tizen> 4 </since_tizen>
858                 Name = 1,
859                 /// <summary>
860                 /// Address.
861                 /// </summary>
862                 /// <since_tizen> 4 </since_tizen>
863                 Address = 2,
864                 /// <summary>
865                 /// Messenger.
866                 /// </summary>
867                 /// <since_tizen> 4 </since_tizen>
868                 Messenger = 3,
869                 /// <summary>
870                 /// URL.
871                 /// </summary>
872                 /// <since_tizen> 4 </since_tizen>
873                 URL = 4,
874                 /// <summary>
875                 /// Event.
876                 /// </summary>
877                 /// <since_tizen> 4 </since_tizen>
878                 Event = 5,
879                 /// <summary>
880                 /// Company.
881                 /// </summary>
882                 /// <since_tizen> 4 </since_tizen>
883                 Company = 6,
884                 /// <summary>
885                 /// Nickname.
886                 /// </summary>
887                 /// <since_tizen> 4 </since_tizen>
888                 Nickname = 7,
889                 /// <summary>
890                 /// Number.
891                 /// </summary>
892                 /// <since_tizen> 4 </since_tizen>
893                 Number = 8,
894                 /// <summary>
895                 /// Email.
896                 /// </summary>
897                 /// <since_tizen> 4 </since_tizen>
898                 Email = 9,
899                 /// <summary>
900                 /// Profile.
901                 /// </summary>
902                 /// <since_tizen> 4 </since_tizen>
903                 Profile = 10,
904                 /// <summary>
905                 /// Relationship.
906                 /// </summary>
907                 /// <since_tizen> 4 </since_tizen>
908                 Relationship = 11,
909                 /// <summary>
910                 /// Note.
911                 /// </summary>
912                 /// <since_tizen> 4 </since_tizen>
913                 Note = 12,
914                 /// <summary>
915                 /// Image.
916                 /// </summary>
917                 /// <since_tizen> 4 </since_tizen>
918                 Image = 13,
919                 /// <summary>
920                 /// SIP.
921                 /// </summary>
922                 /// <since_tizen> 4 </since_tizen>
923                 Sip = 14,
924                 /// <summary>
925                 /// Extension.
926                 /// </summary>
927                 /// <since_tizen> 4 </since_tizen>
928                 Extension = 100
929             }
930         }
931
932         /// <summary>
933         /// Describes the properties of a Simple contact record.
934         /// </summary>
935         /// <since_tizen> 4 </since_tizen>
936         public static class SimpleContact
937         {
938             /// <summary>
939             /// Identifier of this simple contact view.
940             /// </summary>
941             /// <since_tizen> 4 </since_tizen>
942             public const string Uri = "tizen.contacts_view.simple_contact";
943             /// <summary>
944             /// Database record ID of the contact.
945             /// </summary>
946             /// <since_tizen> 4 </since_tizen>
947             public const uint Id = (uint)Property.Id.ContactId;
948             /// <summary>
949             /// Display name of the contact.
950             /// </summary>
951             /// <since_tizen> 4 </since_tizen>
952             public const uint DisplayName = (uint)Property.Id.ContactDisplayName;
953             /// <summary>
954             /// The source type of the display name, refer to the Contact.DisplayNameSourceType
955             /// </summary>
956             /// <since_tizen> 4 </since_tizen>
957             public const uint DisplaySourceType = (uint)Property.Id.ContactDisplaySourceDataId;
958             /// <summary>
959             /// AddressBook that the contact belongs to.
960             /// </summary>
961             /// <since_tizen> 4 </since_tizen>
962             public const uint AddressBookId = (uint)Property.Id.ContactAddressBookId;
963             /// <summary>
964             /// Ringtone path of the contact.
965             /// </summary>
966             /// <since_tizen> 4 </since_tizen>
967             public const uint RingtonePath = (uint)Property.Id.ContactRingtone;
968             /// <summary>
969             /// Image thumbnail path of the contact.
970             /// </summary>
971             /// <since_tizen> 4 </since_tizen>
972             public const uint ThumbnailPath = (uint)Property.Id.ContactThumbnail;
973             /// <summary>
974             /// The contact is a favorite or not.
975             /// </summary>
976             /// <since_tizen> 4 </since_tizen>
977             public const uint IsFavorite = (uint)Property.Id.ContactIsFavorite;
978             /// <summary>
979             /// The contact has a phone number or not.
980             /// </summary>
981             /// <since_tizen> 4 </since_tizen>
982             public const uint HasPhoneNumber = (uint)Property.Id.ContactHasPhoneNumber;
983             /// <summary>
984             /// The contact has an email or not.
985             /// </summary>
986             /// <since_tizen> 4 </since_tizen>
987             public const uint HasEmail = (uint)Property.Id.ContactHasEmail;
988             /// <summary>
989             /// Person ID that the contact belongs to.
990             /// </summary>
991             /// <since_tizen> 4 </since_tizen>
992             public const uint PersonId = (uint)Property.Id.ContactPersonId;
993             /// <summary>
994             /// Unique identifier.
995             /// </summary>
996             /// <since_tizen> 4 </since_tizen>
997             public const uint UId = (uint)Property.Id.ContactUId;
998             /// <summary>
999             /// Vibration path of the contact.
1000             /// </summary>
1001             /// <since_tizen> 4 </since_tizen>
1002             public const uint Vibration = (uint)Property.Id.ContactVibration;
1003             /// <summary>
1004             /// Message alert path of the contact.
1005             /// </summary>
1006             /// <since_tizen> 4 </since_tizen>
1007             public const uint MessageAlert = (uint)Property.Id.ContactMessageAlert;
1008             /// <summary>
1009             /// Last changed contact time.
1010             /// </summary>
1011             /// <since_tizen> 4 </since_tizen>
1012             public const uint ChangedTime = (uint)Property.Id.ContactChangedTime;
1013         }
1014
1015         /// <summary>
1016         /// Describes the properties of My profile record.
1017         /// </summary>
1018         /// <since_tizen> 4 </since_tizen>
1019         public static class MyProfile
1020         {
1021             /// <summary>
1022             /// Identifier of this my profile view.
1023             /// </summary>
1024             /// <since_tizen> 4 </since_tizen>
1025             public const string Uri = "tizen.contacts_view.my_profile";
1026             /// <summary>
1027             /// Database record ID of the my profile.
1028             /// </summary>
1029             /// <since_tizen> 4 </since_tizen>
1030             public const uint Id = (uint)Property.Id.MyProfileId;
1031             /// <summary>
1032             /// Display name of the profile.
1033             /// </summary>
1034             /// <since_tizen> 4 </since_tizen>
1035             public const uint DisplayName = (uint)Property.Id.MyProfileDisplayName;
1036             /// <summary>
1037             /// AddressBook ID that the profile belongs to.
1038             /// </summary>
1039             /// <since_tizen> 4 </since_tizen>
1040             public const uint AddressBookId = (uint)Property.Id.MyProfileAddressBookId;
1041             /// <summary>
1042             /// Image thumbnail path of the profile.
1043             /// </summary>
1044             /// <since_tizen> 4 </since_tizen>
1045             public const uint ThumbnailPath = (uint)Property.Id.MyProfileThumbnail;
1046             /// <summary>
1047             /// Unique identifier.
1048             /// </summary>
1049             /// <since_tizen> 4 </since_tizen>
1050             public const uint UId = (uint)Property.Id.MyProfileUId;
1051             /// <summary>
1052             /// Last changed profile time.
1053             /// </summary>
1054             /// <since_tizen> 4 </since_tizen>
1055             public const uint ChangedTime = (uint)Property.Id.MyProfileChangedTime;
1056             /// <summary>
1057             /// Name child record (single).
1058             /// </summary>
1059             /// <since_tizen> 4 </since_tizen>
1060             public const uint Name = (uint)Property.Id.MyProfileName;
1061             /// <summary>
1062             /// Company child record (multiple).
1063             /// </summary>
1064             /// <since_tizen> 4 </since_tizen>
1065             public const uint Company = (uint)Property.Id.MyProfileCompany;
1066             /// <summary>
1067             /// Note child record (multiple).
1068             /// </summary>
1069             /// <since_tizen> 4 </since_tizen>
1070             public const uint Note = (uint)Property.Id.MyProfileNote;
1071             /// <summary>
1072             /// Number child record (multiple).
1073             /// </summary>
1074             /// <since_tizen> 4 </since_tizen>
1075             public const uint Number = (uint)Property.Id.MyProfileNumber;
1076             /// <summary>
1077             /// Email child record (multiple).
1078             /// </summary>
1079             /// <since_tizen> 4 </since_tizen>
1080             public const uint Email = (uint)Property.Id.MyProfileEmail;
1081             /// <summary>
1082             /// Event child record (multiple).
1083             /// </summary>
1084             /// <since_tizen> 4 </since_tizen>
1085             public const uint Event = (uint)Property.Id.MyProfileEvent;
1086             /// <summary>
1087             /// Messenger child record (multiple).
1088             /// </summary>
1089             /// <since_tizen> 4 </since_tizen>
1090             public const uint Messenger = (uint)Property.Id.MyProfileMessenger;
1091             /// <summary>
1092             /// Address child record (multiple).
1093             /// </summary>
1094             /// <since_tizen> 4 </since_tizen>
1095             public const uint Address = (uint)Property.Id.MyProfileAddress;
1096             /// <summary>
1097             /// URL child record (multiple).
1098             /// </summary>
1099             /// <since_tizen> 4 </since_tizen>
1100             public const uint URL = (uint)Property.Id.MyProfileURL;
1101             /// <summary>
1102             /// Nickname child record (multiple).
1103             /// </summary>
1104             /// <since_tizen> 4 </since_tizen>
1105             public const uint Nickname = (uint)Property.Id.MyProfileNickname;
1106             /// <summary>
1107             /// Profile child record (multiple).
1108             /// </summary>
1109             /// <since_tizen> 4 </since_tizen>
1110             public const uint Profile = (uint)Property.Id.MyProfileProfile;
1111             /// <summary>
1112             /// Relationship child record (multiple).
1113             /// </summary>
1114             /// <since_tizen> 4 </since_tizen>
1115             public const uint Relationship = (uint)Property.Id.MyProfileRelationship;
1116             /// <summary>
1117             /// Image child record (multiple).
1118             /// </summary>
1119             /// <since_tizen> 4 </since_tizen>
1120             public const uint Image = (uint)Property.Id.MyProfileImage;
1121             /// <summary>
1122             /// Extension child record (multiple).
1123             /// </summary>
1124             /// <since_tizen> 4 </since_tizen>
1125             public const uint Extension = (uint)Property.Id.MyProfileExtension;
1126             /// <summary>
1127             /// SIP child record (multiple).
1128             /// </summary>
1129             /// <since_tizen> 4 </since_tizen>
1130             public const uint Sip = (uint)Property.Id.MyProfileSip;
1131         }
1132
1133         /// <summary>
1134         /// Describes the properties of a Name record.
1135         /// </summary>
1136         /// <since_tizen> 4 </since_tizen>
1137         public static class Name
1138         {
1139             /// <summary>
1140             /// Identifier of this contacts name view.
1141             /// </summary>
1142             /// <since_tizen> 4 </since_tizen>
1143             public const string Uri = "tizen.contacts_view.name";
1144             /// <summary>
1145             /// Database record ID of the name.
1146             /// </summary>
1147             /// <since_tizen> 4 </since_tizen>
1148             public const uint Id = (uint)Property.Id.NameId;
1149             /// <summary>
1150             /// Contacts ID that the name record belongs to.
1151             /// </summary>
1152             /// <since_tizen> 4 </since_tizen>
1153             public const uint ContactId = (uint)Property.Id.NameContactId;
1154             /// <summary>
1155             /// First name.
1156             /// </summary>
1157             /// <since_tizen> 4 </since_tizen>
1158             public const uint First = (uint)Property.Id.NameFirst;
1159             /// <summary>
1160             /// Last name.
1161             /// </summary>
1162             /// <since_tizen> 4 </since_tizen>
1163             public const uint Last = (uint)Property.Id.NameLast;
1164             /// <summary>
1165             /// Middle name.
1166             /// </summary>
1167             /// <since_tizen> 4 </since_tizen>
1168             public const uint Addition = (uint)Property.Id.NameAddition;
1169             /// <summary>
1170             /// Suffix.
1171             /// </summary>
1172             /// <since_tizen> 4 </since_tizen>
1173             public const uint Suffix = (uint)Property.Id.NameSuffix;
1174             /// <summary>
1175             /// Prefix.
1176             /// </summary>
1177             /// <since_tizen> 4 </since_tizen>
1178             public const uint Prefix = (uint)Property.Id.NamePrefix;
1179             /// <summary>
1180             /// Pronounce the first name.
1181             /// </summary>
1182             /// <since_tizen> 4 </since_tizen>
1183             public const uint PhoneticFirst = (uint)Property.Id.NamePhoneticFirst;
1184             /// <summary>
1185             /// Pronounce the middle name.
1186             /// </summary>
1187             /// <since_tizen> 4 </since_tizen>
1188             public const uint PhoneticMiddle = (uint)Property.Id.NamePhoneticMiddle;
1189             /// <summary>
1190             /// Pronounce the last name.
1191             /// </summary>
1192             /// <since_tizen> 4 </since_tizen>
1193             public const uint PhoneticLast = (uint)Property.Id.NamePhoneticLast;
1194         }
1195
1196         /// <summary>
1197         /// Describes the properties of a Number record.
1198         /// </summary>
1199         /// <since_tizen> 4 </since_tizen>
1200         public static class Number
1201         {
1202             /// <summary>
1203             /// Identifier of this contacts number view.
1204             /// </summary>
1205             /// <since_tizen> 4 </since_tizen>
1206             public const string Uri = "tizen.contacts_view.number";
1207             /// <summary>
1208             /// Database record ID of the number.
1209             /// </summary>
1210             /// <since_tizen> 4 </since_tizen>
1211             public const uint Id = (uint)Property.Id.NumberId;
1212             /// <summary>
1213             /// Contact ID that the number belongs to.
1214             /// </summary>
1215             /// <since_tizen> 4 </since_tizen>
1216             public const uint ContactId = (uint)Property.Id.NumberContactId;
1217             /// <summary>
1218             /// Number type, refer to the Types.
1219             /// </summary>
1220             /// <since_tizen> 4 </since_tizen>
1221             public const uint Type = (uint)Property.Id.NumberType;
1222             /// <summary>
1223             /// Custom number type label, when the number type is Types.Custom.
1224             /// </summary>
1225             /// <since_tizen> 4 </since_tizen>
1226             public const uint Label = (uint)Property.Id.NumberLabel;
1227             /// <summary>
1228             /// The number is the default number or not.
1229             /// </summary>
1230             /// <since_tizen> 4 </since_tizen>
1231             public const uint IsDefault = (uint)Property.Id.NumberIsDefault;
1232             /// <summary>
1233             /// Number.
1234             /// </summary>
1235             /// <since_tizen> 4 </since_tizen>
1236             public const uint NumberData = (uint)Property.Id.NumberNumber;
1237             /// <summary>
1238             /// You can only use this property for the search filter.
1239             /// </summary>
1240             /// <since_tizen> 4 </since_tizen>
1241             public const uint NormalizedNumber = (uint)Property.Id.NumberNormalizedNumber;
1242             /// <summary>
1243             /// You can only use this property for the search filter.
1244             /// </summary>
1245             /// <since_tizen> 4 </since_tizen>
1246             public const uint CleanedNumber = (uint)Property.Id.NumberCleanedNumber;
1247             /// <summary>
1248             /// You can only use this property for the search filter.
1249             /// </summary>
1250             /// <since_tizen> 4 </since_tizen>
1251             public const uint NumberFilter = (uint)Property.Id.NumberNumberFilter;
1252
1253             /// <summary>
1254             /// Enumeration for the number types.
1255             /// </summary>
1256             /// <since_tizen> 4 </since_tizen>
1257             [Flags]
1258             public enum Types
1259             {
1260                 /// <summary>
1261                 /// Other number type.
1262                 /// </summary>
1263                 /// <since_tizen> 4 </since_tizen>
1264                 Other = 0,
1265                 /// <summary>
1266                 /// Custom number type.
1267                 /// </summary>
1268                 /// <since_tizen> 4 </since_tizen>
1269                 Custom = 1 << 0,
1270                 /// <summary>
1271                 /// A telephone number associated with a residence.
1272                 /// </summary>
1273                 /// <since_tizen> 4 </since_tizen>
1274                 Home = 1 << 1,
1275                 /// <summary>
1276                 /// A telephone number associated with a place of work.
1277                 /// </summary>
1278                 /// <since_tizen> 4 </since_tizen>
1279                 Work = 1 << 2,
1280                 /// <summary>
1281                 /// A voice telephone number.
1282                 /// </summary>
1283                 /// <since_tizen> 4 </since_tizen>
1284                 Voice = 1 << 3,
1285                 /// <summary>
1286                 /// A facsimile telephone number.
1287                 /// </summary>
1288                 /// <since_tizen> 4 </since_tizen>
1289                 Fax = 1 << 4,
1290                 /// <summary>
1291                 /// The telephone number has voice messaging support.
1292                 /// </summary>
1293                 /// <since_tizen> 4 </since_tizen>
1294                 Message = 1 << 5,
1295                 /// <summary>
1296                 /// A cellular telephone number.
1297                 /// </summary>
1298                 /// <since_tizen> 4 </since_tizen>
1299                 Cell = 1 << 6,
1300                 /// <summary>
1301                 /// A paging device telephone number.
1302                 /// </summary>
1303                 /// <since_tizen> 4 </since_tizen>
1304                 Pager = 1 << 7,
1305                 /// <summary>
1306                 /// A bulletin board system telephone number.
1307                 /// </summary>
1308                 /// <since_tizen> 4 </since_tizen>
1309                 BBS = 1 << 8,
1310                 /// <summary>
1311                 /// A modem connected telephone number.
1312                 /// </summary>
1313                 /// <since_tizen> 4 </since_tizen>
1314                 Modem = 1 << 9,
1315                 /// <summary>
1316                 /// A car-phone telephone number.
1317                 /// </summary>
1318                 /// <since_tizen> 4 </since_tizen>
1319                 Car = 1 << 10,
1320                 /// <summary>
1321                 /// An ISDN service telephone number.
1322                 /// </summary>
1323                 /// <since_tizen> 4 </since_tizen>
1324                 ISDN = 1 << 11,
1325                 /// <summary>
1326                 /// A video conferencing telephone number.
1327                 /// </summary>
1328                 /// <since_tizen> 4 </since_tizen>
1329                 Video = 1 << 12,
1330                 /// <summary>
1331                 /// A personal communication services telephone number.
1332                 /// </summary>
1333                 /// <since_tizen> 4 </since_tizen>
1334                 PCS = 1 << 13,
1335                 /// <summary>
1336                 /// A company main number.
1337                 /// </summary>
1338                 /// <since_tizen> 4 </since_tizen>
1339                 Company = 1 << 14,
1340                 /// <summary>
1341                 /// A radio phone number.
1342                 /// </summary>
1343                 /// <since_tizen> 4 </since_tizen>
1344                 Radio = 1 << 15,
1345                 /// <summary>
1346                 /// An additional type for the main.
1347                 /// </summary>
1348                 /// <since_tizen> 4 </since_tizen>
1349                 Main = 1 << 29,
1350                 /// <summary>
1351                 /// An additional type for the assistant.
1352                 /// </summary>
1353                 /// <since_tizen> 4 </since_tizen>
1354                 Assistant = 1 << 30,
1355             }
1356         }
1357
1358         /// <summary>
1359         /// Describes the properties of an Email record.
1360         /// </summary>
1361         /// <since_tizen> 4 </since_tizen>
1362         public static class Email
1363         {
1364             /// <summary>
1365             /// Identifier of this contacts email view.
1366             /// </summary>
1367             /// <since_tizen> 4 </since_tizen>
1368             public const string Uri = "tizen.contacts_view.email";
1369             /// <summary>
1370             /// Database record ID of the email.
1371             /// </summary>
1372             /// <since_tizen> 4 </since_tizen>
1373             public const uint Id = (uint)Property.Id.EmailId;
1374             /// <summary>
1375             /// Contact ID that the email belongs to.
1376             /// </summary>
1377             /// <since_tizen> 4 </since_tizen>
1378             public const uint ContactId = (uint)Property.Id.EmailContactId;
1379             /// <summary>
1380             /// Email type, refer to the Types.
1381             /// </summary>
1382             /// <since_tizen> 4 </since_tizen>
1383             public const uint Type = (uint)Property.Id.EmailType;
1384             /// <summary>
1385             /// Custom mail type label, when the email type is Types.Custom.
1386             /// </summary>
1387             /// <since_tizen> 4 </since_tizen>
1388             public const uint Label = (uint)Property.Id.EmailLabel;
1389             /// <summary>
1390             /// The email is default email or not.
1391             /// </summary>
1392             /// <since_tizen> 4 </since_tizen>
1393             public const uint IsDefault = (uint)Property.Id.EmailIsDefault;
1394             /// <summary>
1395             /// Email address.
1396             /// </summary>
1397             /// <since_tizen> 4 </since_tizen>
1398             public const uint Address = (uint)Property.Id.EmailEmail;
1399
1400             /// <summary>
1401             /// Enumeration for the contact email types.
1402             /// </summary>
1403             /// <since_tizen> 4 </since_tizen>
1404             [Flags]
1405             public enum Types
1406             {
1407                 /// <summary>
1408                 /// Other email type.
1409                 /// </summary>
1410                 /// <since_tizen> 4 </since_tizen>
1411                 Other = 0,
1412                 /// <summary>
1413                 /// Custom email type.
1414                 /// </summary>
1415                 /// <since_tizen> 4 </since_tizen>
1416                 Custom = 1 << 0,
1417                 /// <summary>
1418                 /// An email address associated with a residence.
1419                 /// </summary>
1420                 /// <since_tizen> 4 </since_tizen>
1421                 Home = 1 << 1,
1422                 /// <summary>
1423                 /// An email address associated with a place of work.
1424                 /// </summary>
1425                 /// <since_tizen> 4 </since_tizen>
1426                 Work = 1 << 2,
1427                 /// <summary>
1428                 /// A mobile email address.
1429                 /// </summary>
1430                 /// <since_tizen> 4 </since_tizen>
1431                 Mobile = 1 << 3,
1432             }
1433         }
1434
1435         /// <summary>
1436         /// Describes the properties of an Address record.
1437         /// </summary>
1438         /// <since_tizen> 4 </since_tizen>
1439         public static class Address
1440         {
1441             /// <summary>
1442             /// Identifier of this contacts address view.
1443             /// </summary>
1444             /// <since_tizen> 4 </since_tizen>
1445             public const string Uri = "tizen.contacts_view.address";
1446             /// <summary>
1447             /// Database record ID of the address.
1448             /// </summary>
1449             /// <since_tizen> 4 </since_tizen>
1450             public const uint Id = (uint)Property.Id.AddressId;
1451             /// <summary>
1452             /// Contact ID that the address belongs to.
1453             /// </summary>
1454             /// <since_tizen> 4 </since_tizen>
1455             public const uint ContactId = (uint)Property.Id.AddressContactId;
1456             /// <summary>
1457             /// Address type, refer to the Types.
1458             /// </summary>
1459             /// <since_tizen> 4 </since_tizen>
1460             public const uint Type = (uint)Property.Id.AddressType;
1461             /// <summary>
1462             /// Address type label, when the address type is Types.Custom.
1463             /// </summary>
1464             /// <since_tizen> 4 </since_tizen>
1465             public const uint Label = (uint)Property.Id.AddressLabel;
1466             /// <summary>
1467             /// Post office box.
1468             /// </summary>
1469             /// <since_tizen> 4 </since_tizen>
1470             public const uint Postbox = (uint)Property.Id.AddressPostbox;
1471             /// <summary>
1472             /// Postal code.
1473             /// </summary>
1474             /// <since_tizen> 4 </since_tizen>
1475             public const uint PostalCode = (uint)Property.Id.AddressPostalCode;
1476             /// <summary>
1477             /// Region.
1478             /// </summary>
1479             /// <since_tizen> 4 </since_tizen>
1480             public const uint Region = (uint)Property.Id.AddressRegion;
1481             /// <summary>
1482             /// Locality.
1483             /// </summary>
1484             /// <since_tizen> 4 </since_tizen>
1485             public const uint Locality = (uint)Property.Id.AddressLocality;
1486             /// <summary>
1487             /// Street.
1488             /// </summary>
1489             /// <since_tizen> 4 </since_tizen>
1490             public const uint Street = (uint)Property.Id.AddressStreet;
1491             /// <summary>
1492             /// Country.
1493             /// </summary>
1494             /// <since_tizen> 4 </since_tizen>
1495             public const uint Country = (uint)Property.Id.AddressCountry;
1496             /// <summary>
1497             /// Extended address.
1498             /// </summary>
1499             /// <since_tizen> 4 </since_tizen>
1500             public const uint Extended = (uint)Property.Id.AddressExtended;
1501             /// <summary>
1502             /// The address is the default or not.
1503             /// </summary>
1504             /// <since_tizen> 4 </since_tizen>
1505             public const uint IsDefault = (uint)Property.Id.AddressIsDefault;
1506
1507             /// <summary>
1508             /// Enumeration for the contact address types.
1509             /// </summary>
1510             /// <since_tizen> 4 </since_tizen>
1511             [Flags]
1512             public enum Types
1513             {
1514                 /// <summary>
1515                 /// Other address type.
1516                 /// </summary>
1517                 /// <since_tizen> 4 </since_tizen>
1518                 Other = 0,
1519                 /// <summary>
1520                 /// Custom address type.
1521                 /// </summary>
1522                 /// <since_tizen> 4 </since_tizen>
1523                 Custom = 1 << 0,
1524                 /// <summary>
1525                 /// A delivery address for a residence.
1526                 /// </summary>
1527                 /// <since_tizen> 4 </since_tizen>
1528                 Home = 1 << 1,
1529                 /// <summary>
1530                 /// A delivery address for a place of work.
1531                 /// </summary>
1532                 /// <since_tizen> 4 </since_tizen>
1533                 Work = 1 << 2,
1534                 /// <summary>
1535                 /// A domestic delivery address.
1536                 /// </summary>
1537                 /// <since_tizen> 4 </since_tizen>
1538                 Domestic = 1 << 3,
1539                 /// <summary>
1540                 /// An international delivery address.
1541                 /// </summary>
1542                 /// <since_tizen> 4 </since_tizen>
1543                 International = 1 << 4,
1544                 /// <summary>
1545                 /// A postal delivery address.
1546                 /// </summary>
1547                 /// <since_tizen> 4 </since_tizen>
1548                 Postal = 1 << 5,
1549                 /// <summary>
1550                 /// A parcel delivery address.
1551                 /// </summary>
1552                 /// <since_tizen> 4 </since_tizen>
1553                 Parcel = 1 << 6,
1554             }
1555         }
1556
1557         /// <summary>
1558         /// Describes the properties of a Note record.
1559         /// </summary>
1560         /// <since_tizen> 4 </since_tizen>
1561         public static class Note
1562         {
1563             /// <summary>
1564             /// Identifier of this contacts note view.
1565             /// </summary>
1566             /// <since_tizen> 4 </since_tizen>
1567             public const string Uri = "tizen.contacts_view.note";
1568             /// <summary>
1569             /// Database record ID of the note.
1570             /// </summary>
1571             /// <since_tizen> 4 </since_tizen>
1572             public const uint Id = (uint)Property.Id.NoteId;
1573             /// <summary>
1574             /// Contact ID that the note belongs to.
1575             /// </summary>
1576             /// <since_tizen> 4 </since_tizen>
1577             public const uint ContactId = (uint)Property.Id.NoteContactId;
1578             /// <summary>
1579             /// Note contents.
1580             /// </summary>
1581             /// <since_tizen> 4 </since_tizen>
1582             public const uint Contents = (uint)Property.Id.NoteNote;
1583         }
1584
1585         /// <summary>
1586         /// Describes the properties of a URL record.
1587         /// </summary>
1588         /// <since_tizen> 4 </since_tizen>
1589         public static class URL
1590         {
1591             /// <summary>
1592             /// Identifier of this contacts URL view.
1593             /// </summary>
1594             /// <since_tizen> 4 </since_tizen>
1595             public const string Uri = "tizen.contacts_view.url";
1596             /// <summary>
1597             /// Database record ID of the URL.
1598             /// </summary>
1599             /// <since_tizen> 4 </since_tizen>
1600             public const uint Id = (uint)Property.Id.URLId;
1601             /// <summary>
1602             /// Contact ID that the URL belongs to.
1603             /// </summary>
1604             /// <since_tizen> 4 </since_tizen>
1605             public const uint ContactId = (uint)Property.Id.URLContactId;
1606             /// <summary>
1607             /// URL type, refer to the TypeValue.
1608             /// </summary>
1609             /// <since_tizen> 4 </since_tizen>
1610             public const uint Type = (uint)Property.Id.URLType;
1611             /// <summary>
1612             /// Custom URL type label, when the URL type is TypeValue.Custom.
1613             /// </summary>
1614             /// <since_tizen> 4 </since_tizen>
1615             public const uint Label = (uint)Property.Id.URLLabel;
1616             /// <summary>
1617             /// URL.
1618             /// </summary>
1619             /// <since_tizen> 4 </since_tizen>
1620             public const uint URLData = (uint)Property.Id.URLData;
1621
1622             /// <summary>
1623             /// Enumeration for the Contact URL types.
1624             /// </summary>
1625             /// <since_tizen> 4 </since_tizen>
1626             public enum TypeValue
1627             {
1628                 /// <summary>
1629                 /// Other URL type.
1630                 /// </summary>
1631                 /// <since_tizen> 4 </since_tizen>
1632                 Other,
1633                 /// <summary>
1634                 /// Custom URL type.
1635                 /// </summary>
1636                 /// <since_tizen> 4 </since_tizen>
1637                 Custom,
1638                 /// <summary>
1639                 /// Home URL type.
1640                 /// </summary>
1641                 /// <since_tizen> 4 </since_tizen>
1642                 Home,
1643                 /// <summary>
1644                 /// Work URL type.
1645                 /// </summary>
1646                 /// <since_tizen> 4 </since_tizen>
1647                 Work,
1648             }
1649         }
1650
1651         /// <summary>
1652         /// Describes the properties of an Event record.
1653         /// </summary>
1654         /// <since_tizen> 4 </since_tizen>
1655         [SuppressMessage("Microsoft.Naming", "CA1716:IdentifiersShouldNotMatchKeywords")]
1656         public static class Event
1657         {
1658             /// <summary>
1659             /// Identifier of this contacts event view.
1660             /// </summary>
1661             /// <since_tizen> 4 </since_tizen>
1662             public const string Uri = "tizen.contacts_view.event";
1663             /// <summary>
1664             /// Database record ID of the event.
1665             /// </summary>
1666             /// <since_tizen> 4 </since_tizen>
1667             public const uint Id = (uint)Property.Id.EventId;
1668             /// <summary>
1669             /// Contact ID that the event belongs to.
1670             /// </summary>
1671             /// <since_tizen> 4 </since_tizen>
1672             public const uint ContactId = (uint)Property.Id.EventContactId;
1673             /// <summary>
1674             /// Event type, refer to the TypeValue.
1675             /// </summary>
1676             /// <since_tizen> 4 </since_tizen>
1677             public const uint Type = (uint)Property.Id.EventType;
1678             /// <summary>
1679             /// Custom event type label, when the event type is TypeValue.Custom.
1680             /// </summary>
1681             /// <since_tizen> 4 </since_tizen>
1682             public const uint Label = (uint)Property.Id.EventLabel;
1683             /// <summary>
1684             /// Event date(YYYYMMDD). For example, 2014/1/1 : 20140101. Even if the calendar_type is set as CONTACTS_EVENT_CALENDAR_TYPE_CHINESE, you should set the Gregorian date.
1685             /// </summary>
1686             /// <since_tizen> 4 </since_tizen>
1687             public const uint Date = (uint)Property.Id.EventDate;
1688             /// <summary>
1689             /// Calendar type, refer to the CalendarType.
1690             /// </summary>
1691             /// <since_tizen> 4 </since_tizen>
1692             public const uint IsLeapMonth = (uint)Property.Id.EventIsLeapMonth;
1693
1694             /// <summary>
1695             /// Enumeration for the Contact event types.
1696             /// </summary>
1697             /// <since_tizen> 4 </since_tizen>
1698             public enum TypeValue
1699             {
1700                 /// <summary>
1701                 /// Other event type.
1702                 /// </summary>
1703                 /// <since_tizen> 4 </since_tizen>
1704                 Other,
1705                 /// <summary>
1706                 /// Custom event type.
1707                 /// </summary>
1708                 /// <since_tizen> 4 </since_tizen>
1709                 Custom,
1710                 /// <summary>
1711                 /// Birthday event type.
1712                 /// </summary>
1713                 /// <since_tizen> 4 </since_tizen>
1714                 Birthday,
1715                 /// <summary>
1716                 /// Anniversary event type.
1717                 /// </summary>
1718                 /// <since_tizen> 4 </since_tizen>
1719                 Anniversary
1720             }
1721
1722             /// <summary>
1723             /// Enumeration for the Contact event calendar types.
1724             /// </summary>
1725             /// <since_tizen> 4 </since_tizen>
1726             public enum CalendarType
1727             {
1728                 /// <summary>
1729                 /// Gregorian calendar.
1730                 /// </summary>
1731                 /// <since_tizen> 4 </since_tizen>
1732                 Gregorian,
1733                 /// <summary>
1734                 /// Chinese calendar.
1735                 /// </summary>
1736                 /// <since_tizen> 4 </since_tizen>
1737                 Chinese
1738             }
1739         }
1740
1741         /// <summary>
1742         /// Describes the properties of a Relationship record.
1743         /// </summary>
1744         /// <since_tizen> 4 </since_tizen>
1745         public static class Relationship
1746         {
1747             /// <summary>
1748             /// Identifier of this relationship view.
1749             /// </summary>
1750             /// <since_tizen> 4 </since_tizen>
1751             public const string Uri = "tizen.contacts_view.relationship";
1752             /// <summary>
1753             /// Database record ID of the relationship.
1754             /// </summary>
1755             /// <since_tizen> 4 </since_tizen>
1756             public const uint Id = (uint)Property.Id.RelationshipId;
1757             /// <summary>
1758             /// Contact ID that the relationship belongs to.
1759             /// </summary>
1760             /// <since_tizen> 4 </since_tizen>
1761             public const uint ContactId = (uint)Property.Id.RelationshipContactId;
1762             /// <summary>
1763             /// Relationship type, refer to the TypeValue.
1764             /// </summary>
1765             /// <since_tizen> 4 </since_tizen>
1766             public const uint Type = (uint)Property.Id.RelationshipType;
1767             /// <summary>
1768             /// Custom relationship type label, when the relationship type is TypeValue.Custom.
1769             /// </summary>
1770             /// <since_tizen> 4 </since_tizen>
1771             public const uint Label = (uint)Property.Id.RelationshipLabel;
1772             /// <summary>
1773             /// Selected contact name that the relationship belongs to.
1774             /// </summary>
1775             /// <since_tizen> 4 </since_tizen>
1776             public const uint Name = (uint)Property.Id.RelationshipName;
1777
1778             /// <summary>
1779             /// Enumeration for the contact relationship types.
1780             /// </summary>
1781             /// <since_tizen> 4 </since_tizen>
1782             public enum TypeValue
1783             {
1784                 /// <summary>
1785                 /// Other relationship type.
1786                 /// </summary>
1787                 /// <since_tizen> 4 </since_tizen>
1788                 Other,
1789                 /// <summary>
1790                 /// Assistant type.
1791                 /// </summary>
1792                 /// <since_tizen> 4 </since_tizen>
1793                 Assistant,
1794                 /// <summary>
1795                 /// Brother type.
1796                 /// </summary>
1797                 /// <since_tizen> 4 </since_tizen>
1798                 Brother,
1799                 /// <summary>
1800                 /// Child type.
1801                 /// </summary>
1802                 /// <since_tizen> 4 </since_tizen>
1803                 Child,
1804                 /// <summary>
1805                 /// Domestic Partner type.
1806                 /// </summary>
1807                 /// <since_tizen> 4 </since_tizen>
1808                 DomesticPartner,
1809                 /// <summary>
1810                 /// Father type.
1811                 /// </summary>
1812                 /// <since_tizen> 4 </since_tizen>
1813                 Father,
1814                 /// <summary>
1815                 /// Friend type.
1816                 /// </summary>
1817                 /// <since_tizen> 4 </since_tizen>
1818                 Friend,
1819                 /// <summary>
1820                 /// Manager type.
1821                 /// </summary>
1822                 /// <since_tizen> 4 </since_tizen>
1823                 Manager,
1824                 /// <summary>
1825                 /// Mother type.
1826                 /// </summary>
1827                 /// <since_tizen> 4 </since_tizen>
1828                 Mother,
1829                 /// <summary>
1830                 /// Parent type.
1831                 /// </summary>
1832                 /// <since_tizen> 4 </since_tizen>
1833                 Parent,
1834                 /// <summary>
1835                 /// Partner type.
1836                 /// </summary>
1837                 /// <since_tizen> 4 </since_tizen>
1838                 Partner,
1839                 /// <summary>
1840                 /// Referred by type.
1841                 /// </summary>
1842                 /// <since_tizen> 4 </since_tizen>
1843                 ReferredBy,
1844                 /// <summary>
1845                 /// Relative type.
1846                 /// </summary>
1847                 /// <since_tizen> 4 </since_tizen>
1848                 Relative,
1849                 /// <summary>
1850                 /// Sister type.
1851                 /// </summary>
1852                 /// <since_tizen> 4 </since_tizen>
1853                 Sister,
1854                 /// <summary>
1855                 /// Spouse type.
1856                 /// </summary>
1857                 /// <since_tizen> 4 </since_tizen>
1858                 Spouse,
1859                 /// <summary>
1860                 /// Custom type.
1861                 /// </summary>
1862                 /// <since_tizen> 4 </since_tizen>
1863                 Custom,
1864             }
1865         }
1866
1867         /// <summary>
1868         /// Describes the properties of an Image record.
1869         /// </summary>
1870         /// <since_tizen> 4 </since_tizen>
1871         public static class Image
1872         {
1873             /// <summary>
1874             /// Identifier of this contacts image view.
1875             /// </summary>
1876             /// <since_tizen> 4 </since_tizen>
1877             public const string Uri = "tizen.contacts_view.image";
1878             /// <summary>
1879             /// Database record ID of the image.
1880             /// </summary>
1881             /// <since_tizen> 4 </since_tizen>
1882             public const uint Id = (uint)Property.Id.ImageId;
1883             /// <summary>
1884             /// Contact ID that the image belongs to.
1885             /// </summary>
1886             /// <since_tizen> 4 </since_tizen>
1887             public const uint ContactId = (uint)Property.Id.ImageContactId;
1888             /// <summary>
1889             /// Image type, refer to the TypeValue.
1890             /// </summary>
1891             /// <since_tizen> 4 </since_tizen>
1892             public const uint Type = (uint)Property.Id.ImageType;
1893             /// <summary>
1894             /// Custom image type label, when the image type is TypeValue.Custom.
1895             /// </summary>
1896             /// <since_tizen> 4 </since_tizen>
1897             public const uint Label = (uint)Property.Id.ImageLabel;
1898             /// <summary>
1899             /// Image thumbnail path.
1900             /// </summary>
1901             /// <since_tizen> 4 </since_tizen>
1902             public const uint Path = (uint)Property.Id.ImagePath;
1903             /// <summary>
1904             /// The image is the default or not.
1905             /// </summary>
1906             /// <since_tizen> 4 </since_tizen>
1907             public const uint IsDefault = (uint)Property.Id.ImageIsDefault;
1908
1909             /// <summary>
1910             /// Enumeration for the contact image types.
1911             /// </summary>
1912             /// <since_tizen> 4 </since_tizen>
1913             public enum TypeValue
1914             {
1915                 /// <summary>
1916                 /// Other type.
1917                 /// </summary>
1918                 /// <since_tizen> 4 </since_tizen>
1919                 Other,
1920                 /// <summary>
1921                 /// Custom type.
1922                 /// </summary>
1923                 /// <since_tizen> 4 </since_tizen>
1924                 Custom,
1925             }
1926         }
1927
1928         /// <summary>
1929         /// Describes the properties of a Company record.
1930         /// </summary>
1931         /// <since_tizen> 4 </since_tizen>
1932         public static class Company
1933         {
1934             /// <summary>
1935             /// Identifier of this contacts company view.
1936             /// </summary>
1937             /// <since_tizen> 4 </since_tizen>
1938             public const string Uri = "tizen.contacts_view.company";
1939             /// <summary>
1940             /// Database record ID of the company.
1941             /// </summary>
1942             /// <since_tizen> 4 </since_tizen>
1943             public const uint Id = (uint)Property.Id.CompanyId;
1944             /// <summary>
1945             /// Contact ID that the company belongs to.
1946             /// </summary>
1947             /// <since_tizen> 4 </since_tizen>
1948             public const uint ContactId = (uint)Property.Id.CompanyContactId;
1949             /// <summary>
1950             /// Company type, refer to the TypeValue.
1951             /// </summary>
1952             /// <since_tizen> 4 </since_tizen>
1953             public const uint Type = (uint)Property.Id.CompanyType;
1954             /// <summary>
1955             /// Custom company type label, when the company type is TypeValue.Custom.
1956             /// </summary>
1957             /// <since_tizen> 4 </since_tizen>
1958             public const uint Label = (uint)Property.Id.CompanyLabel;
1959             /// <summary>
1960             /// Company name.
1961             /// </summary>
1962             /// <since_tizen> 4 </since_tizen>
1963             public const uint Name = (uint)Property.Id.CompanyName;
1964             /// <summary>
1965             /// Department.
1966             /// </summary>
1967             /// <since_tizen> 4 </since_tizen>
1968             public const uint Department = (uint)Property.Id.CompanyDepartment;
1969             /// <summary>
1970             /// Job title.
1971             /// </summary>
1972             /// <since_tizen> 4 </since_tizen>
1973             public const uint JobTitle = (uint)Property.Id.CompanyJobTitle;
1974             /// <summary>
1975             /// Assistant name.
1976             /// </summary>
1977             /// <since_tizen> 4 </since_tizen>
1978             public const uint AssistantName = (uint)Property.Id.CompanyAssistantName;
1979             /// <summary>
1980             /// Role.
1981             /// </summary>
1982             /// <since_tizen> 4 </since_tizen>
1983             public const uint Role = (uint)Property.Id.CompanyRole;
1984             /// <summary>
1985             /// Company logo image file path.
1986             /// </summary>
1987             /// <since_tizen> 4 </since_tizen>
1988             public const uint Logo = (uint)Property.Id.CompanyLogo;
1989             /// <summary>
1990             /// Company location.
1991             /// </summary>
1992             /// <since_tizen> 4 </since_tizen>
1993             public const uint Location = (uint)Property.Id.CompanyLocation;
1994             /// <summary>
1995             /// Description.
1996             /// </summary>
1997             /// <since_tizen> 4 </since_tizen>
1998             public const uint Description = (uint)Property.Id.CompanyDescription;
1999             /// <summary>
2000             /// Pronounce the company name.
2001             /// </summary>
2002             /// <since_tizen> 4 </since_tizen>
2003             public const uint PhoneticName = (uint)Property.Id.CompanyPhoneticName;
2004
2005             /// <summary>
2006             /// Enumeration for the contact company types.
2007             /// </summary>
2008             /// <since_tizen> 4 </since_tizen>
2009             public enum TypeValue
2010             {
2011                 /// <summary>
2012                 /// Other type.
2013                 /// </summary>
2014                 /// <since_tizen> 4 </since_tizen>
2015                 Other = 0,
2016                 /// <summary>
2017                 /// Custom type.
2018                 /// </summary>
2019                 /// <since_tizen> 4 </since_tizen>
2020                 Custom = 1 << 0,
2021                 /// <summary>
2022                 /// Work type.
2023                 /// </summary>
2024                 /// <since_tizen> 4 </since_tizen>
2025                 Work = 1 << 1,
2026             }
2027         }
2028
2029         /// <summary>
2030         /// Describes the properties of a Nickname record.
2031         /// </summary>
2032         /// <since_tizen> 4 </since_tizen>
2033         public static class Nickname
2034         {
2035             /// <summary>
2036             /// Identifier of this contacts nickname view.
2037             /// </summary>
2038             /// <since_tizen> 4 </since_tizen>
2039             public const string Uri = "tizen.contacts_view.nickname";
2040             /// <summary>
2041             /// Database record ID of the nickname.
2042             /// </summary>
2043             /// <since_tizen> 4 </since_tizen>
2044             public const uint Id = (uint)Property.Id.NicknameId;
2045             /// <summary>
2046             /// Contact ID that the nickname belongs to.
2047             /// </summary>
2048             /// <since_tizen> 4 </since_tizen>
2049             public const uint ContactId = (uint)Property.Id.NicknameContactId;
2050             /// <summary>
2051             /// Nickname.
2052             /// </summary>
2053             /// <since_tizen> 4 </since_tizen>
2054             public const uint Name = (uint)Property.Id.NicknameName;
2055         }
2056
2057         /// <summary>
2058         /// Describes the properties of a Messenger record.
2059         /// </summary>
2060         /// <since_tizen> 4 </since_tizen>
2061         public static class Messenger
2062         {
2063             /// <summary>
2064             /// Identifier of this contacts messenger view.
2065             /// </summary>
2066             /// <since_tizen> 4 </since_tizen>
2067             public const string Uri = "tizen.contacts_view.messenger";
2068             /// <summary>
2069             /// Database record ID of the messenger.
2070             /// </summary>
2071             /// <since_tizen> 4 </since_tizen>
2072             public const uint Id = (uint)Property.Id.MessengerId;
2073             /// <summary>
2074             /// Contact ID that the messenger belongs to.
2075             /// </summary>
2076             /// <since_tizen> 4 </since_tizen>
2077             public const uint ContactId = (uint)Property.Id.MessengerContactId;
2078             /// <summary>
2079             /// Messenger type, refer to the TypeValue.
2080             /// </summary>
2081             /// <since_tizen> 4 </since_tizen>
2082             public const uint Type = (uint)Property.Id.MessengerType;
2083             /// <summary>
2084             /// Custom messenger type label, when the messenger type is TypeValue.Custom.
2085             /// </summary>
2086             /// <since_tizen> 4 </since_tizen>
2087             public const uint Label = (uint)Property.Id.MessengerLabel;
2088             /// <summary>
2089             /// Messenger ID (email address, email ID, and so on).
2090             /// </summary>
2091             /// <since_tizen> 4 </since_tizen>
2092             public const uint IMId = (uint)Property.Id.MessengerIMId;
2093
2094             /// <summary>
2095             /// Enumeration for the contact messenger types.
2096             /// </summary>
2097             /// <since_tizen> 4 </since_tizen>
2098             public enum TypeValue
2099             {
2100                 /// <summary>
2101                 /// Other messenger type.
2102                 /// </summary>
2103                 /// <since_tizen> 4 </since_tizen>
2104                 Other,
2105                 /// <summary>
2106                 /// Custom messenger type.
2107                 /// </summary>
2108                 /// <since_tizen> 4 </since_tizen>
2109                 Custom,
2110                 /// <summary>
2111                 /// Google messenger type.
2112                 /// </summary>
2113                 /// <since_tizen> 4 </since_tizen>
2114                 Google,
2115                 /// <summary>
2116                 /// Windows Live messenger type.
2117                 /// </summary>
2118                 /// <since_tizen> 4 </since_tizen>
2119                 WindowsLive,
2120                 /// <summary>
2121                 /// Yahoo messenger type.
2122                 /// </summary>
2123                 /// <since_tizen> 4 </since_tizen>
2124                 Yahoo,
2125                 /// <summary>
2126                 /// Facebook messenger type.
2127                 /// </summary>
2128                 /// <since_tizen> 4 </since_tizen>
2129                 Facebook,
2130                 /// <summary>
2131                 /// ICQ type.
2132                 /// </summary>
2133                 /// <since_tizen> 4 </since_tizen>
2134                 ICQ,
2135                 /// <summary>
2136                 /// AOL instance messenger type.
2137                 /// </summary>
2138                 /// <since_tizen> 4 </since_tizen>
2139                 AOL,
2140                 /// <summary>
2141                 /// QQ type.
2142                 /// </summary>
2143                 /// <since_tizen> 4 </since_tizen>
2144                 QQ,
2145                 /// <summary>
2146                 /// Jabber type.
2147                 /// </summary>
2148                 /// <since_tizen> 4 </since_tizen>
2149                 Jabber,
2150                 /// <summary>
2151                 /// Skype type.
2152                 /// </summary>
2153                 /// <since_tizen> 4 </since_tizen>
2154                 Skype,
2155                 /// <summary>
2156                 /// IRC type.
2157                 /// </summary>
2158                 /// <since_tizen> 4 </since_tizen>
2159                 IRC,
2160             }
2161         }
2162
2163         /// <summary>
2164         /// Describes the properties of a Profile record.
2165         /// </summary>
2166         /// <since_tizen> 4 </since_tizen>
2167         [SuppressMessage("Microsoft.Naming", "CA1724:TypeNamesShouldNotMatchNamespaces")]
2168         public static class Profile
2169         {
2170             /// <summary>
2171             /// Identifier of this contacts profile view.
2172             /// </summary>
2173             /// <since_tizen> 4 </since_tizen>
2174             public const string Uri = "tizen.contacts_view.profile";
2175             /// <summary>
2176             /// Database record ID of the profile.
2177             /// </summary>
2178             /// <since_tizen> 4 </since_tizen>
2179             public const uint Id = (uint)Property.Id.ProfileId;
2180             /// <summary>
2181             /// Contacts ID that the profile belongs to.
2182             /// </summary>
2183             /// <since_tizen> 4 </since_tizen>
2184             public const uint ContactId = (uint)Property.Id.ProfileContactId;
2185             /// <summary>
2186             /// Unique identifier.
2187             /// </summary>
2188             /// <since_tizen> 4 </since_tizen>
2189             public const uint UId = (uint)Property.Id.ProfileUId;
2190             /// <summary>
2191             /// Profile contents.
2192             /// </summary>
2193             /// <since_tizen> 4 </since_tizen>
2194             public const uint Text = (uint)Property.Id.ProfileText;
2195             /// <summary>
2196             /// Priority to display the profile.
2197             /// </summary>
2198             /// <since_tizen> 4 </since_tizen>
2199             public const uint Order = (uint)Property.Id.ProfileOrder;
2200             /// <summary>
2201             /// Data for app_control_set_operation.
2202             /// </summary>
2203             /// <since_tizen> 4 </since_tizen>
2204             public const uint ServiceOperation = (uint)Property.Id.ProfileServiceOperation;
2205             /// <summary>
2206             /// Data for app_control_set_mime.
2207             /// </summary>
2208             /// <since_tizen> 4 </since_tizen>
2209             public const uint Mime = (uint)Property.Id.ProfileMIME;
2210             /// <summary>
2211             /// Data for app_control_set_app_id.
2212             /// </summary>
2213             /// <since_tizen> 4 </since_tizen>
2214             public const uint AppId = (uint)Property.Id.ProfileAppId;
2215             /// <summary>
2216             /// Data for app_control_set_uri.
2217             /// </summary>
2218             /// <since_tizen> 4 </since_tizen>
2219             public const uint ProfileUri = (uint)Property.Id.ProfileUri;
2220             /// <summary>
2221             /// Data for app_control_set_category.
2222             /// </summary>
2223             /// <since_tizen> 4 </since_tizen>
2224             public const uint Category = (uint)Property.Id.ProfileCategory;
2225             /// <summary>
2226             /// It includes "key:value,key:value," pairs. You should parse it. And you must base64 encode each key and value.
2227             /// </summary>
2228             /// <since_tizen> 4 </since_tizen>
2229             public const uint ExtraData = (uint)Property.Id.ProfileExtraData;
2230         }
2231
2232         /// <summary>
2233         /// Describes the properties of a SIP record.
2234         /// </summary>
2235         /// <since_tizen> 4 </since_tizen>
2236         public static class Sip
2237         {
2238             /// <summary>
2239             /// Identifier of this contacts SIP view.
2240             /// </summary>
2241             /// <since_tizen> 4 </since_tizen>
2242             public const string Uri = "tizen.contacts_view.sip";
2243             /// <summary>
2244             /// Database record ID of the SIP.
2245             /// </summary>
2246             /// <since_tizen> 4 </since_tizen>
2247             public const uint Id = (uint)Property.Id.SipId;
2248             /// <summary>
2249             /// Contact ID that the SIP belongs to.
2250             /// </summary>
2251             /// <since_tizen> 4 </since_tizen>
2252             public const uint ContactId = (uint)Property.Id.SipContactId;
2253             /// <summary>
2254             /// SIP address.
2255             /// </summary>
2256             /// <since_tizen> 4 </since_tizen>
2257             public const uint Address = (uint)Property.Id.SipAddress;
2258             /// <summary>
2259             /// SIP type, refer to the TypeValue.
2260             /// </summary>
2261             /// <since_tizen> 4 </since_tizen>
2262             public const uint Type = (uint)Property.Id.SipType;
2263             /// <summary>
2264             /// Custom SIP type label, when the SIP type is TypeValue.Custom.
2265             /// </summary>
2266             /// <since_tizen> 4 </since_tizen>
2267             public const uint Label = (uint)Property.Id.SipLabel;
2268
2269             /// <summary>
2270             /// Enumeration for the contact SIP types.
2271             /// </summary>
2272             /// <since_tizen> 4 </since_tizen>
2273             public enum TypeValue
2274             {
2275                 /// <summary>
2276                 /// Other SIP type.
2277                 /// </summary>
2278                 /// <since_tizen> 4 </since_tizen>
2279                 Other,
2280                 /// <summary>
2281                 /// Custom SIP type.
2282                 /// </summary>
2283                 /// <since_tizen> 4 </since_tizen>
2284                 Custom,
2285                 /// <summary>
2286                 /// Home SIP type.
2287                 /// </summary>
2288                 /// <since_tizen> 4 </since_tizen>
2289                 Home,
2290                 /// <summary>
2291                 /// Work SIP type.
2292                 /// </summary>
2293                 /// <since_tizen> 4 </since_tizen>
2294                 Work,
2295             }
2296         }
2297
2298         /// <summary>
2299         /// Describes the properties of an Extension record.
2300         /// </summary>
2301         /// <since_tizen> 4 </since_tizen>
2302         public static class Extension
2303         {
2304             /// <summary>
2305             /// Identifier of this contacts extension view.
2306             /// </summary>
2307             /// <since_tizen> 4 </since_tizen>
2308             public const string Uri = "tizen.contacts_view.extension";
2309             /// <summary>
2310             /// Database record ID of the contact extension.
2311             /// </summary>
2312             /// <since_tizen> 4 </since_tizen>
2313             public const uint Id = (uint)Property.Id.ExtensionId;
2314             /// <summary>
2315             /// Contact ID that the contact extension belongs to.
2316             /// </summary>
2317             /// <since_tizen> 4 </since_tizen>
2318             public const uint ContactId = (uint)Property.Id.ExtensionContactId;
2319             /// <summary>
2320             /// The extra child record format for the non-provided from the contacts-service.
2321             /// </summary>
2322             /// <since_tizen> 4 </since_tizen>
2323             public const uint Data1 = (uint)Property.Id.ExtensionData1;
2324             /// <summary>
2325             /// The extra child record format for the non-provided from the contacts-service.
2326             /// </summary>
2327             /// <since_tizen> 4 </since_tizen>
2328             public const uint Data2 = (uint)Property.Id.ExtensionData2;
2329             /// <summary>
2330             /// The extra child record format for the non-provided from the contacts-service.
2331             /// </summary>
2332             /// <since_tizen> 4 </since_tizen>
2333             public const uint Data3 = (uint)Property.Id.ExtensionData3;
2334             /// <summary>
2335             /// The extra child record format for the non-provided from the contacts-service.
2336             /// </summary>
2337             /// <since_tizen> 4 </since_tizen>
2338             public const uint Data4 = (uint)Property.Id.ExtensionData4;
2339             /// <summary>
2340             /// The extra child record format for the non-provided from the contacts-service.
2341             /// </summary>
2342             /// <since_tizen> 4 </since_tizen>
2343             public const uint Data5 = (uint)Property.Id.ExtensionData5;
2344             /// <summary>
2345             /// The extra child record format for the non-provided from the contacts-service.
2346             /// </summary>
2347             /// <since_tizen> 4 </since_tizen>
2348             public const uint Data6 = (uint)Property.Id.ExtensionData6;
2349             /// <summary>
2350             /// The extra child record format for the non-provided from the contacts-service.
2351             /// </summary>
2352             /// <since_tizen> 4 </since_tizen>
2353             public const uint Data7 = (uint)Property.Id.ExtensionData7;
2354             /// <summary>
2355             /// The extra child record format for the non-provided from the contacts-service.
2356             /// </summary>
2357             /// <since_tizen> 4 </since_tizen>
2358             public const uint Data8 = (uint)Property.Id.ExtensionData8;
2359             /// <summary>
2360             /// The extra child record format for the non-provided from the contacts-service.
2361             /// </summary>
2362             /// <since_tizen> 4 </since_tizen>
2363             public const uint Data9 = (uint)Property.Id.ExtensionData9;
2364             /// <summary>
2365             /// The extra child record format for the non-provided from thecontacts-service.
2366             /// </summary>
2367             /// <since_tizen> 4 </since_tizen>
2368             public const uint Data10 = (uint)Property.Id.ExtensionData10;
2369             /// <summary>
2370             /// The extra child record format for the non-provided from the contacts-service.
2371             /// </summary>
2372             /// <since_tizen> 4 </since_tizen>
2373             public const uint Data11 = (uint)Property.Id.ExtensionData11;
2374             /// <summary>
2375             /// The extra child record format for the non-provided from the contacts-service.
2376             /// </summary>
2377             /// <since_tizen> 4 </since_tizen>
2378             public const uint Data12 = (uint)Property.Id.ExtensionData12;
2379         }
2380
2381         /// <summary>
2382         /// Describes the properties of a Group relation record.
2383         /// </summary>
2384         /// <since_tizen> 4 </since_tizen>
2385         public static class GroupRelation
2386         {
2387             /// <summary>
2388             /// Identifier of this relationship view.
2389             /// </summary>
2390             /// <since_tizen> 4 </since_tizen>
2391             public const string Uri = "tizen.contacts_view.group_relation";
2392             /// <summary>
2393             /// Database record ID of the group relation (cannot be used as a filter).
2394             /// </summary>
2395             /// <since_tizen> 4 </since_tizen>
2396             public const uint Id = (uint)Property.Id.GroupRelationId;
2397             /// <summary>
2398             /// Database record ID of the group.
2399             /// </summary>
2400             /// <since_tizen> 4 </since_tizen>
2401             public const uint GroupId = (uint)Property.Id.GroupRelationGroupId;
2402             /// <summary>
2403             /// Database record ID of the contact.
2404             /// </summary>
2405             /// <since_tizen> 4 </since_tizen>
2406             public const uint ContactId = (uint)Property.Id.GroupRelationContactId;
2407             /// <summary>
2408             /// Group name.
2409             /// </summary>
2410             /// <since_tizen> 4 </since_tizen>
2411             public const uint Name = (uint)Property.Id.GroupRelationGroupName;
2412         }
2413
2414         /// <summary>
2415         /// Describes the properties of a Speed dial record.
2416         /// </summary>
2417         /// <since_tizen> 4 </since_tizen>
2418         public static class SpeedDial
2419         {
2420             /// <summary>
2421             /// Identifier of this contacts speed dial view.
2422             /// </summary>
2423             /// <since_tizen> 4 </since_tizen>
2424             public const string Uri = "tizen.contacts_view.speeddial";
2425             /// <summary>
2426             /// Stored speed dial number.
2427             /// </summary>
2428             /// <since_tizen> 4 </since_tizen>
2429             public const uint SpeedDialNumber = (uint)Property.Id.SpeedDialDialNumber;
2430             /// <summary>
2431             /// Number ID that the speed dial belongs to.
2432             /// </summary>
2433             /// <since_tizen> 4 </since_tizen>
2434             public const uint NumberId = (uint)Property.Id.SpeedDialNumberId;
2435             /// <summary>
2436             /// Contact number of the specified speed dial.
2437             /// </summary>
2438             /// <since_tizen> 4 </since_tizen>
2439             public const uint Number = (uint)Property.Id.SpeedDialNumber;
2440             /// <summary>
2441             /// Contact number label of the specified speed dial, when the number type is Number.Types.Custom.
2442             /// </summary>
2443             /// <since_tizen> 4 </since_tizen>
2444             public const uint NumberLabel = (uint)Property.Id.SpeedDialNumberLabel;
2445             /// <summary>
2446             /// Contact number type, refer to the Number.Types.
2447             /// </summary>
2448             /// <since_tizen> 4 </since_tizen>
2449             public const uint NumberType = (uint)Property.Id.SpeedDialNumberType;
2450             /// <summary>
2451             /// Person ID that the speed dial belongs to.
2452             /// </summary>
2453             /// <since_tizen> 4 </since_tizen>
2454             public const uint PersonId = (uint)Property.Id.SpeedDialPersonId;
2455             /// <summary>
2456             /// Display name that the speed dial belongs to.
2457             /// </summary>
2458             /// <since_tizen> 4 </since_tizen>
2459             public const uint DisplayName = (uint)Property.Id.SpeedDialDisplayName;
2460             /// <summary>
2461             /// Image thumbnail path that the speed dial belongs to.
2462             /// </summary>
2463             /// <since_tizen> 4 </since_tizen>
2464             public const uint ThumbnailPath = (uint)Property.Id.SpeedDialThumbnail;
2465             /// <summary>
2466             /// You can only use this property for the search filter.
2467             /// </summary>
2468             /// <since_tizen> 4 </since_tizen>
2469             public const uint NormalizedNumber = (uint)Property.Id.SpeedDialNormalizedNumber;
2470             /// <summary>
2471             /// You can only use this property for the search filter.
2472             /// </summary>
2473             /// <since_tizen> 4 </since_tizen>
2474             public const uint CleanedNumber = (uint)Property.Id.SpeedDialCleanedNumber;
2475             /// <summary>
2476             /// If you add filter with this property, the string will be normalized as minimal match length internally and the match rule will be applied ContactsFilter.StringMatchType.Exactly.
2477             /// </summary>
2478             /// <since_tizen> 4 </since_tizen>
2479             public const uint NumberFilter = (uint)Property.Id.SpeedDialNumberFilter;
2480         }
2481
2482         /// <summary>
2483         /// Describes the properties of a Phone log record.
2484         /// </summary>
2485         /// <since_tizen> 4 </since_tizen>
2486         public static class PhoneLog
2487         {
2488             /// <summary>
2489             /// Identifier of this phone log view.
2490             /// </summary>
2491             /// <since_tizen> 4 </since_tizen>
2492             public const string Uri = "tizen.contacts_view.phonelog";
2493             /// <summary>
2494             /// Database record ID of phone log.
2495             /// </summary>
2496             /// <since_tizen> 4 </since_tizen>
2497             public const uint Id = (uint)Property.Id.PhonelogId;
2498             /// <summary>
2499             /// Person ID that the phone log belongs to.
2500             /// </summary>
2501             /// <since_tizen> 4 </since_tizen>
2502             public const uint PersonId = (uint)Property.Id.PhonelogPersonId;
2503             /// <summary>
2504             /// Number or email that the phone log displays.
2505             /// </summary>
2506             /// <since_tizen> 4 </since_tizen>
2507             public const uint Address = (uint)Property.Id.PhonelogAddress;
2508             /// <summary>
2509             /// Call end time. The value means the number of seconds since 1970-01-01 00:00:00 (UTC).
2510             /// </summary>
2511             /// <since_tizen> 4 </since_tizen>
2512             public const uint LogTime = (uint)Property.Id.PhonelogLogTime;
2513             /// <summary>
2514             /// Log type, refer to the Type.
2515             /// </summary>
2516             /// <since_tizen> 4 </since_tizen>
2517             public const uint LogType = (uint)Property.Id.PhonelogLogType;
2518             /// <summary>
2519             /// You can set the related integer data (For example, message_id, email_id, or duration (seconds) of the call).
2520             /// </summary>
2521             /// <since_tizen> 4 </since_tizen>
2522             public const uint ExtraData1 = (uint)Property.Id.PhonelogExtraData1;
2523             /// <summary>
2524             /// You can set the related string data (For example, short message, subject).
2525             /// </summary>
2526             /// <since_tizen> 4 </since_tizen>
2527             public const uint ExtraData2 = (uint)Property.Id.PhonelogExtraData2;
2528             /// <summary>
2529             /// You can only use this property for the search filter.
2530             /// </summary>
2531             /// <since_tizen> 4 </since_tizen>
2532             public const uint NormalizedAddress = (uint)Property.Id.PhonelogNormalizedAddress;
2533             /// <summary>
2534             /// You can only use this property for the search filter.
2535             /// </summary>
2536             /// <since_tizen> 4 </since_tizen>
2537             public const uint CleanedAddress = (uint)Property.Id.PhonelogCleanedAddress;
2538             /// <summary>
2539             /// You can only use this property for the search filter.
2540             /// </summary>
2541             /// <since_tizen> 4 </since_tizen>
2542             public const uint AddressFilter = (uint)Property.Id.PhonelogAddressFilter;
2543             /// <summary>
2544             /// You can set the related SIM slot number. SimSlotNo 0 means the first SIM card, SimSlotNo 1 means the second SIM.
2545             /// </summary>
2546             /// <since_tizen> 4 </since_tizen>
2547             public const uint SimSlotNo = (uint)Property.Id.PhonelogSimSlotNo;
2548
2549             /// <summary>
2550             /// Enumeration for the phone log types.
2551             /// </summary>
2552             /// <since_tizen> 4 </since_tizen>
2553             public enum Type
2554             {
2555                 /// <summary>
2556                 /// None.
2557                 /// </summary>
2558                 /// <since_tizen> 4 </since_tizen>
2559                 None,
2560                 /// <summary>
2561                 /// Incoming call.
2562                 /// </summary>
2563                 /// <since_tizen> 4 </since_tizen>
2564                 VoiceIncoming = 1,
2565                 /// <summary>
2566                 /// Outgoing call.
2567                 /// </summary>
2568                 /// <since_tizen> 4 </since_tizen>
2569                 VoiceOutgoing = 2,
2570                 /// <summary>
2571                 /// Incoming video call.
2572                 /// </summary>
2573                 /// <since_tizen> 4 </since_tizen>
2574                 VideoIncoming = 3,
2575                 /// <summary>
2576                 /// Outgoing video call.
2577                 /// </summary>
2578                 /// <since_tizen> 4 </since_tizen>
2579                 VideoOutgoing = 4,
2580                 /// <summary>
2581                 /// Not confirmed missed call.
2582                 /// </summary>
2583                 /// <since_tizen> 4 </since_tizen>
2584                 VoiceMissedUnseen = 5,
2585                 /// <summary>
2586                 /// Confirmed missed call.
2587                 /// </summary>
2588                 /// <since_tizen> 4 </since_tizen>
2589                 VoiceMissedSeen = 6,
2590                 /// <summary>
2591                 /// Not confirmed missed video call.
2592                 /// </summary>
2593                 /// <since_tizen> 4 </since_tizen>
2594                 VideoMissedUnseen = 7,
2595                 /// <summary>
2596                 /// Confirmed missed video call.
2597                 /// </summary>
2598                 /// <since_tizen> 4 </since_tizen>
2599                 VideoMissedSeen = 8,
2600                 /// <summary>
2601                 /// Rejected call.
2602                 /// </summary>
2603                 /// <since_tizen> 4 </since_tizen>
2604                 VoiceRejected = 9,
2605                 /// <summary>
2606                 /// Rejected video call.
2607                 /// </summary>
2608                 /// <since_tizen> 4 </since_tizen>
2609                 VideoRejected = 10,
2610                 /// <summary>
2611                 /// Blocked call.
2612                 /// </summary>
2613                 /// <since_tizen> 4 </since_tizen>
2614                 VoiceBlocked = 11,
2615                 /// <summary>
2616                 /// Blocked video call.
2617                 /// </summary>
2618                 /// <since_tizen> 4 </since_tizen>
2619                 VideoBlocked = 12,
2620                 /// <summary>
2621                 /// Incoming MMS.
2622                 /// </summary>
2623                 /// <since_tizen> 4 </since_tizen>
2624                 MMSIncoming = 101,
2625                 /// <summary>
2626                 /// Outgoing MMS.
2627                 /// </summary>
2628                 /// <since_tizen> 4 </since_tizen>
2629                 MMSOutgoing = 102,
2630                 /// <summary>
2631                 /// Incoming SMS.
2632                 /// </summary>
2633                 /// <since_tizen> 4 </since_tizen>
2634                 SMSIncoming = 103,
2635                 /// <summary>
2636                 /// Outgoing SMS.
2637                 /// </summary>
2638                 /// <since_tizen> 4 </since_tizen>
2639                 SMSOutgoing = 104,
2640                 /// <summary>
2641                 /// Blocked SMS.
2642                 /// </summary>
2643                 /// <since_tizen> 4 </since_tizen>
2644                 SMSBlocked = 105,
2645                 /// <summary>
2646                 /// Blocked MMS.
2647                 /// </summary>
2648                 /// <since_tizen> 4 </since_tizen>
2649                 MMSBlocked = 106,
2650                 /// <summary>
2651                 /// Received email.
2652                 /// </summary>
2653                 /// <since_tizen> 4 </since_tizen>
2654                 EmailReceived = 201,
2655                 /// <summary>
2656                 /// Sent email.
2657                 /// </summary>
2658                 /// <since_tizen> 4 </since_tizen>
2659                 EmailSent = 202,
2660
2661             }
2662         }
2663
2664         /// <summary>
2665         /// Describes the properties of a Contact updated information record.
2666         /// </summary>
2667         /// <remarks>Read only view</remarks>
2668         /// <since_tizen> 4 </since_tizen>
2669         public static class ContactUpdatedInfo
2670         {
2671             /// <summary>
2672             /// Identifier of this contacts updated information view.
2673             /// </summary>
2674             /// <since_tizen> 4 </since_tizen>
2675             public const string Uri = "tizen.contacts_view.contacts_updated_info";
2676             /// <summary>
2677             /// Updated contact ID.
2678             /// </summary>
2679             /// <since_tizen> 4 </since_tizen>
2680             public const uint ContactId = (uint)Property.Id.UpdateInfoId;
2681             /// <summary>
2682             /// AddressBook ID that the updated contact belongs to.
2683             /// </summary>
2684             /// <since_tizen> 4 </since_tizen>
2685             public const uint AddressBookId = (uint)Property.Id.UpdateInfoAddressBookId;
2686             /// <summary>
2687             /// Contact change type, refer to the ContactsViews.ChangeType.
2688             /// </summary>
2689             /// <since_tizen> 4 </since_tizen>
2690             public const uint Type = (uint)Property.Id.UpdateInfoType;
2691             /// <summary>
2692             /// Updated version.
2693             /// </summary>
2694             /// <since_tizen> 4 </since_tizen>
2695             public const uint Version = (uint)Property.Id.UpdateInfoVersion;
2696             /// <summary>
2697             /// Contact image is changed or not.
2698             /// </summary>
2699             /// <since_tizen> 4 </since_tizen>
2700             public const uint ImageChanged = (uint)Property.Id.UpdateInfoImageChanged;
2701         }
2702
2703         /// <summary>
2704         /// Describes the properties of a My profile updated information record.
2705         /// </summary>
2706         /// <remarks>Read only view</remarks>
2707         /// <since_tizen> 4 </since_tizen>
2708         public static class MyProfileUpdatedInfo
2709         {
2710             /// <summary>
2711             /// Identifier of this my profile updated information view.
2712             /// </summary>
2713             /// <since_tizen> 4 </since_tizen>
2714             public const string Uri = "tizen.contacts_view.my_profile_updated_info";
2715             /// <summary>
2716             /// Address book ID that the updated my profile belongs to.
2717             /// </summary>
2718             /// <since_tizen> 4 </since_tizen>
2719             public const uint AddressBookId = (uint)Property.Id.UpdateInfoAddressBookId;
2720             /// <summary>
2721             /// MyProfile change type, refer to the ContactsViews.ChangeType.
2722             /// </summary>
2723             /// <since_tizen> 4 </since_tizen>
2724             public const uint LastChangedType = (uint)Property.Id.UpdateInfoLastChangedType;
2725             /// <summary>
2726             /// Updated version.
2727             /// </summary>
2728             /// <since_tizen> 4 </since_tizen>
2729             public const uint Version = (uint)Property.Id.UpdateInfoVersion;
2730         }
2731
2732         /// <summary>
2733         /// Describes the properties of a Group updated information record.
2734         /// </summary>
2735         /// <remarks>Read only view</remarks>
2736         /// <since_tizen> 4 </since_tizen>
2737         public static class GroupUpdatedInfo
2738         {
2739             /// <summary>
2740             /// Identifier of this groups updated information view.
2741             /// </summary>
2742             /// <since_tizen> 4 </since_tizen>
2743             public const string Uri = "tizen.contacts_view.groups_updated_info";
2744             /// <summary>
2745             /// Updated group ID.
2746             /// </summary>
2747             /// <since_tizen> 4 </since_tizen>
2748             public const uint GroupId = (uint)Property.Id.UpdateInfoId;
2749             /// <summary>
2750             /// Address book ID that the updated group belongs to.
2751             /// </summary>
2752             /// <since_tizen> 4 </since_tizen>
2753             public const uint AddressBookId = (uint)Property.Id.UpdateInfoAddressBookId;
2754             /// <summary>
2755             /// Group change type, refer to the ContactsViews.ChangeType.
2756             /// </summary>
2757             /// <since_tizen> 4 </since_tizen>
2758             public const uint Type = (uint)Property.Id.UpdateInfoType;
2759             /// <summary>
2760             /// Updated version.
2761             /// </summary>
2762             /// <since_tizen> 4 </since_tizen>
2763             public const uint Version = (uint)Property.Id.UpdateInfoVersion;
2764         }
2765
2766         /// <summary>
2767         /// Describes the properties of a Group Member updated information record.
2768         /// </summary>
2769         /// <remarks>Read-only view.</remarks>
2770         /// <since_tizen> 4 </since_tizen>
2771         public static class GroupMemberUpdatedInfo
2772         {
2773             /// <summary>
2774             /// Identifier of this group members updated information view.
2775             /// </summary>
2776             /// <since_tizen> 4 </since_tizen>
2777             public const string Uri = "tizen.contacts_view.groups_member_updated_info";
2778             /// <summary>
2779             /// Updated group ID.
2780             /// </summary>
2781             /// <since_tizen> 4 </since_tizen>
2782             public const uint GroupId = (uint)Property.Id.UpdateInfoId;
2783             /// <summary>
2784             /// Address book ID that the updated group belongs to.
2785             /// </summary>
2786             /// <since_tizen> 4 </since_tizen>
2787             public const uint AddressBookId = (uint)Property.Id.UpdateInfoAddressBookId;
2788             /// <summary>
2789             /// Updated version.
2790             /// </summary>
2791             /// <since_tizen> 4 </since_tizen>
2792             public const uint Version = (uint)Property.Id.UpdateInfoVersion;
2793         }
2794
2795         /// <summary>
2796         /// Describes the properties of a Relation updated information record.
2797         /// </summary>
2798         /// <remarks>Read only view</remarks>
2799         /// <since_tizen> 4 </since_tizen>
2800         public static class GroupRelationUpdatedInfo
2801         {
2802             /// <summary>
2803             /// Identifier of this group relations updated information view.
2804             /// </summary>
2805             /// <since_tizen> 4 </since_tizen>
2806             public const string Uri = "tizen.contacts_view.group_relations_updated_info";
2807             /// <summary>
2808             /// Group ID of the group relation.
2809             /// </summary>
2810             /// <since_tizen> 4 </since_tizen>
2811             public const uint GroupId = (uint)Property.Id.GroupId;
2812             /// <summary>
2813             /// Contact ID of the updated group relation.
2814             /// </summary>
2815             /// <since_tizen> 4 </since_tizen>
2816             public const uint ContactId = (uint)Property.Id.ContactId;
2817             /// <summary>
2818             /// Address book ID of the contacts updated group relation.
2819             /// </summary>
2820             /// <since_tizen> 4 </since_tizen>
2821             public const uint AddressBookId = (uint)Property.Id.AddressBookId;
2822             /// <summary>
2823             /// Group relation change type, refer to the ContactsViews.ChangeType.
2824             /// </summary>
2825             /// <since_tizen> 4 </since_tizen>
2826             public const uint Type = (uint)Property.Id.UpdateInfoType;
2827             /// <summary>
2828             /// Updated version.
2829             /// </summary>
2830             /// <since_tizen> 4 </since_tizen>
2831             public const uint Version = (uint)Property.Id.UpdateInfoVersion;
2832         }
2833
2834         /// <summary>
2835         /// Describes the properties of a PersonContact record.
2836         /// </summary>
2837         /// <remarks>Read only view</remarks>
2838         /// <since_tizen> 4 </since_tizen>
2839         public static class PersonContact
2840         {
2841             /// <summary>
2842             /// Identifier of this person's contact view.
2843             /// </summary>
2844             /// <since_tizen> 4 </since_tizen>
2845             public const string Uri = "tizen.contacts_view.person/simple_contact";
2846             /// <summary>
2847             /// Database record ID of the person.
2848             /// </summary>
2849             /// <since_tizen> 4 </since_tizen>
2850             public const uint PersonId = (uint)Property.Id.PersonId;
2851             /// <summary>
2852             /// Display name of the person.
2853             /// </summary>
2854             /// <since_tizen> 4 </since_tizen>
2855             public const uint DisplayName = (uint)Property.Id.PersonDisplayName;
2856             /// <summary>
2857             /// The first character of the first string for grouping. This is normalized using ICU (projection).
2858             /// </summary>
2859             /// <since_tizen> 4 </since_tizen>
2860             public const uint DisplayNameIndex = (uint)Property.Id.PersonDisplayNameIndex;
2861             /// <summary>
2862             /// Display contact ID that the person belongs to (projection).
2863             /// </summary>
2864             /// <since_tizen> 4 </since_tizen>
2865             public const uint DisplayContactId = (uint)Property.Id.PersonDisplayContactId;
2866             /// <summary>
2867             /// Ringtone path of the person (projection).
2868             /// </summary>
2869             /// <since_tizen> 4 </since_tizen>
2870             public const uint RingtonePath = (uint)Property.Id.PersonRingtone;
2871             /// <summary>
2872             /// Image thumbnail path of the person (projection).
2873             /// </summary>
2874             /// <since_tizen> 4 </since_tizen>
2875             public const uint ThumbnailPath = (uint)Property.Id.PersonThumbnail;
2876             /// <summary>
2877             /// Vibration path of the person (projection).
2878             /// </summary>
2879             /// <since_tizen> 4 </since_tizen>
2880             public const uint Vibration = (uint)Property.Id.PersonVibration;
2881             /// <summary>
2882             /// Message alert path of the person (projection).
2883             /// </summary>
2884             /// <since_tizen> 4 </since_tizen>
2885             public const uint MessageAlert = (uint)Property.Id.PersonMessageAlert;
2886             /// <summary>
2887             /// Status of the social account (projection).
2888             /// </summary>
2889             /// <since_tizen> 4 </since_tizen>
2890             public const uint Status = (uint)Property.Id.PersonStatus;
2891             /// <summary>
2892             /// The person is a favorite or not.
2893             /// </summary>
2894             /// <since_tizen> 4 </since_tizen>
2895             public const uint IsFavorite = (uint)Property.Id.PersonIsFavorite;
2896             /// <summary>
2897             /// Link count of the contact records (projection).
2898             /// </summary>
2899             /// <since_tizen> 4 </since_tizen>
2900             public const uint LinkCount = (uint)Property.Id.PersonLinkCount;
2901             /// <summary>
2902             /// Contact ID that the person belongs to.
2903             /// </summary>
2904             /// <since_tizen> 4 </since_tizen>
2905             public const uint ContactId = (uint)Property.Id.ContactId;
2906             /// <summary>
2907             /// AddressBook IDs that the person belongs to (projection).
2908             /// </summary>
2909             /// <since_tizen> 4 </since_tizen>
2910             public const uint AddressBookIds = (uint)Property.Id.PersonAddressBookIds;
2911             /// <summary>
2912             /// The person has a phone number or not.
2913             /// </summary>
2914             /// <since_tizen> 4 </since_tizen>
2915             public const uint HasPhoneNumber = (uint)Property.Id.PersonHasPhoneNumber;
2916             /// <summary>
2917             /// The person has an email or not.
2918             /// </summary>
2919             /// <since_tizen> 4 </since_tizen>
2920             public const uint HasEmail = (uint)Property.Id.PersonHasEmail;
2921             /// <summary>
2922             /// AddressBook ID that the person belongs to.
2923             /// </summary>
2924             /// <since_tizen> 4 </since_tizen>
2925             public const uint AddressBookId = (uint)Property.Id.ContactAddressBookId;
2926             /// <summary>
2927             /// AddressBook mode, refer to the AddressBook.Mode.
2928             /// </summary>
2929             /// <since_tizen> 4 </since_tizen>
2930             public const uint AddressBookMode = (uint)Property.Id.AddressBookMode;
2931             /// <summary>
2932             /// AddressBook name that the person belongs to.
2933             /// </summary>
2934             /// <since_tizen> 4 </since_tizen>
2935             public const uint AddressBookName = (uint)Property.Id.AddressBookName;
2936             /// <summary>
2937             /// Keyword matched data type, refer to the Contact.DataType.
2938             /// </summary>
2939             /// <since_tizen> 4 </since_tizen>
2940             public const uint SnippetType = (uint)Property.Id.PersonSnippetType;
2941             /// <summary>
2942             /// Keyword matched data string.
2943             /// </summary>
2944             /// <since_tizen> 4 </since_tizen>
2945             public const uint SnippetString = (uint)Property.Id.PersonSnippetString;
2946         };
2947
2948         /// <summary>
2949         /// Describes the properties of a PersonNumber record.
2950         /// </summary>
2951         /// <remarks>Read only view</remarks>
2952         /// <since_tizen> 4 </since_tizen>
2953         public static class PersonNumber
2954         {
2955             /// <summary>
2956             /// Identifier of this person's number view.
2957             /// </summary>
2958             /// <since_tizen> 4 </since_tizen>
2959             public const string Uri = "tizen.contacts_view.person/simple_contact/number";
2960             /// <summary>
2961             /// Database record ID of the person.
2962             /// </summary>
2963             /// <since_tizen> 4 </since_tizen>
2964             public const uint PersonId = (uint)Property.Id.PersonId;
2965             /// <summary>
2966             /// Display name of the person.
2967             /// </summary>
2968             /// <since_tizen> 4 </since_tizen>
2969             public const uint DisplayName = (uint)Property.Id.PersonDisplayName;
2970             /// <summary>
2971             /// The first character of the first string for grouping. This is normalized using ICU (projection).
2972             /// </summary>
2973             /// <since_tizen> 4 </since_tizen>
2974             public const uint DisplayNameIndex = (uint)Property.Id.PersonDisplayNameIndex;
2975             /// <summary>
2976             /// Display contact ID that the person belongs to (projection).
2977             /// </summary>
2978             /// <since_tizen> 4 </since_tizen>
2979             public const uint DisplayContactId = (uint)Property.Id.PersonDisplayContactId;
2980             /// <summary>
2981             /// Ringtone path of the person (projection).
2982             /// </summary>
2983             /// <since_tizen> 4 </since_tizen>
2984             public const uint RingtonePath = (uint)Property.Id.PersonRingtone;
2985             /// <summary>
2986             /// Image thumbnail path of the person (projection).
2987             /// </summary>
2988             /// <since_tizen> 4 </since_tizen>
2989             public const uint ThumbnailPath = (uint)Property.Id.PersonThumbnail;
2990             /// <summary>
2991             /// Vibration path of the person (projection).
2992             /// </summary>
2993             /// <since_tizen> 4 </since_tizen>
2994             public const uint Vibration = (uint)Property.Id.PersonVibration;
2995             /// <summary>
2996             /// Message alert path of the person (projection).
2997             /// </summary>
2998             /// <since_tizen> 4 </since_tizen>
2999             public const uint MessageAlert = (uint)Property.Id.PersonMessageAlert;
3000             /// <summary>
3001             /// The person is a favorite or not.
3002             /// </summary>
3003             /// <since_tizen> 4 </since_tizen>
3004             public const uint IsFavorite = (uint)Property.Id.PersonIsFavorite;
3005             /// <summary>
3006             /// The person has a phone number or not.
3007             /// </summary>
3008             /// <since_tizen> 4 </since_tizen>
3009             public const uint HasPhoneNumber = (uint)Property.Id.PersonHasPhoneNumber;
3010             /// <summary>
3011             /// The person has an email or not.
3012             /// </summary>
3013             /// <since_tizen> 4 </since_tizen>
3014             public const uint HasEmail = (uint)Property.Id.PersonHasEmail;
3015             /// <summary>
3016             /// Number ID that the person belongs to.
3017             /// </summary>
3018             /// <since_tizen> 4 </since_tizen>
3019             public const uint NumberId = (uint)Property.Id.NumberId;
3020             /// <summary>
3021             /// Number type, refer to the Number.Types (projection).
3022             /// </summary>
3023             /// <since_tizen> 4 </since_tizen>
3024             public const uint Type = (uint)Property.Id.NumberType;
3025             /// <summary>
3026             /// Custom number type label, when the number type is Number.Types.Custom (projection).
3027             /// </summary>
3028             /// <since_tizen> 4 </since_tizen>
3029             public const uint Label = (uint)Property.Id.NumberLabel;
3030             /// <summary>
3031             /// The number is the default number or not.
3032             /// </summary>
3033             /// <since_tizen> 4 </since_tizen>
3034             public const uint IsPrimaryDefault = (uint)Property.Id.DataIsPrimaryDefault;
3035             /// <summary>
3036             /// Number.
3037             /// </summary>
3038             /// <since_tizen> 4 </since_tizen>
3039             public const uint Number = (uint)Property.Id.NumberNumber;
3040             /// <summary>
3041             /// If you add filter with this property, the string will be normalized as the minimal match length internally and the match rule will be applied ContactsFilter.StringMatchType.Exactly.
3042             /// </summary>
3043             /// <since_tizen> 4 </since_tizen>
3044             public const uint NumberFilter = (uint)Property.Id.NumberNumberFilter;
3045             /// <summary>
3046             /// You can only use this property for the search filter.
3047             /// </summary>
3048             /// <since_tizen> 4 </since_tizen>
3049             public const uint NormalizedNumber = (uint)Property.Id.NumberNormalizedNumber;
3050             /// <summary>
3051             /// You can only use this property for the search filter.
3052             /// </summary>
3053             /// <since_tizen> 4 </since_tizen>
3054             public const uint CleanedNumber = (uint)Property.Id.NumberCleanedNumber;
3055             /// <summary>
3056             /// Keyword matched data type, refer to they Contact.DataType.
3057             /// </summary>
3058             /// <since_tizen> 4 </since_tizen>
3059             public const uint SnippetType = (uint)Property.Id.PersonSnippetType;
3060             /// <summary>
3061             /// Keyword matched data string.
3062             /// </summary>
3063             /// <since_tizen> 4 </since_tizen>
3064             public const uint SnippetString = (uint)Property.Id.PersonSnippetString;
3065         };
3066
3067         /// <summary>
3068         /// Describes the properties of a PersonEmail record.
3069         /// </summary>
3070         /// <remarks>Read only view</remarks>
3071         /// <since_tizen> 4 </since_tizen>
3072         public static class PersonEmail
3073         {
3074             /// <summary>
3075             /// Identifier of this person's email view.
3076             /// </summary>
3077             /// <since_tizen> 4 </since_tizen>
3078             public const string Uri = "tizen.contacts_view.person/simple_contact/email";
3079             /// <summary>
3080             /// Database record ID of the person.
3081             /// </summary>
3082             /// <since_tizen> 4 </since_tizen>
3083             public const uint PersonId = (uint)Property.Id.PersonId;
3084             /// <summary>
3085             /// Display name of the person.
3086             /// </summary>
3087             /// <since_tizen> 4 </since_tizen>
3088             public const uint DisplayName = (uint)Property.Id.PersonDisplayName;
3089             /// <summary>
3090             /// The first character of the first string for grouping. This is normalized using ICU (projection).
3091             /// </summary>
3092             /// <since_tizen> 4 </since_tizen>
3093             public const uint DisplayNameIndex = (uint)Property.Id.PersonDisplayNameIndex;
3094             /// <summary>
3095             /// Display contact ID that the person belongs to (projection).
3096             /// </summary>
3097             /// <since_tizen> 4 </since_tizen>
3098             public const uint DisplayContactId = (uint)Property.Id.PersonDisplayContactId;
3099             /// <summary>
3100             /// Ringtone path of the person (projection).
3101             /// </summary>
3102             /// <since_tizen> 4 </since_tizen>
3103             public const uint RingtonePath = (uint)Property.Id.PersonRingtone;
3104             /// <summary>
3105             /// Image thumbnail path of the person (projection).
3106             /// </summary>
3107             /// <since_tizen> 4 </since_tizen>
3108             public const uint ThumbnailPath = (uint)Property.Id.PersonThumbnail;
3109             /// <summary>
3110             /// Vibration path of the person (projection).
3111             /// </summary>
3112             /// <since_tizen> 4 </since_tizen>
3113             public const uint Vibration = (uint)Property.Id.PersonVibration;
3114             /// <summary>
3115             /// Message alert path of the person (projection).
3116             /// </summary>
3117             /// <since_tizen> 4 </since_tizen>
3118             public const uint MessageAlert = (uint)Property.Id.PersonMessageAlert;
3119             /// <summary>
3120             /// The person is a favorite or not.
3121             /// </summary>
3122             /// <since_tizen> 4 </since_tizen>
3123             public const uint IsFavorite = (uint)Property.Id.PersonIsFavorite;
3124             /// <summary>
3125             /// The person has a phone number or not.
3126             /// </summary>
3127             /// <since_tizen> 4 </since_tizen>
3128             public const uint HasPhoneNumber = (uint)Property.Id.PersonHasPhoneNumber;
3129             /// <summary>
3130             /// The person has an email or not.
3131             /// </summary>
3132             /// <since_tizen> 4 </since_tizen>
3133             public const uint HasEmail = (uint)Property.Id.PersonHasEmail;
3134             /// <summary>
3135             /// Email ID that the person belongs to.
3136             /// </summary>
3137             /// <since_tizen> 4 </since_tizen>
3138             public const uint EmailId = (uint)Property.Id.EmailId;
3139             /// <summary>
3140             /// Email type, refer to the Email.Types (projection).
3141             /// </summary>
3142             /// <since_tizen> 4 </since_tizen>
3143             public const uint Type = (uint)Property.Id.EmailType;
3144             /// <summary>
3145             /// Custom mail type label, when the email type is Email.Types.Custom (projection).
3146             /// </summary>
3147             /// <since_tizen> 4 </since_tizen>
3148             public const uint Label = (uint)Property.Id.EmailLabel;
3149             /// <summary>
3150             /// The email is the default email or not.
3151             /// </summary>
3152             /// <since_tizen> 4 </since_tizen>
3153             public const uint IsPrimaryDefault = (uint)Property.Id.DataIsPrimaryDefault;
3154             /// <summary>
3155             /// Email address.
3156             /// </summary>
3157             /// <since_tizen> 4 </since_tizen>
3158             public const uint Email = (uint)Property.Id.EmailEmail;
3159             /// <summary>
3160             /// Keyword matched data type, refer to they Contact.DataType.
3161             /// </summary>
3162             /// <since_tizen> 4 </since_tizen>
3163             public const uint SnippetType = (uint)Property.Id.PersonSnippetType;
3164             /// <summary>
3165             /// Keyword matched data string.
3166             /// </summary>
3167             /// <since_tizen> 4 </since_tizen>
3168             public const uint SnippetString = (uint)Property.Id.PersonSnippetString;
3169         };
3170
3171         /// <summary>
3172         /// Describes the properties of a PersonGroupRelation record.
3173         /// </summary>
3174         /// <remarks>Read only view</remarks>
3175         /// <since_tizen> 4 </since_tizen>
3176         public static class PersonGroupRelation
3177         {
3178             /// <summary>
3179             /// Identifier of this person's group relation view.
3180             /// </summary>
3181             /// <since_tizen> 4 </since_tizen>
3182             public const string Uri = "tizen.contacts_view.person/simple_contact/group";
3183             /// <summary>
3184             /// Database record ID of the person.
3185             /// </summary>
3186             /// <since_tizen> 4 </since_tizen>
3187             public const uint PersonId = (uint)Property.Id.PersonId;
3188             /// <summary>
3189             /// Display name of the person.
3190             /// </summary>
3191             /// <since_tizen> 4 </since_tizen>
3192             public const uint DisplayName = (uint)Property.Id.PersonDisplayName;
3193             /// <summary>
3194             /// The first character of the first string for grouping. This is normalized using ICU (projection).
3195             /// </summary>
3196             /// <since_tizen> 4 </since_tizen>
3197             public const uint DisplayNameIndex = (uint)Property.Id.PersonDisplayNameIndex;
3198             /// <summary>
3199             /// Display contact ID that the person belongs to (projection).
3200             /// </summary>
3201             /// <since_tizen> 4 </since_tizen>
3202             public const uint DisplayContactId = (uint)Property.Id.PersonDisplayContactId;
3203             /// <summary>
3204             /// Ringtone path of the person (projection).
3205             /// </summary>
3206             /// <since_tizen> 4 </since_tizen>
3207             public const uint RingtonePath = (uint)Property.Id.PersonRingtone;
3208             /// <summary>
3209             /// Image thumbnail path of the person (projection).
3210             /// </summary>
3211             /// <since_tizen> 4 </since_tizen>
3212             public const uint ThumbnailPath = (uint)Property.Id.PersonThumbnail;
3213             /// <summary>
3214             /// Vibration path of the person (projection).
3215             /// </summary>
3216             /// <since_tizen> 4 </since_tizen>
3217             public const uint Vibration = (uint)Property.Id.PersonVibration;
3218             /// <summary>
3219             /// Message alert path of the person (projection).
3220             /// </summary>
3221             /// <since_tizen> 4 </since_tizen>
3222             public const uint MessageAlert = (uint)Property.Id.PersonMessageAlert;
3223             /// <summary>
3224             /// Status of social account (projection).
3225             /// </summary>
3226             /// <since_tizen> 4 </since_tizen>
3227             public const uint Status = (uint)Property.Id.PersonStatus;
3228             /// <summary>
3229             /// The person is a favorite or not.
3230             /// </summary>
3231             /// <since_tizen> 4 </since_tizen>
3232             public const uint IsFavorite = (uint)Property.Id.PersonIsFavorite;
3233             /// <summary>
3234             /// The person has a phone number or not.
3235             /// </summary>
3236             /// <since_tizen> 4 </since_tizen>
3237             public const uint HasPhoneNumber = (uint)Property.Id.PersonHasPhoneNumber;
3238             /// <summary>
3239             /// The person has an email or not.
3240             /// </summary>
3241             /// <since_tizen> 4 </since_tizen>
3242             public const uint HasEmail = (uint)Property.Id.PersonHasEmail;
3243             /// <summary>
3244             /// Link count of the contact records (projection).
3245             /// </summary>
3246             /// <since_tizen> 4 </since_tizen>
3247             public const uint LinkCount = (uint)Property.Id.PersonLinkCount;
3248             /// <summary>
3249             /// AddressBook IDs that the person belongs to (projection).
3250             /// </summary>
3251             /// <since_tizen> 4 </since_tizen>
3252             public const uint AddressBookIds = (uint)Property.Id.PersonAddressBookIds;
3253             /// <summary>
3254             /// AddressBook ID that the person belongs to.
3255             /// </summary>
3256             /// <since_tizen> 4 </since_tizen>
3257             public const uint AddressBookId = (uint)Property.Id.ContactAddressBookId;
3258             /// <summary>
3259             /// AddressBook name that the person belongs to.
3260             /// </summary>
3261             /// <since_tizen> 4 </since_tizen>
3262             public const uint AddressBookName = (uint)Property.Id.AddressBookName;
3263             /// <summary>
3264             /// AddressBook mode, refer to the AddressBook.Mode.
3265             /// </summary>
3266             /// <since_tizen> 4 </since_tizen>
3267             public const uint AddressBookMode = (uint)Property.Id.AddressBookMode;
3268             /// <summary>
3269             /// Group ID that the person belongs to.
3270             /// </summary>
3271             /// <since_tizen> 4 </since_tizen>
3272             public const uint GroupId = (uint)Property.Id.GroupRelationGroupId;
3273             /// <summary>
3274             /// Contact ID that the person belongs to (projection).
3275             /// </summary>
3276             /// <since_tizen> 4 </since_tizen>
3277             public const uint ContactId = (uint)Property.Id.GroupRelationContactId;
3278             /// <summary>
3279             /// Keyword matched data type, refer to they Contact.DataType.
3280             /// </summary>
3281             /// <since_tizen> 4 </since_tizen>
3282             public const uint SnippetType = (uint)Property.Id.PersonSnippetType;
3283             /// <summary>
3284             /// Keyword matched data string.
3285             /// </summary>
3286             /// <since_tizen> 4 </since_tizen>
3287             public const uint SnippetString = (uint)Property.Id.PersonSnippetString;
3288         };
3289
3290         /// <summary>
3291         /// Describes the properties of a PersonGroupAssigned record.
3292         /// </summary>
3293         /// <remarks>Read only view</remarks>
3294         /// <since_tizen> 4 </since_tizen>
3295         public static class PersonGroupAssigned
3296         {
3297             /// <summary>
3298             /// Identifier of this person's group assigned view.
3299             /// </summary>
3300             /// <since_tizen> 4 </since_tizen>
3301             public const string Uri = "tizen.contacts_view.person/simple_contact/group_assigned";
3302             /// <summary>
3303             /// Database record ID of the person.
3304             /// </summary>
3305             /// <since_tizen> 4 </since_tizen>
3306             public const uint PersonId = (uint)Property.Id.PersonId;
3307             /// <summary>
3308             /// Display name of the person.
3309             /// </summary>
3310             /// <since_tizen> 4 </since_tizen>
3311             public const uint DisplayName = (uint)Property.Id.PersonDisplayName;
3312             /// <summary>
3313             /// The first character of the first string for grouping. This is normalized using ICU (projection).
3314             /// </summary>
3315             /// <since_tizen> 4 </since_tizen>
3316             public const uint DisplayNameIndex = (uint)Property.Id.PersonDisplayNameIndex;
3317             /// <summary>
3318             /// Display contact ID that the person belongs to (projection).
3319             /// </summary>
3320             /// <since_tizen> 4 </since_tizen>
3321             public const uint DisplayContactId = (uint)Property.Id.PersonDisplayContactId;
3322             /// <summary>
3323             /// Ringtone path of the person (projection).
3324             /// </summary>
3325             /// <since_tizen> 4 </since_tizen>
3326             public const uint RingtonePath = (uint)Property.Id.PersonRingtone;
3327             /// <summary>
3328             /// Image thumbnail path of the person (projection).
3329             /// </summary>
3330             /// <since_tizen> 4 </since_tizen>
3331             public const uint ThumbnailPath = (uint)Property.Id.PersonThumbnail;
3332             /// <summary>
3333             /// Vibration path of the person (projection).
3334             /// </summary>
3335             /// <since_tizen> 4 </since_tizen>
3336             public const uint Vibration = (uint)Property.Id.PersonVibration;
3337             /// <summary>
3338             /// Message alert path of the person (projection).
3339             /// </summary>
3340             /// <since_tizen> 4 </since_tizen>
3341             public const uint MessageAlert = (uint)Property.Id.PersonMessageAlert;
3342             /// <summary>
3343             /// Status of the social account (projection).
3344             /// </summary>
3345             /// <since_tizen> 4 </since_tizen>
3346             public const uint Status = (uint)Property.Id.PersonStatus;
3347             /// <summary>
3348             /// The person is a favorite or not.
3349             /// </summary>
3350             /// <since_tizen> 4 </since_tizen>
3351             public const uint IsFavorite = (uint)Property.Id.PersonIsFavorite;
3352             /// <summary>
3353             /// The person has a phone number or not.
3354             /// </summary>
3355             /// <since_tizen> 4 </since_tizen>
3356             public const uint HasPhoneNumber = (uint)Property.Id.PersonHasPhoneNumber;
3357             /// <summary>
3358             /// The person has an email or not.
3359             /// </summary>
3360             /// <since_tizen> 4 </since_tizen>
3361             public const uint HasEmail = (uint)Property.Id.PersonHasEmail;
3362             /// <summary>
3363             /// Link count of the contact records (projection).
3364             /// </summary>
3365             /// <since_tizen> 4 </since_tizen>
3366             public const uint LinkCount = (uint)Property.Id.PersonLinkCount;
3367             /// <summary>
3368             /// AddressBook IDs that the linked person belongs to (projection).
3369             /// </summary>
3370             /// <since_tizen> 4 </since_tizen>
3371             public const uint AddressBookIds = (uint)Property.Id.PersonAddressBookIds;
3372             /// <summary>
3373             /// AddressBook ID that the person belongs to.
3374             /// </summary>
3375             /// <since_tizen> 4 </since_tizen>
3376             public const uint AddressBookId = (uint)Property.Id.ContactAddressBookId;
3377             /// <summary>
3378             /// AddressBook mode, refer to the AddressBook.Mode.
3379             /// </summary>
3380             /// <since_tizen> 4 </since_tizen>
3381             public const uint AddressBookMode = (uint)Property.Id.AddressBookMode;
3382             /// <summary>
3383             /// Group ID that the person belongs to.
3384             /// </summary>
3385             /// <since_tizen> 4 </since_tizen>
3386             public const uint GroupId = (uint)Property.Id.GroupRelationGroupId;
3387             /// <summary>
3388             /// Contact ID that the person belongs to (projection).
3389             /// </summary>
3390             /// <since_tizen> 4 </since_tizen>
3391             public const uint ContactId = (uint)Property.Id.GroupRelationContactId;
3392             /// <summary>
3393             /// Keyword matched data type, refer to they Contact.DataType.
3394             /// </summary>
3395             /// <since_tizen> 4 </since_tizen>
3396             public const uint SnippetType = (uint)Property.Id.PersonSnippetType;
3397             /// <summary>
3398             /// Keyword matched data string.
3399             /// </summary>
3400             /// <since_tizen> 4 </since_tizen>
3401             public const uint SnippetString = (uint)Property.Id.PersonSnippetString;
3402         };
3403
3404         /// <summary>
3405         /// Describes the properties of a PersonGroupNotAssigned record.
3406         /// </summary>
3407         /// <remarks>Read only view</remarks>
3408         /// <since_tizen> 4 </since_tizen>
3409         public static class PersonGroupNotAssigned
3410         {
3411             /// <summary>
3412             /// Identifier of this person's group not assigned view.
3413             /// </summary>
3414             /// <since_tizen> 4 </since_tizen>
3415             public const string Uri = "tizen.contacts_view.person/simple_contact/group_not_assigned";
3416             /// <summary>
3417             /// Database record ID of the person.
3418             /// </summary>
3419             /// <since_tizen> 4 </since_tizen>
3420             public const uint PersonId = (uint)Property.Id.PersonId;
3421             /// <summary>
3422             /// Display name of the person.
3423             /// </summary>
3424             /// <since_tizen> 4 </since_tizen>
3425             public const uint DisplayName = (uint)Property.Id.PersonDisplayName;
3426             /// <summary>
3427             /// The first character of first string for grouping. This is normalized using ICU (projection).
3428             /// </summary>
3429             /// <since_tizen> 4 </since_tizen>
3430             public const uint DisplayNameIndex = (uint)Property.Id.PersonDisplayNameIndex;
3431             /// <summary>
3432             /// Display contact ID that the person belongs to (projection).
3433             /// </summary>
3434             /// <since_tizen> 4 </since_tizen>
3435             public const uint DisplayContactId = (uint)Property.Id.PersonDisplayContactId;
3436             /// <summary>
3437             /// Ringtone path of the person (projection).
3438             /// </summary>
3439             /// <since_tizen> 4 </since_tizen>
3440             public const uint RingtonePath = (uint)Property.Id.PersonRingtone;
3441             /// <summary>
3442             /// Image thumbnail path of the person (projection).
3443             /// </summary>
3444             /// <since_tizen> 4 </since_tizen>
3445             public const uint ThumbnailPath = (uint)Property.Id.PersonThumbnail;
3446             /// <summary>
3447             /// Vibration path of the person (projection).
3448             /// </summary>
3449             /// <since_tizen> 4 </since_tizen>
3450             public const uint Vibration = (uint)Property.Id.PersonVibration;
3451             /// <summary>
3452             /// Message alert path of the person (projection).
3453             /// </summary>
3454             /// <since_tizen> 4 </since_tizen>
3455             public const uint MessageAlert = (uint)Property.Id.PersonMessageAlert;
3456             /// <summary>
3457             /// Status of the social account (projection).
3458             /// </summary>
3459             /// <since_tizen> 4 </since_tizen>
3460             public const uint Status = (uint)Property.Id.PersonStatus;
3461             /// <summary>
3462             /// The person is a favorite or not.
3463             /// </summary>
3464             /// <since_tizen> 4 </since_tizen>
3465             public const uint IsFavorite = (uint)Property.Id.PersonIsFavorite;
3466             /// <summary>
3467             /// The person has a phone number or not.
3468             /// </summary>
3469             /// <since_tizen> 4 </since_tizen>
3470             public const uint HasPhoneNumber = (uint)Property.Id.PersonHasPhoneNumber;
3471             /// <summary>
3472             /// The person has an email or not.
3473             /// </summary>
3474             /// <since_tizen> 4 </since_tizen>
3475             public const uint HasEmail = (uint)Property.Id.PersonHasEmail;
3476             /// <summary>
3477             /// Link count of the contact records (projection).
3478             /// </summary>
3479             /// <since_tizen> 4 </since_tizen>
3480             public const uint LinkCount = (uint)Property.Id.PersonLinkCount;
3481             /// <summary>
3482             /// AddressBook IDs that the linked person belongs to (projection).
3483             /// </summary>
3484             /// <since_tizen> 4 </since_tizen>
3485             public const uint AddressBookIds = (uint)Property.Id.PersonAddressBookIds;
3486             /// <summary>
3487             /// AddressBook ID that the person belongs to.
3488             /// </summary>
3489             /// <since_tizen> 4 </since_tizen>
3490             public const uint AddressBookId = (uint)Property.Id.ContactAddressBookId;
3491             /// <summary>
3492             /// AddressBook mode, refer to the AddressBook.Mode.
3493             /// </summary>
3494             /// <since_tizen> 4 </since_tizen>
3495             public const uint AddressBookMode = (uint)Property.Id.AddressBookMode;
3496             /// <summary>
3497             /// Contact ID that the person belongs to (projection).
3498             /// </summary>
3499             /// <since_tizen> 4 </since_tizen>
3500             public const uint ContactId = (uint)Property.Id.ContactId;
3501             /// <summary>
3502             /// Keyword matched data type, refer to they Contact.DataType.
3503             /// </summary>
3504             /// <since_tizen> 4 </since_tizen>
3505             public const uint SnippetType = (uint)Property.Id.PersonSnippetType;
3506             /// <summary>
3507             /// Keyword matched data string.
3508             /// </summary>
3509             /// <since_tizen> 4 </since_tizen>
3510             public const uint SnippetString = (uint)Property.Id.PersonSnippetString;
3511         };
3512
3513         /// <summary>
3514         /// Describes the properties of a PersonPhoneLog record.
3515         /// </summary>
3516         /// <remarks>Read only view</remarks>
3517         /// <since_tizen> 4 </since_tizen>
3518         public static class PersonPhoneLog
3519         {
3520             /// <summary>
3521             /// Identifier of this phone log view.
3522             /// </summary>
3523             /// <since_tizen> 4 </since_tizen>
3524             public const string Uri = "tizen.contacts_view.person/simple_contact/phonelog";
3525             /// <summary>
3526             /// Database record ID of the person.
3527             /// </summary>
3528             /// <since_tizen> 4 </since_tizen>
3529             public const uint PersonId = (uint)Property.Id.PersonId;
3530             /// <summary>
3531             /// Display name of the person.
3532             /// </summary>
3533             /// <since_tizen> 4 </since_tizen>
3534             public const uint DisplayName = (uint)Property.Id.PersonDisplayName;
3535             /// <summary>
3536             /// Image thumbnail path of the person (projection).
3537             /// </summary>
3538             /// <since_tizen> 4 </since_tizen>
3539             public const uint ThumbnailPath = (uint)Property.Id.PersonThumbnail;
3540             /// <summary>
3541             /// Database record ID of phone log.
3542             /// </summary>
3543             /// <since_tizen> 4 </since_tizen>
3544             public const uint LogId = (uint)Property.Id.PhonelogId;
3545             /// <summary>
3546             /// Number or email that the phone log displays.
3547             /// </summary>
3548             /// <since_tizen> 4 </since_tizen>
3549             public const uint Address = (uint)Property.Id.PhonelogAddress;
3550             /// <summary>
3551             /// Number or email type (projection).
3552             /// </summary>
3553             /// <since_tizen> 4 </since_tizen>
3554             public const uint AddressType = (uint)Property.Id.DataData1;
3555             /// <summary>
3556             /// Call end time. The value means the number of seconds since 1970-01-01 00:00:00 (UTC).
3557             /// </summary>
3558             /// <since_tizen> 4 </since_tizen>
3559             public const uint LogTime = (uint)Property.Id.PhonelogLogTime;
3560             /// <summary>
3561             /// Log type, refer to the PhoneLog.Types.
3562             /// </summary>
3563             /// <since_tizen> 4 </since_tizen>
3564             public const uint LogType = (uint)Property.Id.PhonelogLogType;
3565             /// <summary>
3566             /// You can set the related integer data (For exmaple, message_id, email_id, or duration (seconds) of the call) (projection).
3567             /// </summary>
3568             /// <since_tizen> 4 </since_tizen>
3569             public const uint ExtraData1 = (uint)Property.Id.PhonelogExtraData1;
3570             /// <summary>
3571             /// You can set the related string data (For example, short message, subject) (projection).
3572             /// </summary>
3573             /// <since_tizen> 4 </since_tizen>
3574             public const uint ExtraData2 = (uint)Property.Id.PhonelogExtraData2;
3575             /// <summary>
3576             /// You can only use this property for the search filter.
3577             /// </summary>
3578             /// <since_tizen> 4 </since_tizen>
3579             public const uint NormalizedAddress = (uint)Property.Id.PhonelogNormalizedAddress;
3580             /// <summary>
3581             /// You can only use this property for the search filter.
3582             /// </summary>
3583             /// <since_tizen> 4 </since_tizen>
3584             public const uint CleanedAddress = (uint)Property.Id.PhonelogCleanedAddress;
3585             /// <summary>
3586             /// You can only use this property for the search filter.
3587             /// </summary>
3588             /// <since_tizen> 4 </since_tizen>
3589             public const uint AddressFilter = (uint)Property.Id.PhonelogAddressFilter;
3590             /// <summary>
3591             /// It is related to the Sim SIM number. SimSlotNo 0 means the first SIM card, SimSlotNo 1 means the second SIM.
3592             /// </summary>
3593             /// <since_tizen> 4 </since_tizen>
3594             public const uint SimSlotNo = (uint)Property.Id.PhonelogSimSlotNo;
3595         };
3596
3597         /// <summary>
3598         /// Describes the properties of a Person Usage record.
3599         /// </summary>
3600         /// <remarks>Read only view</remarks>
3601         /// <since_tizen> 4 </since_tizen>
3602         public static class PersonUsage
3603         {
3604             /// <summary>
3605             /// Identifier of this person's usage view.
3606             /// </summary>
3607             /// <since_tizen> 4 </since_tizen>
3608             public const string Uri = "tizen.contacts_view.person/usag";
3609             /// <summary>
3610             /// Database record ID of the person.
3611             /// </summary>
3612             /// <since_tizen> 4 </since_tizen>
3613             public const uint PersonId = (uint)Property.Id.PersonId;
3614             /// <summary>
3615             /// Display name of the person.
3616             /// </summary>
3617             /// <since_tizen> 4 </since_tizen>
3618             public const uint DisplayName = (uint)Property.Id.PersonDisplayName;
3619             /// <summary>
3620             /// The first character of the first string for grouping. This is normalized using ICU (projection).
3621             /// </summary>
3622             /// <since_tizen> 4 </since_tizen>
3623             public const uint DisplayNameIndex = (uint)Property.Id.PersonDisplayNameIndex;
3624             /// <summary>
3625             /// Display contact ID that the person belongs to (projection).
3626             /// </summary>
3627             /// <since_tizen> 4 </since_tizen>
3628             public const uint DisplayContactId = (uint)Property.Id.PersonDisplayContactId;
3629             /// <summary>
3630             /// Ringtone path of the person (projection).
3631             /// </summary>
3632             /// <since_tizen> 4 </since_tizen>
3633             public const uint RingtonePath = (uint)Property.Id.PersonRingtone;
3634             /// <summary>
3635             /// Image thumbnail path of the person (projection).
3636             /// </summary>
3637             /// <since_tizen> 4 </since_tizen>
3638             public const uint ThumbnailPath = (uint)Property.Id.PersonThumbnail;
3639             /// <summary>
3640             /// Vibration path of the person (projection).
3641             /// </summary>
3642             /// <since_tizen> 4 </since_tizen>
3643             public const uint Vibration = (uint)Property.Id.PersonVibration;
3644             /// <summary>
3645             /// Message alert path of the person (projection).
3646             /// </summary>
3647             /// <since_tizen> 4 </since_tizen>
3648             public const uint MessageAlert = (uint)Property.Id.PersonMessageAlert;
3649             /// <summary>
3650             /// The person is a favorite or not.
3651             /// </summary>
3652             /// <since_tizen> 4 </since_tizen>
3653             public const uint IsFavorite = (uint)Property.Id.PersonIsFavorite;
3654             /// <summary>
3655             /// The person has a phone number or not.
3656             /// </summary>
3657             /// <since_tizen> 4 </since_tizen>
3658             public const uint HasPhoneNumber = (uint)Property.Id.PersonHasPhoneNumber;
3659             /// <summary>
3660             /// The person has an email or not.
3661             /// </summary>
3662             /// <since_tizen> 4 </since_tizen>
3663             public const uint HasEmail = (uint)Property.Id.PersonHasEmail;
3664             /// <summary>
3665             /// Usage type, refer to the Type.
3666             /// </summary>
3667             /// <since_tizen> 4 </since_tizen>
3668             public const uint UsageType = (uint)Property.Id.PersonUsageType;
3669             /// <summary>
3670             /// Usage number of the person.
3671             /// </summary>
3672             /// <since_tizen> 4 </since_tizen>
3673             public const uint TimesUsed = (uint)Property.Id.PersonTimesUsed;
3674
3675             /// <summary>
3676             /// Enumeration for the person usage types.
3677             /// </summary>
3678             /// <since_tizen> 4 </since_tizen>
3679             public enum Type
3680             {
3681                 /// <summary>
3682                 /// None.
3683                 /// </summary>
3684                 /// <since_tizen> 4 </since_tizen>
3685                 None,
3686                 /// <summary>
3687                 /// Outgoing call.
3688                 /// </summary>
3689                 /// <since_tizen> 4 </since_tizen>
3690                 OutgoingCall,
3691                 /// <summary>
3692                 /// Outgoing message.
3693                 /// </summary>
3694                 /// <since_tizen> 4 </since_tizen>
3695                 OutgoingMessage,
3696                 /// <summary>
3697                 /// Outgoing email.
3698                 /// </summary>
3699                 /// <since_tizen> 4 </since_tizen>
3700                 OutgoingEmail,
3701                 /// <summary>
3702                 /// Incoming call.
3703                 /// </summary>
3704                 /// <since_tizen> 4 </since_tizen>
3705                 IncomingCall,
3706                 /// <summary>
3707                 /// Incoming message.
3708                 /// </summary>
3709                 /// <since_tizen> 4 </since_tizen>
3710                 IncomingMessage,
3711                 /// <summary>
3712                 /// Incoming email.
3713                 /// </summary>
3714                 /// <since_tizen> 4 </since_tizen>
3715                 IncomingEmail,
3716                 /// <summary>
3717                 /// Missed call.
3718                 /// </summary>
3719                 /// <since_tizen> 4 </since_tizen>
3720                 MissedCall,
3721                 /// <summary>
3722                 /// Rejected call.
3723                 /// </summary>
3724                 /// <since_tizen> 4 </since_tizen>
3725                 RejectedCall,
3726                 /// <summary>
3727                 /// Blocked call.
3728                 /// </summary>
3729                 /// <since_tizen> 4 </since_tizen>
3730                 BlockedCall,
3731                 /// <summary>
3732                 /// Blocked message.
3733                 /// </summary>
3734                 /// <since_tizen> 4 </since_tizen>
3735                 BlockedMessage
3736             }
3737         };
3738
3739         /// <summary>
3740         /// Describes the properties of a ContactNumber record.
3741         /// </summary>
3742         /// <remarks>Read-only view.</remarks>
3743         /// <since_tizen> 4 </since_tizen>
3744         public static class ContactNumber
3745         {
3746             /// <summary>
3747             /// Identifier of this contacts number view.
3748             /// </summary>
3749             /// <since_tizen> 4 </since_tizen>
3750             public const string Uri = "tizen.contacts_view.simple_contact/number";
3751             /// <summary>
3752             /// Contact ID that the number belongs to.
3753             /// </summary>
3754             /// <since_tizen> 4 </since_tizen>
3755             public const uint ContactId = (uint)Property.Id.ContactId;
3756             /// <summary>
3757             /// Display name of the contact that the number belongs to.
3758             /// </summary>
3759             /// <since_tizen> 4 </since_tizen>
3760             public const uint DisplayName = (uint)Property.Id.ContactDisplayName;
3761             /// <summary>
3762             /// The source type of the display name, refer to the Contact.DisplayNameSourceType (projection).
3763             /// </summary>
3764             /// <since_tizen> 4 </since_tizen>
3765             public const uint DisplaySourceType = (uint)Property.Id.ContactDisplaySourceDataId;
3766             /// <summary>
3767             /// AddressBook ID that the number belongs to.
3768             /// </summary>
3769             /// <since_tizen> 4 </since_tizen>
3770             public const uint AddressBookId = (uint)Property.Id.ContactAddressBookId;
3771             /// <summary>
3772             /// Person ID that the number belongs to.
3773             /// </summary>
3774             /// <since_tizen> 4 </since_tizen>
3775             public const uint PersonId = (uint)Property.Id.ContactPersonId;
3776             /// <summary>
3777             /// Ringtone path that the number belongs to (projection).
3778             /// </summary>
3779             /// <since_tizen> 4 </since_tizen>
3780             public const uint RingtonePath = (uint)Property.Id.ContactRingtone;
3781             /// <summary>
3782             /// Image thumbnail path that the number belongs to (projection).
3783             /// </summary>
3784             /// <since_tizen> 4 </since_tizen>
3785             public const uint ThumbnailPath = (uint)Property.Id.ContactThumbnail;
3786             /// <summary>
3787             /// Database record ID of the number.
3788             /// </summary>
3789             /// <since_tizen> 4 </since_tizen>
3790             public const uint NumberId = (uint)Property.Id.NumberId;
3791             /// <summary>
3792             /// Number type, refer to the Number.Types (projection).
3793             /// </summary>
3794             /// <since_tizen> 4 </since_tizen>
3795             public const uint Type = (uint)Property.Id.NumberType;
3796             /// <summary>
3797             /// Custom number type label, when the number type is Number.Types.Custom (projection).
3798             /// </summary>
3799             /// <since_tizen> 4 </since_tizen>
3800             public const uint Label = (uint)Property.Id.NumberLabel;
3801             /// <summary>
3802             /// The number is the default number or not.
3803             /// </summary>
3804             /// <since_tizen> 4 </since_tizen>
3805             public const uint IsDefault = (uint)Property.Id.NumberIsDefault;
3806             /// <summary>
3807             /// Number.
3808             /// </summary>
3809             /// <since_tizen> 4 </since_tizen>
3810             public const uint Number = (uint)Property.Id.NumberNumber;
3811             /// <summary>
3812             /// If you add a filter with this property, the string will be normalized as the minimal match length internally and the match rule will be applied ContactsFilter.StringMatchType.Exactly.
3813             /// </summary>
3814             /// <since_tizen> 4 </since_tizen>
3815             public const uint NumberFilter = (uint)Property.Id.NumberNumberFilter;
3816             /// <summary>
3817             /// You can only use this property for the search filter.
3818             /// </summary>
3819             /// <since_tizen> 4 </since_tizen>
3820             public const uint NormalizedNumber = (uint)Property.Id.NumberNormalizedNumber;
3821             /// <summary>
3822             /// You can only use this property for the search filter.
3823             /// </summary>
3824             /// <since_tizen> 4 </since_tizen>
3825             public const uint CleanedNumber = (uint)Property.Id.NumberCleanedNumber;
3826         };
3827
3828         /// <summary>
3829         /// Describes the properties of a ContactEmail record.
3830         /// </summary>
3831         /// <remarks>Read only view</remarks>
3832         /// <since_tizen> 4 </since_tizen>
3833         public static class ContactEmail
3834         {
3835             /// <summary>
3836             /// Identifier of this contacts email view.
3837             /// </summary>
3838             /// <since_tizen> 4 </since_tizen>
3839             public const string Uri = "tizen.contacts_view.simple_contact/email";
3840             /// <summary>
3841             /// Contact ID that the number belongs to.
3842             /// </summary>
3843             /// <since_tizen> 4 </since_tizen>
3844             public const uint ContactId = (uint)Property.Id.ContactId;
3845             /// <summary>
3846             /// Display name of the contact that the number belongs to.
3847             /// </summary>
3848             /// <since_tizen> 4 </since_tizen>
3849             public const uint DisplayName = (uint)Property.Id.ContactDisplayName;
3850             /// <summary>
3851             /// The source type of the display name, refer to the Contact.DisplayNameSourceType (projection).
3852             /// </summary>
3853             /// <since_tizen> 4 </since_tizen>
3854             public const uint DisplaySourceType = (uint)Property.Id.ContactDisplaySourceDataId;
3855             /// <summary>
3856             /// AddressBook ID that the number belongs to.
3857             /// </summary>
3858             /// <since_tizen> 4 </since_tizen>
3859             public const uint AddressBookId = (uint)Property.Id.ContactAddressBookId;
3860             /// <summary>
3861             /// Person ID that the number belongs to.
3862             /// </summary>
3863             /// <since_tizen> 4 </since_tizen>
3864             public const uint PersonId = (uint)Property.Id.ContactPersonId;
3865             /// <summary>
3866             /// Ringtone path that the number belongs to (projection).
3867             /// </summary>
3868             /// <since_tizen> 4 </since_tizen>
3869             public const uint RingtonePath = (uint)Property.Id.ContactRingtone;
3870             /// <summary>
3871             /// Image thumbnail path that the number belongs to (projection).
3872             /// </summary>
3873             /// <since_tizen> 4 </since_tizen>
3874             public const uint ThumbnailPath = (uint)Property.Id.ContactThumbnail;
3875             /// <summary>
3876             /// Database record ID of the email.
3877             /// </summary>
3878             /// <since_tizen> 4 </since_tizen>
3879             public const uint EmailId = (uint)Property.Id.EmailId;
3880             /// <summary>
3881             /// Email type, refer to the Email.Types (projection).
3882             /// </summary>
3883             /// <since_tizen> 4 </since_tizen>
3884             public const uint Type = (uint)Property.Id.EmailType;
3885             /// <summary>
3886             /// Custom mail type label, when the email type is Email.Types.Custom (projection).
3887             /// </summary>
3888             /// <since_tizen> 4 </since_tizen>
3889             public const uint Label = (uint)Property.Id.EmailLabel;
3890             /// <summary>
3891             /// The email is the default email or not.
3892             /// </summary>
3893             /// <since_tizen> 4 </since_tizen>
3894             public const uint IsDefault = (uint)Property.Id.EmailIsDefault;
3895             /// <summary>
3896             /// Email address.
3897             /// </summary>
3898             /// <since_tizen> 4 </since_tizen>
3899             public const uint Email = (uint)Property.Id.EmailEmail;
3900         };
3901
3902         /// <summary>
3903         /// Describes the properties of a ContactGroupRelation record.
3904         /// </summary>
3905         /// <remarks>Read only view</remarks>
3906         /// <since_tizen> 4 </since_tizen>
3907         public static class ContactGroupRelation
3908         {
3909             /// <summary>
3910             /// Identifier of this contacts group relation view.
3911             /// </summary>
3912             /// <since_tizen> 4 </since_tizen>
3913             public const string Uri = "tizen.contacts_view.simple_contact/group";
3914             /// <summary>
3915             /// Contact ID that the number belongs to.
3916             /// </summary>
3917             /// <since_tizen> 4 </since_tizen>
3918             public const uint ContactId = (uint)Property.Id.ContactId;
3919             /// <summary>
3920             /// Display name of the contact that the number belongs to.
3921             /// </summary>
3922             /// <since_tizen> 4 </since_tizen>
3923             public const uint DisplayName = (uint)Property.Id.ContactDisplayName;
3924             /// <summary>
3925             /// The source type of the display name, refer to the Contact.DisplayNameSourceType (projection).
3926             /// </summary>
3927             /// <since_tizen> 4 </since_tizen>
3928             public const uint DisplaySourceType = (uint)Property.Id.ContactDisplaySourceDataId;
3929             /// <summary>
3930             /// AddressBook ID that the number belongs to.
3931             /// </summary>
3932             /// <since_tizen> 4 </since_tizen>
3933             public const uint AddressBookId = (uint)Property.Id.ContactAddressBookId;
3934             /// <summary>
3935             /// Person ID that the number belongs to.
3936             /// </summary>
3937             /// <since_tizen> 4 </since_tizen>
3938             public const uint PersonId = (uint)Property.Id.ContactPersonId;
3939             /// <summary>
3940             /// Ringtone path that the number belongs to (projection).
3941             /// </summary>
3942             /// <since_tizen> 4 </since_tizen>
3943             public const uint RingtonePath = (uint)Property.Id.ContactRingtone;
3944             /// <summary>
3945             /// Image thumbnail path that the number belongs to (projection).
3946             /// </summary>
3947             /// <since_tizen> 4 </since_tizen>
3948             public const uint ThumbnailPath = (uint)Property.Id.ContactThumbnail;
3949             /// <summary>
3950             /// Database record ID of the group relation.
3951             /// </summary>
3952             /// <since_tizen> 4 </since_tizen>
3953             public const uint GroupId = (uint)Property.Id.GroupRelationGroupId;
3954             /// <summary>
3955             /// Group name (projection).
3956             /// </summary>
3957             /// <since_tizen> 4 </since_tizen>
3958             public const uint GroupName = (uint)Property.Id.GroupRelationGroupName;
3959         };
3960
3961         /// <summary>
3962         /// Describes the properties of a Phone Log Statistics record.
3963         /// </summary>
3964         /// <remarks>Read-only view.</remarks>
3965         /// <since_tizen> 4 </since_tizen>
3966         public static class PhoneLogStatistics
3967         {
3968             /// <summary>
3969             /// Identifier of this log statistics view.
3970             /// </summary>
3971             /// <since_tizen> 4 </since_tizen>
3972             public const string Uri = "tizen.contacts_view.phonelog_stat";
3973             /// <summary>
3974             /// Log count (projection).
3975             /// </summary>
3976             /// <since_tizen> 4 </since_tizen>
3977             public const uint LogCount = (uint)Property.Id.PhonelogStatLogCount;
3978             /// <summary>
3979             /// Log type, see the contacts_phone_log_type_e.
3980             /// </summary>
3981             /// <since_tizen> 4 </since_tizen>
3982             public const uint LogType = (uint)Property.Id.PhonelogStatLogType;
3983             /// <summary>
3984             /// It is related to the SIM slot number. sim_slot_no 0 means the first SIM card, sim_slot_no 1 means the second SIM. It is same with the handle index of the telephony handle list. Refer to the telephony_init().
3985             /// </summary>
3986             /// <since_tizen> 4 </since_tizen>
3987             public const uint SimSlotNo = (uint)Property.Id.PhonelogStatSimSlotNo;
3988         };
3989     }
3990 }