clarify the no-storage/no-store confusion in XEP-0334 and add a new hint to always store message

the message hints XEP confusingly talks about no-storage and no-permanent-storage in one place even though no-store was meant
added a new message hint to ask the server to store messages even though they do not contain a body. like encrypted messages
This commit is contained in:
Daniel Gultsch 2015-09-01 16:44:05 +02:00 committed by Matthew A. Miller
parent e22172cf39
commit 0f40c22668
1 changed files with 21 additions and 4 deletions

View File

@ -21,6 +21,15 @@
<supersededby/>
<shortname>NOT_YET_ASSIGNED</shortname>
&mwild;
<revision>
<version>0.2</version>
<date>2015-09-01</date>
<initials>dg</initials>
<remark>
<p>Fixed the wrong use of no-storage instead of no-store</p>
<p>Added a message hint &lt;store/&gt;</p>
</remark>
</revision>
<revision>
<version>0.1</version>
<date>2013-07-11</date>
@ -45,6 +54,7 @@
<ul>
<li>Whether to store a message (e.g. for archival or as an 'offline message').</li>
<li>Whether to copy a message to other resources.</li>
<li>Whether to store a message that would not have been stored under normal conditions</li>
</ul>
</section1>
<section1 topic='Use Cases' anchor='usecases'>
@ -74,16 +84,19 @@
recipient is offline at the time of sending). Such a message can be marked with the &lt;no-permanent-store/&gt; hint.
</p>
</section2>
<section2 topic="Storage-worthy messages" anchor='store-worthy'>
<p>Offline storage and &xep0313; can define their own rules on what messages to store and usually only store messages that contain a body element. However a sender may want to indicate that a message is worth storeing even though it might not match those rules (e.g. an encrypted message that carries the payload outside the body element). Such a message can be marked with a &lt;store/&gt; hint.</p>
</section2>
</section1>
<section1 topic="Hints" anchor="hints">
<section2 topic="No permanent storage" anchor="no-permanent-store">
<p>The &lt;no-permanent-storage/&gt; hint informs entities that they shouldn't store the message in
<section2 topic="No permanent store" anchor="no-permanent-store">
<p>The &lt;no-permanent-store/&gt; hint informs entities that they shouldn't store the message in
any permanent or semi-permanent public or private archive (such as described in &xep0136; and &xep0313;)
or in logs (such as chatroom logs).
</p>
</section2>
<section2 topic="No storage" anchor="no-store">
<p>A message containing a &lt;no-storage/&gt; hint should not be stored by a server either permanently (as above)
<section2 topic="No store" anchor="no-store">
<p>A message containing a &lt;no-store/&gt; hint should not be stored by a server either permanently (as above)
or temporarily, e.g. for later delivery to an offline client, or to users not currently present in a chatroom.
</p>
</section2>
@ -95,6 +108,9 @@
occupants in a &xep0045; room.
</p>
</section2>
<section2 topic="Store">
<p>A message containing the &lt;store/&gt; hint that is not of type 'error' SHOULD be stored by the entity.</p>
</section2>
</section1>
<section1 topic='Business Rules' anchor='rules'>
<p>It is important to note that message hints are, as the name implies, just hints. Implementations
@ -122,6 +138,7 @@
<xs:element name='no-permanent-store' type='empty'/>
<xs:element name='no-store' type='empty'/>
<xs:element name='no-copy' type='empty'/>
<xs:element name='store' type='empty'/>
<xs:simpleType name='empty'>
<xs:restriction base='xs:string'>