1
0
mirror of https://github.com/moparisthebest/xeps synced 2024-11-21 16:55:07 -05:00
git-svn-id: file:///home/ksmith/gitmigration/svn/xmpp/trunk@500 4b5297f7-1745-476d-ba37-a9c6900126ab
This commit is contained in:
Peter Saint-Andre 2007-02-07 18:21:47 +00:00
parent ae5d1eecf7
commit 0f6be46f25

View File

@ -20,16 +20,17 @@
<spec>XEP-0077</spec> <spec>XEP-0077</spec>
<spec>XEP-0078</spec> <spec>XEP-0078</spec>
<spec>XEP-0086</spec> <spec>XEP-0086</spec>
<spec>XEP-0115</spec>
</dependencies> </dependencies>
<supersedes/> <supersedes/>
<supersededby/> <supersededby/>
<shortname>N/A</shortname> <shortname>N/A</shortname>
&stpeter; &stpeter;
<revision> <revision>
<version>1.1pre2</version> <version>1.1pre3</version>
<date>in progress, last updated 2007-01-31</date> <date>in progress, last updated 2007-02-07</date>
<initials>psa</initials> <initials>psa</initials>
<remark><p>Changed support for XEP-0077 from required for servers and recommended for clients to recommended for both servers and clients; changed support for XEP-0078 from required for both servers and clients to recommended for servers and not recommended for clients; changed support for XEP-0086 from required for servers and recommended for clients to recommended for both servers and clients.</p></remark> <remark><p>Changed support for XEP-0077 from required for servers and recommended for clients to recommended for both servers and clients; changed support for XEP-0078 from required for both servers and clients to recommended for servers and not recommended for clients; changed support for XEP-0086 from required for servers and recommended for clients to recommended for both servers and clients; added XEP-0115 as required for clients.</p></remark>
</revision> </revision>
<revision> <revision>
<version>1.0</version> <version>1.0</version>
@ -115,7 +116,7 @@
<p>The software developed in the Jabber community is built on the foundation of XML streams, a consistent addressing scheme (JIDs), channel encryption, authentication of an entity (client or server) with a server, three core data elements (&MESSAGE;, &PRESENCE;, and &IQ;), and proper handling of XML namespaces. These foundational building blocks have been formalized within RFC 3920, support for which is REQUIRED by this protocol suite.</p> <p>The software developed in the Jabber community is built on the foundation of XML streams, a consistent addressing scheme (JIDs), channel encryption, authentication of an entity (client or server) with a server, three core data elements (&MESSAGE;, &PRESENCE;, and &IQ;), and proper handling of XML namespaces. These foundational building blocks have been formalized within RFC 3920, support for which is REQUIRED by this protocol suite.</p>
<p>However, XMPP Core is not fully congruent with the core of what has traditionally been known as "Jabber", and this divergence needs to be captured in the Basic IM Protocol Suite. For the sake of backward compatibility, support for &xep0078; is RECOMMENDED for servers (but not clients) as a fallback method of authentication by older deployed clients. <note>Older software also used port 5223 for SSL-enabled communications between a client and a server, rather than upgrading port 5222 as is done during TLS negotiation (the equivalent for server-to-server communications was never implemented). Support for this behavior is OPTIONAL on the part of servers for backwards-compatibility with older deployed clients.</note> In addition, support for the error 'code' attribute specified in &xep0086; is RECOMMENDED for both clients and servers.</p> <p>However, XMPP Core is not fully congruent with the core of what has traditionally been known as "Jabber", and this divergence needs to be captured in the Basic IM Protocol Suite. For the sake of backward compatibility, support for &xep0078; is RECOMMENDED for servers (but not clients) as a fallback method of authentication by older deployed clients. <note>Older software also used port 5223 for SSL-enabled communications between a client and a server, rather than upgrading port 5222 as is done during TLS negotiation (the equivalent for server-to-server communications was never implemented). Support for this behavior is OPTIONAL on the part of servers for backwards-compatibility with older deployed clients.</note> In addition, support for the error 'code' attribute specified in &xep0086; is RECOMMENDED for both clients and servers.</p>
<p>RFC 3920 does not define everything that is normally expected of even a minimal instant messaging and presence application (in effect, it defines the transport layer rather than the IM and presence application layer). Much of this IM and presence functionality is defined in RFC 3921 in order to meet the requirements of RFC 2779. In particular, RFC 3921 defines roster management, presence subscriptions, and routing and delivery guidelines for clients and servers. Therefore, support for <cite>RFC 3921</cite> is REQUIRED.</p> <p>RFC 3920 does not define everything that is normally expected of even a minimal instant messaging and presence application (in effect, it defines the transport layer rather than the IM and presence application layer). Much of this IM and presence functionality is defined in RFC 3921 in order to meet the requirements of RFC 2779. In particular, RFC 3921 defines roster management, presence subscriptions, and routing and delivery guidelines for clients and servers. Therefore, support for <cite>RFC 3921</cite> is REQUIRED.</p>
<p>Furthermore, Jabber instant messaging and presence applications typically include the ability to discover information about other entities on the network, and to reply to queries for information. This behavior is extremely helpful because it ensures that entities on the network can determine each other's capabilities and thus understand how to communicate together. Therefore, support for &xep0030; is REQUIRED by this protocol suite.</p> <p>Furthermore, Jabber instant messaging and presence applications typically include the ability to discover information about other entities on the network, and to reply to queries for information. This behavior is extremely helpful because it ensures that entities on the network can determine each other's capabilities and thus understand how to communicate together. Therefore, support for &xep0030; is REQUIRED by this protocol suite, as is (for clients) the dynamic profile of service discovery specified in &xep0115;.</p>
<p>Traditionally, Jabber servers (and some services) have also offered the ability for clients to register accounts "in-band" (see &xep0077;) in order to bootstrap participation on the network; support for that protocol is RECOMMENDED but any given server deployment MAY disable in-band registration as a matter of service provisioning.</p> <p>Traditionally, Jabber servers (and some services) have also offered the ability for clients to register accounts "in-band" (see &xep0077;) in order to bootstrap participation on the network; support for that protocol is RECOMMENDED but any given server deployment MAY disable in-band registration as a matter of service provisioning.</p>
<p>Thus we define the Basic IM Protocol Suite as follows:</p> <p>Thus we define the Basic IM Protocol Suite as follows:</p>
<table caption='Required and Recommended Specifications'> <table caption='Required and Recommended Specifications'>
@ -147,6 +148,10 @@
<td><strong>XEP-0086: Error Condition Mappings</strong></td> <td><strong>XEP-0086: Error Condition Mappings</strong></td>
<td>RECOMMENDED</td> <td>RECOMMENDED</td>
</tr> </tr>
<tr>
<td><strong>XEP-0115: Entity Capabilities</strong></td>
<td>REQUIRED for clients</td>
</tr>
</table> </table>
</section1> </section1>
<section1 topic='Security Considerations' anchor='security'> <section1 topic='Security Considerations' anchor='security'>