1.1rc1: Specified that collection retrieval shall be matched on a full JID only

git-svn-id: file:///home/ksmith/gitmigration/svn/xmpp/trunk@3008 4b5297f7-1745-476d-ba37-a9c6900126ab
This commit is contained in:
Peter Saint-Andre 2009-04-07 21:53:23 +00:00
parent c2262122d0
commit 03c6f65654
1 changed files with 9 additions and 4 deletions

View File

@ -35,6 +35,12 @@
</author>
&stpeter;
&infiniti;
<revision>
<version>1.1rc1</version>
<date>in progress, last updated 2009-04-07</date>
<initials>psa/at</initials>
<remark><p>Specified that collection retrieval shall be matched on a full JID only.</p></remark>
</revision>
<revision>
<version>1.0</version>
<date>2008-07-16</date>
@ -817,7 +823,7 @@
<p>Requirements and protocol flows for each of these use cases are defined below. The protocols to retrieve a list of collections and an indivdual collection both make extensive use of &xep0059;. Clients and servers SHOULD support all the features defined in that protocol.</p>
<section2 topic='Retrieving a List of Collections' anchor='manage-list'>
<p>To request a list of collections, the client sends a &lt;list/&gt; element. The 'start' and 'end' attributes MAY be specified to indicate a date range (the values of these attributes MUST be UTC and adhere to the DateTime format specified in <cite>XEP-0082</cite>). The 'with' attribute MAY be specified to limit the list to a single participating full JID, bare JID or domain.</p>
<p>In addition, the client MAY match an exact bare JID &BAREJID; by setting the boolean 'exactmatch' attribute to a value of "true" or "1" &BOOLEANNOTE; -- for details, refer to the <link url='#impl-exactmatch'>Exact JID Matching</link> section of this document.</p>
<p class='box'>Note: Collections are retrieved only based on the full JID of the conversation partner, not bare JIDs (which might result in returning multiple collections). Therefore, the &lt;retrieve/&gt; shall not possess the 'exactmatch' attribute, as can be done for other Message Archiving elements (see the <link url='#impl-exactmatch'>Exact JID Matching</link> section of this document).</p>
<p>If the 'with' attribute is omitted then collections with any JID are returned. If only 'start' is specified then all collections on or after that date should be returned. If only 'end' is specified then all collections prior to that date should be returned.</p>
<p>The client SHOULD use <cite>Result Set Management</cite> to limit the number of collections returned by the server in a single stanza, taking care not to request a page of collections that is so big it might exceed rate limiting restrictions.</p>
<example caption='Requesting the first page of a list with same JID'><![CDATA[
@ -874,7 +880,7 @@
<p>Refer to <cite>Result Set Management</cite> to learn more about the various ways that the pages of the list may be accessed.</p>
</section2>
<section2 topic='Retrieving a Collection' anchor='manage-retrieve'>
<p>To request a page of messages from a collection the client sends a &lt;retrieve/&gt; element. The 'with' and 'start' attributes specify the JID and the start time (see <cite>XEP-0082</cite>). Both attributes MUST be included to uniquely identify a collection.</p>
<p>To request a page of messages from a collection the client sends a &lt;retrieve/&gt; element. The 'with' and 'start' attributes specify the participating full JID and the start time (see <cite>XEP-0082</cite>). Both attributes MUST be included to uniquely identify a collection.</p>
<p>In addition, the client MAY match an exact bare JID &BAREJID; by setting the boolean 'exactmatch' attribute to a value of "true" or "1" &BOOLEANNOTE; -- for details, refer to the <link url='#impl-exactmatch'>Exact JID Matching</link> section of this document.</p>
<p>The client SHOULD use <cite>Result Set Management</cite> to limit the number of messages returned by the server in a single stanza, taking care not to request a page of messages that is so big it might exceed rate limiting restrictions.</p>
<example caption='Requesting the first page of a collection'><![CDATA[
@ -1102,7 +1108,7 @@
<section1 topic='Implementation Notes' anchor='impl'>
<section2 topic='Exact JID Matching' anchor='impl-exactmatch'>
<p>When the 'exactmatch' attribute is set to "true" or "1" on an element of &lt;item/&gt;, &lt;list/&gt;, &lt;remove/&gt;, or &lt;retrieve/&gt;, a 'with' value such as "example.com" matches that exact JID only rather than &lt;*@example.com&gt;, &lt;*@example.com&gt;, or &lt;example.com/*&gt;, and a 'with' value such as "localpart@example.com" matches that exact JID only rather than &lt;localpart@example.com/*&gt;.</p>
<p>When the 'exactmatch' attribute is set to "true" or "1" on an element of &lt;item/&gt;, &lt;list/&gt;, or &lt;remove/&gt;, a 'with' value such as "example.com" matches that exact JID only rather than &lt;*@example.com&gt;, &lt;*@example.com&gt;, or &lt;example.com/*&gt;, and a 'with' value such as "localpart@example.com" matches that exact JID only rather than &lt;localpart@example.com/*&gt;.</p>
</section2>
<section2 topic='Time Synchronization' anchor='impl-sync'>
<p>When creating a new collection, it is RECOMMENDED that the client synchronizes the collection start time that it sends to the server with server time. This is important since the user may subsequently retrieve the archived collection using client machines whose UTC clocks are not synchronized with the client machine that uploaded the collection. (i.e. Either or both of the clients' UTC clocks may be wrong.) The client can achieve this synchronization with server time by using &xep0202; to estimate the difference between the server and client UTC clocks.</p>
@ -1435,7 +1441,6 @@
<xs:sequence>
<xs:any processContents='lax' namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='exactmatch' type='xs:boolean' use='optional'/>
<xs:attribute name='start' type='xs:dateTime' use='required'/>
<xs:attribute name='with' type='xs:string' use='required'/>
</xs:complexType>