mirror of
https://github.com/moparisthebest/xeps
synced 2024-11-21 16:55:07 -05:00
0.5
git-svn-id: file:///home/ksmith/gitmigration/svn/xmpp/trunk@2131 4b5297f7-1745-476d-ba37-a9c6900126ab
This commit is contained in:
parent
70eb61da00
commit
e09663890c
321
xep-0231.xml
321
xep-0231.xml
@ -25,10 +25,17 @@
|
||||
<supersededby/>
|
||||
<shortname>NOT_YET_ASSIGNED</shortname>
|
||||
&stpeter;
|
||||
&pavlix;
|
||||
<revision>
|
||||
<version>0.5</version>
|
||||
<date>2008-08-06</date>
|
||||
<initials>psa/ps</initials>
|
||||
<remark><p>Removed alt attribute; more clearly specified where to include the data element in message, presence, and IQ stanzas; moved use cases to other specifications; removed service discovery features; modified examples.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
<version>0.4</version>
|
||||
<date>2008-08-05</date>
|
||||
<initials>psa</initials>
|
||||
<initials>psa/ps</initials>
|
||||
<remark><p>Generalized text regarding inclusion of parameters in type attribute per RFC 2045; added max-age attribute, matching semantics from RFC 2965; added section on caching of data; more clearly specified generation of Content-ID.</p></remark>
|
||||
</revision>
|
||||
<revision>
|
||||
@ -89,11 +96,6 @@
|
||||
<th>Description</th>
|
||||
<th>Inclusion</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>alt</td>
|
||||
<td>A human-readable description of the data.</td>
|
||||
<td>RECOMMENDED</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>cid</td>
|
||||
<td>A Content-ID that can be mapped to a cid: URL as specified in &rfc2111;. The 'cid' value MUST be generated so that the local-part is a UUID as specified in &rfc4122; and the domain is the XMPP domain identifier portion of the sending entity's JabberID.</td>
|
||||
@ -113,7 +115,6 @@
|
||||
<p>The following example illustrates the format (line endings are provided for readability only).</p>
|
||||
<example caption='Data element format'><![CDATA[
|
||||
<data xmlns='urn:xmpp:tmp:data-element'
|
||||
alt='A spot'
|
||||
cid='f81d4fae-7dec-11d0-a765-00a0c91e6bf6@shakespeare.lit'
|
||||
max-age='86400'
|
||||
type='image/png'>
|
||||
@ -125,6 +126,9 @@
|
||||
vr4MkhoXe0rZigAAAABJRU5ErkJggg==
|
||||
</data>
|
||||
]]></example>
|
||||
<p>When the <data/> element is included in an XMPP &MESSAGE; or &PRESENCE; stanza, it SHOULD be included as a first-level child of the stanza.</p>
|
||||
<p>When the <data/> element is included in an XMPP &IQ; stanza for data retrieval, it MUST be included as a first-level child of the stanza.</p>
|
||||
<p>When the <data/> element is included in an XMPP &IQ; stanza to refer to the data, it MUST be included as a second-level child of the stanza.</p>
|
||||
</section1>
|
||||
|
||||
<section1 topic='Caching of Data' anchor='caching'>
|
||||
@ -136,11 +140,43 @@
|
||||
<p>A receiving entity MUST cache based on the JID of the sending entity; this helps to prevent certain data poisoning attacks.</p>
|
||||
</section1>
|
||||
|
||||
<section1 topic='Use Cases' anchor='usecases'>
|
||||
<section2 topic='In-Band Images for XMPP Messaging' anchor='message'>
|
||||
<p>The <data/> element can be used in conjunction with &xep0071; and the cid: URL scheme to point to binary data that is provided in-band within a &MESSAGE; stanza.</p>
|
||||
<p>Note: The sender SHOULD NOT include an in-band image unless the intended recipient advertises (via &xep0030; or &xep0115;) support for the "urn:xmpp:tmp:data-element:inband-image" service discovery feature &NSNOTE;.</p>
|
||||
<example caption='A message with included data'><![CDATA[
|
||||
<section1 topic='Retrieving Uncached Data' anchor='retrieve'>
|
||||
<p>Data can be requested and transferred using the XMPP &IQ; stanza type by making reference to the 'cid' of the data to be retrieved. In particular, the requesting entity can request data by sending an IQ-get containing an empty <data/> element with a 'cid' attribute.</p>
|
||||
<example caption='Requesting data'><![CDATA[
|
||||
<iq from='doctor@shakespeare.lit/pda'
|
||||
id='get-data-1'
|
||||
to='gentlewoman@shakespeare.lit/phone'
|
||||
type='get'>
|
||||
<data xmlns='urn:xmpp:tmp:data-element'
|
||||
cid='f81d4fae-7dec-11d0-a765-00a0c91e6bf6@shakespeare.lit'/>
|
||||
</iq>
|
||||
]]></example>
|
||||
<p>The responding entity then would either return an error (e.g., ¬found; if it does not have data matching the Content-ID) or return the data.</p>
|
||||
<example caption='Returning data'><![CDATA[
|
||||
<iq from='gentlewoman@shakespeare.lit/phone'
|
||||
id='get-data-1'
|
||||
to='doctor@shakespeare.lit/pda'
|
||||
type='result'>
|
||||
<data xmlns='urn:xmpp:tmp:data-element'
|
||||
cid='f81d4fae-7dec-11d0-a765-00a0c91e6bf6@shakespeare.lit'
|
||||
max-age='86400'
|
||||
type='image/png'>
|
||||
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABGdBTUEAALGP
|
||||
C/xhBQAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9YGARc5KB0XV+IA
|
||||
AAAddEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIFRoZSBHSU1Q72QlbgAAAF1J
|
||||
REFUGNO9zL0NglAAxPEfdLTs4BZM4DIO4C7OwQg2JoQ9LE1exdlYvBBeZ7jq
|
||||
ch9//q1uH4TLzw4d6+ErXMMcXuHWxId3KOETnnXXV6MJpcq2MLaI97CER3N0
|
||||
vr4MkhoXe0rZigAAAABJRU5ErkJggg==
|
||||
</data>
|
||||
</iq>
|
||||
]]></example>
|
||||
<p>This specification does not place limits on the entities from which data can be requested. In particular, such an entity need not be the "owner" of the data (e.g., it could be a peer in a chatroom or whiteboarding session, or the chatroom or whiteboarding service itself).</p>
|
||||
<p>In addition, bits of data could be hosted by XMPP servers, distributed via &xep0060; nodes, or included in data collections that are available via HTTP (e.g., emoticon sets). Such data could be identified by the value of the 'cid' attribute, but methods for specifying those values are out of scope for this specification.</p>
|
||||
</section1>
|
||||
|
||||
<section1 topic='Examples' anchor='examples'>
|
||||
<p>As an example, consider the use of the <data/> element in conjunction with &xep0071;. Here the cid: URL scheme points to a data element within a &MESSAGE; stanza.</p>
|
||||
<example caption='A message with included data'><![CDATA[
|
||||
<message from='ladymacbeth@shakespeare.lit/castle'
|
||||
to='macbeth@chat.shakespeare.lit'
|
||||
type='groupchat'>
|
||||
@ -155,21 +191,13 @@
|
||||
</body>
|
||||
</html>
|
||||
<data xmlns='urn:xmpp:tmp:data-element'
|
||||
alt='A spot'
|
||||
cid='f81d4fae-7dec-11d0-a765-00a0c91e6bf6@shakespeare.lit'
|
||||
max-age='86400'
|
||||
type='image/png'>
|
||||
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABGdBTUEAALGP
|
||||
C/xhBQAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9YGARc5KB0XV+IA
|
||||
AAAddEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIFRoZSBHSU1Q72QlbgAAAF1J
|
||||
REFUGNO9zL0NglAAxPEfdLTs4BZM4DIO4C7OwQg2JoQ9LE1exdlYvBBeZ7jq
|
||||
ch9//q1uH4TLzw4d6+ErXMMcXuHWxId3KOETnnXXV6MJpcq2MLaI97CER3N0
|
||||
vr4MkhoXe0rZigAAAABJRU5ErkJggg==
|
||||
</data>
|
||||
type='image/png'/>
|
||||
</message>
|
||||
]]></example>
|
||||
<p>Once the data is provided, a subsequent message in the same session can refer to the data again without including the data itself.</p>
|
||||
<example caption='A message with referenced data'><![CDATA[
|
||||
]]></example>
|
||||
<p>Once the data element is communicated, a subsequent message in the same session can refer to the data again (via a cid: URI) without including the data element itself.</p>
|
||||
<example caption='A message with referenced data'><![CDATA[
|
||||
<message from='ladymacbeth@shakespeare.lit/castle'
|
||||
to='macbeth@chat.shakespeare.lit'
|
||||
type='groupchat'>
|
||||
@ -184,230 +212,8 @@
|
||||
</body>
|
||||
</html>
|
||||
</message>
|
||||
]]></example>
|
||||
<p>If the receiving entity has not cached the data, it can request the data as described in the <link url='#retrieve'>Retrieving Data</link> section of this document.</p>
|
||||
</section2>
|
||||
|
||||
<section2 topic='Media Data in XMPP Data Forms' anchor='form'>
|
||||
<p>&xep0221; describes how to include a media element in &xep0004;, e.g. for the purpose of placing a human-viewable "CAPTCHA" in a form that is used for &xep0158; or &xep0077;. The <media/> element described in <cite>XEP-0221</cite> contains one or more <uri/> elements (which point to locations where the media can be downloaded, e.g. via HTTP) as well as a <data/> element that includes the data itself. The <media/> element would contain a <data/> element as described herein and shown in the following example.</p>
|
||||
<example caption='Audio Media Element'><![CDATA[
|
||||
<media xmlns='urn:xmpp:tmp:media-element'>
|
||||
<uri type='audio/x-wav'>
|
||||
http://victim.example.com/challenges/speech.wav?F3A6292C
|
||||
</uri>
|
||||
<uri type='audio/ogg; codecs=speex'>
|
||||
http://victim.example.com/challenges/speech.ogg?F3A6292C
|
||||
</uri>
|
||||
<uri type='audio/mpeg'>
|
||||
http://victim.example.com/challenges/speech.mp3?F3A6292C
|
||||
</uri>
|
||||
<data xmlns='urn:xmpp:tmp:data-element'
|
||||
alt='An audio file'
|
||||
type='audio/ogg; codecs=speex'/>
|
||||
</data>
|
||||
</media>
|
||||
]]></example>
|
||||
<p>The media would then be included in a data form as illustrated in <cite>XEP-0221</cite>.</p>
|
||||
</section2>
|
||||
|
||||
<section2 topic='Previews for XMPP File Transfers' anchor='preview'>
|
||||
<p>A previous proposal <note>See <<link url='http://www.xmpp.org/extensions/inbox/file-preview.html'>http://www.xmpp.org/extensions/inbox/file-preview.html</link>>.</note> described a method for including a thumbnail or file preview in a file transfer request. Such a preview can be included using the <data/> element, as shown below.</p>
|
||||
<p>Note: The initiator SHOULD NOT include a file preview unless the receiving entity advertises (via <cite>XEP-0030</cite> or <cite>XEP-0115</cite>) support for the "urn:xmpp:tmp:data-element:file-preview" service discovery feature &NSNOTE;.</p>
|
||||
<example caption='File transfer offer with preview'><![CDATA[
|
||||
<iq from='romeo@montague.lit/home'
|
||||
id='offer1'
|
||||
to='juliet@capulet.com/chamber'
|
||||
type='set'>
|
||||
<si xmlns='http://jabber.org/protocol/si'
|
||||
profile='http://jabber.org/protocol/si/profile/file-transfer'
|
||||
id='s5b_46e78e4a0ddacc74' >
|
||||
<file xmlns='http://jabber.org/protocol/si/profile/file-transfer'
|
||||
size='330527'
|
||||
name='image.png'>
|
||||
<data xmlns='urn:xmpp:tmp:data-element'
|
||||
alt='There be dragons!'
|
||||
cid='d8f904ac-636c-11dd-8a2f-001143d5d5db@montague.lit'
|
||||
type='image/png'>
|
||||
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
|
||||
5v4/R2f0swq2hnQAAAAASUVORK5CYII=
|
||||
</data>
|
||||
<range/>
|
||||
</file>
|
||||
<feature xmlns='http://jabber.org/protocol/feature-neg'>
|
||||
<x xmlns='jabber:x:data' type='form'>
|
||||
<field var='stream-method' type='list-single'>
|
||||
<option><value>http://jabber.org/protocol/bytestreams</value></option>
|
||||
<option><value>http://jabber.org/protocol/ibb</value></option>
|
||||
</field>
|
||||
</x>
|
||||
</feature>
|
||||
</si>
|
||||
</iq>
|
||||
]]></example>
|
||||
</section2>
|
||||
|
||||
<section2 topic='Retrieving Uncached Media Data' anchor='retrieve'>
|
||||
<p>Data can be requested and transferred using the XMPP &IQ; stanza type by making reference to the 'cid' of the data to be retrieved. In particular, the requesting entity can request data by sending an IQ-get containing an empty <data/> element with a 'cid' attribute.</p>
|
||||
<example caption='Requesting data'><![CDATA[
|
||||
<iq from='doctor@shakespeare.lit/pda'
|
||||
id='get-data-1'
|
||||
to='gentlewoman@shakespeare.lit/phone'
|
||||
type='get'>
|
||||
<data xmlns='urn:xmpp:tmp:data-element'
|
||||
cid='f81d4fae-7dec-11d0-a765-00a0c91e6bf6@shakespeare.lit'/>
|
||||
</iq>
|
||||
]]></example>
|
||||
<p>The responding entity then would either return an error (e.g., ¬found; if it does not have data matching the Content-ID) or return the data.</p>
|
||||
<example caption='Returning data'><![CDATA[
|
||||
<iq from='gentlewoman@shakespeare.lit/phone'
|
||||
id='get-data-1'
|
||||
to='doctor@shakespeare.lit/pda'
|
||||
type='result'>
|
||||
<data xmlns='urn:xmpp:tmp:data-element'
|
||||
alt='A spot'
|
||||
cid='f81d4fae-7dec-11d0-a765-00a0c91e6bf6@shakespeare.lit'
|
||||
max-age='86400'
|
||||
type='image/png'>
|
||||
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABGdBTUEAALGP
|
||||
C/xhBQAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9YGARc5KB0XV+IA
|
||||
AAAddEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIFRoZSBHSU1Q72QlbgAAAF1J
|
||||
REFUGNO9zL0NglAAxPEfdLTs4BZM4DIO4C7OwQg2JoQ9LE1exdlYvBBeZ7jq
|
||||
ch9//q1uH4TLzw4d6+ErXMMcXuHWxId3KOETnnXXV6MJpcq2MLaI97CER3N0
|
||||
vr4MkhoXe0rZigAAAABJRU5ErkJggg==
|
||||
</data>
|
||||
</iq>
|
||||
]]></example>
|
||||
<p>This specification does not place limits on the entities from which data can be requested. In particular, such an entity need not be the "owner" of the data (e.g., it could be a peer in a chatroom or whiteboarding session, or the chatroom or whiteboarding service itself).</p>
|
||||
<p>In addition, bits of data could be hosted by XMPP servers, distributed via &xep0060; nodes, or included in data collections that are available via HTTP (e.g., emoticon sets). Such data could be identified by the value of the 'cid' attribute, but methods for specifying those values are out of scope for this specification.</p>
|
||||
</section2>
|
||||
|
||||
]]></example>
|
||||
<p>If the receiving entity has not cached the data, it can request the data as described in the <link url='#retrieve'>Retrieving Data</link> section of this document.</p>
|
||||
</section1>
|
||||
|
||||
<section1 topic='Security Considerations' anchor='security'>
|
||||
@ -423,22 +229,6 @@
|
||||
<section2 topic='Protocol Namespaces' anchor='ns'>
|
||||
<p>Until this specification advances to a status of Draft, its associated namespace shall be "urn:xmpp:tmp:data-element"; upon advancement of this specification, the ®ISTRAR; shall issue a permanent namespace in accordance with the process defined in Section 4 of &xep0053;.</p>
|
||||
</section2>
|
||||
<section2 topic='Service Discovery Features' anchor='registrar-features'>
|
||||
<p>If an entity is willing to accept data elements in file transfer requests for the purpose of previewing the file to be sent, it SHOULD advertise support for the "urn:xmpp:tmp:data-element:file-preview" feature.</p>
|
||||
<p>The registry submission is as follows.</p>
|
||||
<code caption='Registry Submission'><![CDATA[
|
||||
<var>
|
||||
<name>urn:xmpp:tmp:data-element:file-preview</name>
|
||||
<desc>Signals a willingness to accept data elements for previewing file transfers</desc>
|
||||
<doc>XEP-0231</doc>
|
||||
</var>
|
||||
<var>
|
||||
<name>urn:xmpp:tmp:data-element:inband-image</name>
|
||||
<desc>Signals a willingness to accept data elements for in-band message images</desc>
|
||||
<doc>XEP-0231</doc>
|
||||
</var>
|
||||
]]></code>
|
||||
</section2>
|
||||
</section1>
|
||||
|
||||
<section1 topic='XML Schema' anchor='schema'>
|
||||
@ -455,7 +245,6 @@
|
||||
<xs:complexType>
|
||||
<xs:simpleContent>
|
||||
<xs:extension base='xs:base64Binary'>
|
||||
<xs:attribute name='alt' type='xs:string' use='optional'/>
|
||||
<xs:attribute name='cid' type='xs:string' use='optional'/>
|
||||
<xs:attribute name='max-age' type='xs:nonNegativeInteger' use='optional'/>
|
||||
<xs:attribute name='type' type='xs:string' use='required'/>
|
||||
@ -469,7 +258,7 @@
|
||||
</section1>
|
||||
|
||||
<section1 topic='Acknowledgements' anchor='ack'>
|
||||
<p>Thanks to Rachel Blackman, Dave Cridland, Pavel Šimerda, and Tomasz Sterna for their feedback.</p>
|
||||
<p>Thanks to Rachel Blackman, Dave Cridland, and Tomasz Sterna for their feedback.</p>
|
||||
</section1>
|
||||
|
||||
</xep>
|
||||
|
Loading…
Reference in New Issue
Block a user