annotate mod_bookmarks2/tests/conversion.scs @ 3904:d14fc974efbc

mod_muc_occupant_id: id is an attribute not a text node
author Maxime “pep” Buquet <pep@bouah.net>
date Tue, 25 Feb 2020 17:06:22 +0100
parents 1cfc8012a76f
children d835cb7d2b47
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3744
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
1 # Pubsub: Bookmarks 2.0
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
2
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
3 [Client] Juliet-old
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
4 jid: admin@localhost
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
5 password: password
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
6
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
7 [Client] Juliet-new
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
8 jid: admin@localhost
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
9 password: password
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
10
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
11 // admin@localhost is assumed to have node creation privileges
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
12
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
13 ---------
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
14
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
15 Juliet-new connects
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
16
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
17 -- Generated with https://gitlab.com/xmpp-rs/xmpp-parsers:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
18 -- cargo run --example=generate-caps https://code.matthewwild.co.uk/scansion/ <<< "<query xmlns='http://jabber.org/protocol/disco#info'><identity category='client' name='scansion' type='bot'/><feature var='http://jabber.org/protocol/disco#info'/><feature var='urn:xmpp:bookmarks:0+notify'/></query>"
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
19 Juliet-new sends:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
20 <presence id='presence0'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
21 <c xmlns='http://jabber.org/protocol/caps'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
22 hash='sha-1'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
23 node='https://code.matthewwild.co.uk/scansion/'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
24 ver='Tg9qGTn5+LdKR6TTdjCUMVohBMc='/>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
25 <c xmlns='urn:xmpp:caps'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
26 <hash xmlns='urn:xmpp:hashes:2' algo='sha-256'>5a5oTk21S9EmWQGIyuMwPKuSkPwqmXv6aKO5ftqCw/Q=</hash>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
27 <hash xmlns='urn:xmpp:hashes:2' algo='sha3-256'>f3ziwT4vDK+VxuWrhhPEEgI3HJcEw7Zg4MggYE6vjZ0=</hash>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
28 </c>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
29 </presence>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
30
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
31 Juliet-new receives:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
32 <iq from="${Juliet-new's JID}" id='disco' type='get'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
33 <query xmlns='http://jabber.org/protocol/disco#info' node='https://code.matthewwild.co.uk/scansion/#Tg9qGTn5+LdKR6TTdjCUMVohBMc='/>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
34 </iq>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
35
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
36 Juliet-new sends:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
37 <iq to="${Juliet-new's JID}" id='disco' type='result'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
38 <query xmlns='http://jabber.org/protocol/disco#info' node='https://code.matthewwild.co.uk/scansion/#Tg9qGTn5+LdKR6TTdjCUMVohBMc='>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
39 <identity category='client' name='scansion' type='bot'/>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
40 <feature var='http://jabber.org/protocol/disco#info'/>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
41 <feature var='urn:xmpp:bookmarks:0+notify'/>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
42 </query>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
43 </iq>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
44
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
45 Juliet-old connects
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
46
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
47 Juliet-old sends:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
48 <iq type='get' id='get0'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
49 <query xmlns='jabber:iq:private'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
50 <storage xmlns='storage:bookmarks'/>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
51 </query>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
52 </iq>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
53
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
54 Juliet-old receives:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
55 <iq type='result' id='get0'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
56 <query xmlns='jabber:iq:private'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
57 <storage xmlns='storage:bookmarks'/>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
58 </query>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
59 </iq>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
60
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
61 Juliet-old sends:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
62 <iq type='set' id='pub0'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
63 <query xmlns='jabber:iq:private'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
64 <storage xmlns='storage:bookmarks'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
65 <conference name='The Play&apos;s the Thing'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
66 autojoin='true'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
67 jid='theplay@conference.shakespeare.lit'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
68 <nick>JC</nick>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
69 </conference>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
70 </storage>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
71 </query>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
72 </iq>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
73
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
74 Juliet-new receives:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
75 <message type='headline' from="${Juliet-new's JID}">
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
76 <event xmlns='http://jabber.org/protocol/pubsub#event'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
77 <items node='urn:xmpp:bookmarks:0'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
78 <item id='theplay@conference.shakespeare.lit'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
79 <conference xmlns='urn:xmpp:bookmarks:0'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
80 name='The Play&apos;s the Thing'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
81 autojoin='true'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
82 <nick>JC</nick>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
83 </conference>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
84 </item>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
85 </items>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
86 </event>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
87 </message>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
88
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
89 Juliet-old receives:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
90 <iq type='result' id='pub0'/>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
91
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
92 Juliet-old sends:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
93 <iq type='get' id='get1'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
94 <query xmlns='jabber:iq:private'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
95 <storage xmlns='storage:bookmarks'/>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
96 </query>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
97 </iq>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
98
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
99 Juliet-old receives:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
100 <iq type='result' id='get1'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
101 <query xmlns='jabber:iq:private'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
102 <storage xmlns='storage:bookmarks'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
103 <conference name='The Play&apos;s the Thing'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
104 autojoin='true'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
105 jid='theplay@conference.shakespeare.lit'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
106 <nick>JC</nick>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
107 </conference>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
108 </storage>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
109 </query>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
110 </iq>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
111
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
112 Juliet-old sends:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
113 <iq type='set' id='pub1'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
114 <query xmlns='jabber:iq:private'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
115 <storage xmlns='storage:bookmarks'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
116 <conference name='The Play&apos;s the Thing'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
117 autojoin='true'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
118 jid='theplay@conference.shakespeare.lit'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
119 <nick>JC</nick>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
120 </conference>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
121 <conference name='The Orchard'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
122 autojoin='true'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
123 jid='orchard@conference.shakespeare.lit'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
124 <nick>JC</nick>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
125 </conference>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
126 </storage>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
127 </query>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
128 </iq>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
129
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
130 Juliet-new receives:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
131 <message type='headline' from="${Juliet-new's JID}">
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
132 <event xmlns='http://jabber.org/protocol/pubsub#event'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
133 <items node='urn:xmpp:bookmarks:0'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
134 <item id='orchard@conference.shakespeare.lit'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
135 <conference xmlns='urn:xmpp:bookmarks:0'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
136 name='The Orchard'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
137 autojoin='true'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
138 <nick>JC</nick>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
139 </conference>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
140 </item>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
141 </items>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
142 </event>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
143 </message>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
144
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
145 Juliet-old receives:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
146 <iq type='result' id='pub1'/>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
147
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
148 Juliet-old sends:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
149 <iq type='get' id='get2'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
150 <query xmlns='jabber:iq:private'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
151 <storage xmlns='storage:bookmarks'/>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
152 </query>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
153 </iq>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
154
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
155 Juliet-old receives:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
156 <iq type='result' id='get2'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
157 <query xmlns='jabber:iq:private'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
158 <storage xmlns='storage:bookmarks'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
159 <conference name='The Play&apos;s the Thing'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
160 autojoin='true'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
161 jid='theplay@conference.shakespeare.lit'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
162 <nick>JC</nick>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
163 </conference>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
164 <conference name='The Orchard'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
165 autojoin='true'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
166 jid='orchard@conference.shakespeare.lit'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
167 <nick>JC</nick>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
168 </conference>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
169 </storage>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
170 </query>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
171 </iq>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
172
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
173 Juliet-old sends:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
174 <iq type='set' id='retract0'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
175 <query xmlns='jabber:iq:private'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
176 <storage xmlns='storage:bookmarks'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
177 <conference name='The Orchard'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
178 autojoin='true'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
179 jid='orchard@conference.shakespeare.lit'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
180 <nick>JC</nick>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
181 </conference>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
182 </storage>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
183 </query>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
184 </iq>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
185
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
186 Juliet-new receives:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
187 <message type='headline' from="${Juliet-new's JID}">
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
188 <event xmlns='http://jabber.org/protocol/pubsub#event'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
189 <items node='urn:xmpp:bookmarks:0'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
190 <retract id='theplay@conference.shakespeare.lit'/>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
191 </items>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
192 </event>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
193 </message>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
194
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
195 Juliet-old receives:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
196 <iq type='result' id='retract0'/>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
197
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
198 Juliet-old sends:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
199 <iq type='get' id='get3'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
200 <query xmlns='jabber:iq:private'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
201 <storage xmlns='storage:bookmarks'/>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
202 </query>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
203 </iq>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
204
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
205 Juliet-old receives:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
206 <iq type='result' id='get3'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
207 <query xmlns='jabber:iq:private'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
208 <storage xmlns='storage:bookmarks'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
209 <conference name='The Orchard'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
210 autojoin='true'
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
211 jid='orchard@conference.shakespeare.lit'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
212 <nick>JC</nick>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
213 </conference>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
214 </storage>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
215 </query>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
216 </iq>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
217
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
218 Juliet-old sends:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
219 <iq type='set' id='purge0'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
220 <query xmlns='jabber:iq:private'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
221 <storage xmlns='storage:bookmarks'/>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
222 </query>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
223 </iq>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
224
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
225 Juliet-new receives:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
226 <message type='headline' from="${Juliet-new's JID}">
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
227 <event xmlns='http://jabber.org/protocol/pubsub#event'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
228 <purge node='urn:xmpp:bookmarks:0'/>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
229 </event>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
230 </message>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
231
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
232 Juliet-old receives:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
233 <iq type='result' id='purge0'/>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
234
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
235 Juliet-old sends:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
236 <iq type='get' id='get4'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
237 <query xmlns='jabber:iq:private'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
238 <storage xmlns='storage:bookmarks'/>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
239 </query>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
240 </iq>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
241
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
242 Juliet-old receives:
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
243 <iq type='result' id='get4'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
244 <query xmlns='jabber:iq:private'>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
245 <storage xmlns='storage:bookmarks'/>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
246 </query>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
247 </iq>
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
248
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
249 Juliet-old disconnects
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
250
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
251 Juliet-new disconnects
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
252
1cfc8012a76f mod_bookmarks2: Add tests.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff changeset
253 // vim: syntax=xml: