33
33
<tp:member type="as" name="Parameters">
35
A list of (lowercased) vCard type parameters applicable to this field.
36
For example, a contact's preferred home address would have parameters
40
This is a list of strings rather than a bitwise OR of enum members
41
because vCard type parameters are essentially arbitrary strings.
34
<tp:docstring xmlns="http://www.w3.org/1999/xhtml">
35
<p>A list of vCard type parameters applicable to this field, with their
36
values. The type parameter names, and any values that are
37
case-insensitive in vCard, MUST be in lower case. For example, a
38
contact's preferred home address would have parameters
39
'type=home' and 'type=pref'.</p>
42
The type parameter 'type' is likely to be the most common, but
43
there can be others, such as 'language=en'.
46
<p>Characters which are required to be escaped in vCard type
47
parameters should not be escaped in this list. For instance,
48
a field "X-FOO;SEMICOLON=\;:bar" in a vCard would become
49
('x-foo', ['semicolon=;'], ['bar']) in this interface.</p>
52
This avoids Telepathy UIs having to understand the escaping and
53
unescaping rules for vCards. The type parameter name is not
54
allowed (by RFC 2425) to contain an '=' character, so no ambiguity
45
59
<tp:member type="as" name="Field_Value">
47
For unstructured vCard fields (such as 'fn', a formatted name
48
field), a single-element array containing the field's value; for
49
structured fields (such as 'adr', an address field), an array
50
corresponding to the semicolon-separated elements of the field (with
51
empty strings for empty elements). A vCard field with multiple
52
comma-separated values should be represented by several
53
<tp:type>Contact_Info_Field</tp:type>s. Characters which are
54
required to be escaped in vCard values, such as semi-colons, should
55
not be escaped in this list.
60
<tp:docstring xmlns="http://www.w3.org/1999/xhtml">
61
<p>For unstructured vCard fields (such as 'fn', a formatted name
62
field), a single-element array containing the field's value.</p>
64
<p>For structured fields (such as 'adr', an address field), an array
65
corresponding to the semicolon-separated elements of the field (with
66
empty strings for empty elements).</p>
68
<p>A vCard field with multiple comma-separated values, such as
69
'nickname', should be represented by several
70
<tp:type>Contact_Info_Field</tp:type>s.</p>
72
<p>Characters which are required to be escaped in vCard values, such as
73
semi-colons and newlines, should not be escaped in this list (e.g. if
74
a value contains a newline, the data passed over D-Bus should
75
contain a literal newline character).</p>
58
78
An earlier draft of this interface split structured vCard fields
120
141
('fn', [], ['Wee Ninja']),
121
('n', [], ['Ninja', 'Wee', '', '', '-san']),
142
('n', ['language=ja'], ['Ninja', 'Wee', '', '', '-san']),
122
143
('org', [], ['Collabora, Ltd.', 'Human Resources; Company Policy Enforcement']),
123
('adr', ['work','postal','parcel'], ['','','11 Kings Parade','Cambridge',
124
'Cambridgeshire','CB2 1SJ','UK']),
125
('tel', ['voice','work'], ['+44 1223 362967']),
126
('tel', ['voice','work'], ['+44 7700 900753']),
127
('email', ['internet','pref'], ['wee.ninja@collabora.co.uk']),
128
('email', ['internet'], ['wee.ninja@example.com']),
144
('adr', ['type=work','type=postal','type=parcel'],
145
['','','11 Kings Parade','Cambridge', 'Cambridgeshire','CB2 1SJ','UK']),
146
('tel', ['type=voice','type=work'], ['+44 1223 362967']),
147
('tel', ['type=voice','type=work'], ['+44 7700 900753']),
148
('email', ['type=internet','type=pref'], ['wee.ninja@collabora.co.uk']),
149
('email', ['type=internet'], ['wee.ninja@example.com']),
129
150
('url', [], ['http://www.thinkgeek.com/geektoys/plush/8823/']),
151
('nickname', [], ['HR Ninja']),
152
('nickname', [], ['Enforcement Ninja'])
293
<tp:simple-type name="VCard_Field" type="s">
295
A string naming a field in a vCard, such as "fn" or "adr". Although
296
these are case-insensitive in RFC 2425, in Telepathy they MUST be
297
normalized to lower case. In the terminology of RFC 2425 this is
298
called a "type name", and corresponds to the "name" production given
303
<tp:simple-type name="VCard_Type_Parameter" type="s"
304
array-name="VCard_Type_Parameter_List">
306
A type parameter as defined by RFC 2426, such as "type=cell" or
270
311
<property name="ContactInfoFlags" type="u" access="read"
271
312
tp:type="Contact_Info_Flag" tp:name-for-bindings="Contact_Info_Flags">
273
An integer representing the bitwise-OR of flags on this channel. This
274
property should be constant over the lifetime of a connection.
314
An integer representing the bitwise-OR of flags on this connection.
315
This property should be constant over the lifetime of a connection.
280
321
may be passed to <tp:member-ref>SetContactInfo</tp:member-ref> on this
281
322
Connection.</tp:docstring>
283
<tp:member type="s" name="Name">
324
<tp:member type="s" name="Name" tp:type="VCard_Field">
284
325
<tp:docstring>A vCard field name, such as 'tel'.</tp:docstring>
287
<tp:member type="as" name="Parameters">
328
<tp:member type="as" name="Parameters" tp:type="VCard_Type_Parameter[]">
288
329
<tp:docstring>The set of vCard type parameters which may be set on this
289
330
field. If this list is empty and the
290
331
Contact_Info_Field_Flag_Parameters_Mandatory