diff --git a/xep-0077.xml b/xep-0077.xml index e5403f64..b2e39b93 100644 --- a/xep-0077.xml +++ b/xep-0077.xml @@ -23,119 +23,125 @@ http://www.xmpp.org/schemas/iq-register.xsd &stpeter; + + 2.3pre1 + in progress, last updated 2006-07-10 + psa +

Clarified handling of cancellation requests depending on whether receiving entity is a server or a service; corrected mismatch between example and text for cancellation use case.

+
2.2 2006-01-24 psa - Further specified integration with data forms, specifically if needed to require additional information when cancelling an existing registration (e.g., username and password) or changing a password (e.g., old password); also clarified server handling of cancelled registrations. +

Further specified integration with data forms, specifically if needed to require additional information when cancelling an existing registration (e.g., username and password) or changing a password (e.g., old password); also clarified server handling of cancelled registrations.

2.1 2005-07-14 psa - Clarified the extensibility rules; removed expiration date; modified schema to document optional inclusion of jabber:x:data and jabber:x:oob information. +

Clarified the extensibility rules; removed expiration date; modified schema to document optional inclusion of jabber:x:data and jabber:x:oob information.

2.0 2004-08-30 psa - Per a vote of the Jabber Council, advanced status to Final; also specified that by server is meant an instant messaging server. +

Per a vote of the Jabber Council, advanced status to Final; also specified that by server is meant an instant messaging server.

1.6 2004-08-23 psa - In order to address Council concerns, clarified precedence order of x:data, iq:register, and x:oob; further specified server handling of initial registration requests from unregistered entities. +

In order to address Council concerns, clarified precedence order of x:data, iq:register, and x:oob; further specified server handling of initial registration requests from unregistered entities.

1.5 2004-07-21 psa - Specified server handling of requests from unregistered entities. +

Specified server handling of requests from unregistered entities.

1.4 2004-05-10 psa - Removed conformance language regarding servers and services (belongs in a protocol suite specification). +

Removed conformance language regarding servers and services (belongs in a protocol suite specification).

1.3 2004-02-24 psa - Added text about redirection to web registration. +

Added text about redirection to web registration.

1.2 2003-11-26 psa - Documented use of <key/> element; added optional stream feature; added XMPP error handling; specified handling of empty passwords. +

Documented use of <key/> element; added optional stream feature; added XMPP error handling; specified handling of empty passwords.

1.1 2003-10-02 psa - Moved change password use case from XEP-0078. +

Moved change password use case from XEP-0078.

1.0 2003-06-18 psa - Per a vote of the Jabber Council, advanced status to Draft. +

Per a vote of the Jabber Council, advanced status to Draft.

0.9 2003-06-18 psa - Changes to address Council concerns. +

Changes to address Council concerns.

0.8 2003-06-13 psa - Restored the <misc/> and <text/> elements; added the old <key/> element; specified these three elements as obsolete. +

Restored the <misc/> and <text/> elements; added the old <key/> element; specified these three elements as obsolete.

0.7 2003-06-12 psa - Added <registered/> element; specified FORM_TYPE for x:data form; clarified that support for the extensibility mechanism is optional; removed the <misc/> and <text/> elements (not necessary given extensibility option); added <nick/>, <first/>, and <last/> elements that were traditionally documented as part of jabber:iq:register. +

Added <registered/> element; specified FORM_TYPE for x:data form; clarified that support for the extensibility mechanism is optional; removed the <misc/> and <text/> elements (not necessary given extensibility option); added <nick/>, <first/>, and <last/> elements that were traditionally documented as part of jabber:iq:register.

0.6 2003-06-06 psa - Removed XMPP-style error conditions until formats are stable. +

Removed XMPP-style error conditions until formats are stable.

0.5 2003-05-30 psa - Removed "encrypted secret" content, added information about expiration date. +

Removed "encrypted secret" content, added information about expiration date.

0.4 2003-05-28 psa - Added "encrypted secret" content. +

Added "encrypted secret" content.

0.3 2003-05-20 psa - Slight editorial revisions. +

Slight editorial revisions.

0.2 2003-04-29 psa - Fixed schema, made minor editorial changes. +

Fixed schema, made minor editorial changes.

0.1 2003-04-06 psa - Initial version. +

Initial version.

@@ -311,8 +317,12 @@ ]]> -

The host MUST perform the remove based on the 'from' address of the IQ set, usually matching based on bare JID (<user@domain>). If the entity cancels its registration with a server (not a service), the server SHOULD then return a <not-authorized/> stream error and terminate all active sessions for the entity. If the server is an instant messaging and presence server that conforms to &rfc3921;, the server SHOULD also cancel all existing presence subscriptions related to that entity (as stored in the entity's roster).

-

Several error cases are possible:

+

There are two scenarios:

+
    +
  1. If the entity cancels its registration with its "home" server (i.e., the server at which it has maintained its XMPP account), then the entity SHOULD NOT include a 'from' or 'to' address in the remove request the server SHOULD then return a <not-authorized/> stream error and terminate all active sessions for the entity. The server SHOULD perform the remove based on the bare JID (&BAREJID;) associated with the current session or connection over which it received the remove request. If the server is an instant messaging and presence server that conforms to &rfc3921;, the server SHOULD also cancel all existing presence subscriptions related to that entity (as stored in the entity's roster).

  2. +
  3. If the entity cancels its registration with a service other than its home server, its home server MUST stamp a 'from' address on the remove request, which in accordance with XMPP Core will be the entity's full JID (&FULLJID;). The service MUST perform the remove based on the bare JID (&BAREJID;) portion of the 'from' address.

  4. +
+

As specified below, several error cases are possible.

@@ -328,10 +338,10 @@ ]]> - - + ]]>
ConditionDescription
&badrequest;The <remove/> element was not the only child element of the <query/> element.