I'd rather see:<br><br><span class="q"></span><message to='<a href="http://mari@mus.se/work">mari@mus.se/work</a>' type='chat'><br> <thread>ee2944c6</thread><br> <x xmlns='<a href="http://jabber.org/protocol/svgwb'">
http://jabber.org/protocol/svgwb'</a>><br> <image x='32.0' y='32.0'<br> xlink:href='<a href="http://xmpp:mats@home.se/coci?sipub=pub0123">xmpp:mats@home.se/coci?sipub=pub0123</a>
'<br> id='158229644' width='128' height='128'><br> </image><br> </x><br> <sipub xmlns='<a href="http://jabber.org/protocol/si-pub">http://jabber.org/protocol/si-pub
</a>'<br> id='publish-0123'<br> mime-type='image/png'<br> profile='<a href="http://jabber.org/protocol/si/profile/file-transfer'">http://jabber.org/protocol/si/profile/file-transfer'
</a>><br> <file xmlns='<a href="http://jabber.org/protocol/si/profile/file-transfer">http://jabber.org/protocol/si/profile/file-transfer</a>'<br> name='blender.png'<br> size='12582'
<br> date='2004-01-28T10:07Z'><br> <desc>All Shakespearean characters must sign and return this NDA ASAP</desc><br> </file><br> </sipub><br></message><br><br>and then the start/starting/si as defined in the si-pub xep.
<br><br>Is there a particular reason to use sipub instead of start/starting?<br><br>(Except for tying the sipub id to the si sid, which if you want to do, then let's rather see if we can change the xep to ask for that, instead of creating brand new elements. You should be able to track them via your iq's id anyways).
<br><br>Norman<br><br><div><span class="gmail_quote">On 9/28/07, <b class="gmail_sendername">Mats Bengtsson</b> <<a href="mailto:matben@privat.utfors.se">matben@privat.utfors.se</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
More thoughts:<br><br>Somewhat based on XHTML Inband Images<br><a href="http://wiki.jabber.org/index.php/XHTML_Inband_Images">http://wiki.jabber.org/index.php/XHTML_Inband_Images</a><br>I have come up with another suggestion.
<br><br>Define an URI form <a href="http://xmpp:mats@home.se/coci?sipub=pub0123">xmpp:mats@home.se/coci?sipub=pub0123</a><br>which defines a unique resource identifier to a file or other entity.<br>A client, the initiator, can include this in any appropriate place,
<br>for instance, in a SVG image element (seen from the initiator side):<br><br>SEND:<br><message to='<a href="http://mari@mus.se/work">mari@mus.se/work</a>' type='chat'><br> <thread>ee2944c6</thread>
<br> <x xmlns='<a href="http://jabber.org/protocol/svgwb'">http://jabber.org/protocol/svgwb'</a>><br> <image x='32.0' y='32.0'<br> xlink:href='<a href="http://xmpp:mats@home.se/coci?sipub=pub0123">
xmpp:mats@home.se/coci?sipub=pub0123</a>'<br> id='158229644' width='128' height='128'><br> <file xmlns='<a href="http://jabber.org/protocol/si/profile/file-transfer">http://jabber.org/protocol/si/profile/file-transfer
</a>'<br> name='blender.png' size='12582'/><br> </image><br> </x><br></message><br><br>The initiator then caches the mapping from the sipub identifier (pub0123)<br>to the actual file or entity. The target can then request this file using:
<br><br>RECV:<br><iq type='get' from='<a href="http://mari@mus.se/work">mari@mus.se/work</a>' to='<a href="http://mats@home.se/coci">mats@home.se/coci</a>' id='3210'><br> <sipub xmlns='
<a href="http://jabber.org/protocol/si-pub">http://jabber.org/protocol/si-pub</a>' id='pub0123'/><br></iq><br><br>The initiator then looks up the second id here, the sipub id attribute,<br>and if it indeed has a file reference cached for this id, it initiates an
<br>ordinary si-set/si query after sending a result:<br><br>SEND:<br><iq type='result' to='<a href="http://mari@mus.se/work">mari@mus.se/work</a>' id='3210'><br> <sipub xmlns='<a href="http://jabber.org/protocol/si-pub">
http://jabber.org/protocol/si-pub</a>'<br> id='pub0123' sid='3c803c10-6983032b'/><br></iq><br><br>Note that a sid attribute MUST be included which references the si id attribute<br>to expect when the target receives the iq-set/si query. The target must be sure
<br>to understand that when it gets the corresponding iq-set/si it must not<br>be handled as an ordinary user initiated file transfer.<br><br>Everything continues unchanged from existing Stream Initiation. If the initiator
<br>can't find the sipub id reference it answers with an error as usual.<br>Note that this XMPP URI is persistant since each request for it generates<br>a new si stream. The si streams are, of course, not persistant, but the
<br>reference from the sipub identifier to the actual file or entity is.<br>It is up to the initiating entity to decide on the lifetime of this relation.<br><br>There is a slightly alternative solution. The initiators iq-set/si must be
<br>handled in the context of the original XMPP URI which the iq-set/si element<br>doesn't say anything about. It can therefore be mistaken as an ordinary<br>user initiated file transfer. Instead we could switch the<br>
<br><si xmlns='<a href="http://jabber.org/protocol/si">http://jabber.org/protocol/si</a>' ...<br><br>into<br><br><sipub xmlns='<a href="http://jabber.org/protocol/si-pub">http://jabber.org/protocol/si-pub
</a>' ...<br><br>in all places. I have some doubts about this, though. It complicates the<br>life of a client developer.<br><br>/Mats<br></blockquote></div><br><br clear="all"><br>-- <br>- Norman Rasmussen<br> - Email:
<a href="mailto:norman@rasmussen.co.za">norman@rasmussen.co.za</a><br> - Home page: <a href="http://norman.rasmussen.co.za/">http://norman.rasmussen.co.za/</a>