XEP-0053: XMPP Registrar Function

This document defines the roles and processes of the XMPP Registrar function within the XMPP Standards Foundation.


NOTICE: This Procedural document defines a process or activity of the XMPP Standards Foundation (XSF) that has been approved by the XMPP Council and/or the XSF Board of Directors. The XSF is currently following the process or activity defined herein and will do so until this document is deprecated or obsoleted.


Document Information

Series: XEP
Number: 0053
Publisher: XMPP Standards Foundation
Status: Active
Type: Procedural
Version: 1.3
Last Updated: 2006-12-07
Approving Body: XSF Board of Directors
Dependencies: None
Supersedes: None
Superseded By: None
Short Name: N/A
Wiki Page: <http://wiki.jabber.org/index.php/XMPP Registrar Function (XEP-0053)>


Author Information

Peter Saint-Andre

JabberID: stpeter@jabber.org
URI: https://stpeter.im/


Legal Notices

Copyright

This XMPP Extension Protocol is copyright (c) 1999 - 2008 by the XMPP Standards Foundation (XSF).

Permissions

Permission is hereby granted, free of charge, to any person obtaining a copy of this specification (the "Specification"), to make use of the Specification without restriction, including without limitation the rights to implement the Specification in a software program, deploy the Specification in a network service, and copy, modify, merge, publish, translate, distribute, sublicense, or sell copies of the Specification, and to permit persons to whom the Specification is furnished to do so, subject to the condition that the foregoing copyright notice and this permission notice shall be included in all copies or substantial portions of the Specification. Unless separate permission is granted, modified works that are redistributed shall not contain misleading information regarding the authors, title, number, or publisher of the Specification, and shall not claim endorsement of the modified works by the authors, any organization or project to which the authors belong, or the XMPP Standards Foundation.

Disclaimer of Warranty

## NOTE WELL: This Specification is provided on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. In no event shall the XMPP Standards Foundation or the authors of this Specification be liable for any claim, damages, or other liability, whether in an action of contract, tort, or otherwise, arising from, out of, or in connection with the Specification or the implementation, deployment, or other use of the Specification. ##

Limitation of Liability

In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall the XMPP Standards Foundation or any author of this Specification be liable for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising out of the use or inability to use the Specification (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if the XMPP Standards Foundation or such author has been advised of the possibility of such damages.

IPR Conformance

This XMPP Extension Protocol has been contributed in full conformance with the XSF's Intellectual Property Rights Policy (a copy of which may be found at <http://www.xmpp.org/extensions/ipr-policy.shtml> or obtained by writing to XSF, P.O. Box 1641, Denver, CO 80201 USA).

Discussion Venue

The preferred venue for discussion of this document is the Standards discussion list: <http://mail.jabber.org/mailman/listinfo/standards>.

Discussion by the membership of the XSF may also be appropriate (see <http://mail.jabber.org/mailman/listinfo/members> for details).

Errata may be sent to <editor@xmpp.org>.


Table of Contents


1. Introduction and Purpose
2. Composition
3. Registry Creation and Maintenance
4. Namespace Issuance
5. Security Considerations
6. IANA Considerations
7. XMPP Registrar Considerations
Notes
Revision History


1. Introduction and Purpose

Because the XMPP Standards Foundation (XSF) [1] publishes a relatively large number of protocol specifications (see XMPP Extension Protocols [2]), it is important to keep track of the namespaces defined by those specifications as well as the parameters used in the context of the relevant protocols. (Examples of such parameters include the features and options used in Feature Negotiation [3] and the identities and features used in Service Discovery [4].) In particular, the common use of protocols published by the XSF requires that namespaces and particular parameter values be assigned uniquely. It is the role of the XMPP Registrar to make those unique assignments and to maintain registries of the currently assigned values. The XMPP Registrar shall also function as a single point of contact between the XMPP Standards Foundation and the Internet Assigned Numbers Authority (IANA) [5].

2. Composition

Until there is a perceived need for a more formal governing body, the functions of the XMPP Registrar shall be managed by the XMPP Extensions Editor [6]. In the future, the XMPP Council [7] and/or the XSF Board of Directors [8] may decide to create a more formal panel to oversee the functions of the XMPP Registrar; if they do, this document shall be updated to reflect the change.

3. Registry Creation and Maintenance

Every XMPP Extension Protocol specification (XEP) must contain a section devoted to "XMPP Registrar Considerations", detailing the namespaces and parameters to be registered with the XMPP Registrar, as well as any new registries to be created as a result of the XEP.

The registry additions or creations specified in a XEP shall not take effect until the document advances to a status of Draft (Standards-Track XEPs) or Active (Informational and Historical XEPs). Registration of namespaces shall be handled as described in the Namespace Issuance section of this document. Registration of particular parameters used within a specification shall be initiated by the XMPP Extensions Editor if specified in the XEP, and may also be initiated by implementors of the XEP after it has advanced to Active, Draft, or Final. Creation of new registries shall be initiated by the XMPP Registrar; if a document specifies the creation of a new registry, the author is strongly encouraged to consult with the XMPP Registrar before seeking a Last Call on the XEP.

Requests for parameter assignments must be sent to the XMPP Registrar in accordance with the process specified in the document (usually a XEP) that defines the relevant registry, normally by sending an appropriately formatted email message to the URI <mailto:registrar@xmpp.org>. If, in the Registrar's judgment, discussion of a request is required, the Registrar shall initiate such discussion within the Standards SIG [9]. The Registrar shall add registry items at its discretion based on discussion within the Standards SIG if necessary, but shall not unduly restrict registration of parameter values. If a document author or implementor thinks that a request was unfairly denied by the Registrar, an appeal of the decision may be directed to the XMPP Council.

The XMPP Registrar shall maintain registries of assigned namespaces and parameters at <http://www.xmpp.org/registrar/> and shall update those registries in a timely fashion. Changes to the registries shall be announced on the <standards@xmpp.org> mailing list.

4. Namespace Issuance

The XMPP Registrar shall be responsible for issuing namespaces to be used in XMPP Extension Protocols (XEPs) developed through the XMPP Standards Foundation's standards process as specified in XEP-0001. The policies and procedures for namespace issuance shall be as follows:

  1. While a XEP is in the Experimental state, the namespaces specified therein shall be of the form "http://www.xmpp.org/extensions/xep-XXXX.html#ns" and "http://www.xmpp.org/extensions/xep-XXXX.html#ns-SubName", where "XXXX" is the XEP number and "SubName" is a sub-namespace (as is familiar from specifications such as Multi-User Chat [10]).

  2. When the XMPP Council votes to advance the XEP to a status of Draft, the XMPP Registrar shall generate official names for all namespaces specified in the XEP. The following considerations apply:

    1. Each name shall adhere to the format defined in RFC 4854 [11].
    2. Each name shall be of the form "urn:xmpp:ShortName[:SubName]".
    3. The "ShortName" string shall be unique within the XMPP URN tree and any "SubName" strings shall be unique within the scope of the ShortName.
    4. Each name should be relevant and memorable. Names may be determined in consultation with the author(s) of the XEP and may be requested by the author(s) in the XMPP Registrar Considerations section of the XEP; however, the official issuance of namespace names is the sole responsibility of the XMPP Registrar, which may modify or ignore any names requested.
    5. Each name shall be checked against the registry of existing names located at <http://www.xmpp.org/registrar/namespaces.html> to ensure that no duplicate names are issued.
    6. The XMPP Registrar shall issue all XMPP URNs directly and shall not assign secondary responsibility for management of any sub-trees.
  3. After generating the relevant namespace name(s), the XMPP Registrar shall modify the XEP to reflect the issued namespace names and shall update the namespace registry in accordance with the procedures specified in the Registry Creation and Maintenance section of this document.

  4. Any namespaces defined after advancement of the relevant XEP to a status of Draft shall be handled in the same manner.

The XMPP Registrar shall not issue XMPP URNs except as specified above (e.g., it shall not issue XMPP URNs to private parties or in relation to specifications that are not published in the XEP series). However, the XMPP Registrar may at its discretion add namespace names other than XMPP URNs to its namespace registry, e.g. to register "legacy" namespace names (of the form "jabber:iq:*", "jabber:x:*", and "http://jabber.org/protocol/*") as well as namespace names produced by recognized standards development organizations (such as names issued in the IETF URN tree).

5. Security Considerations

Security considerations are primarily the responsibility of the protocols in which specific parameters are used. The XMPP Registrar shall respect the security considerations defined in XMPP Extension Protocol specifications, and shall endeavor to ensure that registered parameter values do not compromise privacy or security in any way.

6. IANA Considerations

The XMPP Registrar shall be responsible for interacting with the IANA on behalf of the XMPP Standards Foundation. If an XMPP Extension Protocol specification requires interaction with the IANA, that fact shall be noted by the document author(s) and discussed on the Standards mailing list along with normal discussion of the XEP. The XMPP Registrar shall collaborate with the author(s) to submit an appropriate request to the IANA.

7. XMPP Registrar Considerations

This entire document defines the processes and procedures of the XMPP Registrar.


Notes

1. The XMPP Standards Foundation (XSF) is an independent, non-profit membership organization that develops open extensions to the IETF's Extensible Messaging and Presence Protocol (XMPP). For further information, see <http://www.xmpp.org/xsf/>.

2. XEP-0001: XMPP Extension Protocols <http://www.xmpp.org/extensions/xep-0001.html>.

3. XEP-0020: Feature Negotiation <http://www.xmpp.org/extensions/xep-0020.html>.

4. XEP-0030: Service Discovery <http://www.xmpp.org/extensions/xep-0030.html>.

5. The Internet Assigned Numbers Authority (IANA) is the central coordinator for the assignment of unique parameter values for Internet protocols, such as port numbers and URI schemes. For further information, see <http://www.iana.org/>.

6. The XMPP Extensions Editor is the individual appointed by the XSF Board of Directors to handle protocol submissions and provide day-to-day management of the XSF's standards process. For further information, see <http://www.xmpp.org/extensions/editor.shtml>.

7. The XMPP Council is a technical steering committee, authorized by the XSF Board of Directors and elected by XSF members, that approves of new XMPP Extensions Protocols and oversees the XSF's standards process. For further information, see <http://www.xmpp.org/council/>.

8. The XSF Board of Directors is an elected body that possesses overall responsibility for the affairs of the XMPP Standards Foundation. For further information, see <http://www.xmpp.org/xsf/board/>.

9. The Standards SIG is a standing Special Interest Group devoted to development of XMPP Extension Protocols. The discussion list of the Standards SIG is the primary venue for discussion of XMPP protocol extensions, as well as for announcements by the XMPP Extensions Editor and XMPP Registrar. To subscribe to the list or view the list archives, visit <http://mail.jabber.org/mailman/listinfo/standards/>.

10. XEP-0045: Multi-User Chat <http://www.xmpp.org/extensions/xep-0045.html>.

11. RFC 4854: A Uniform Resource Name (URN) Namespace for Extensions to the Extensible Messaging and Presence Protocol (XMPP) <http://tools.ietf.org/html/rfc4854>.


Revision History

Version 1.3 (2006-12-07)

Specified process for namespace issuance (i.e., XMPP URNs).

(psa)

Version 1.2 (2006-10-04)

As approved by the members of the XMPP Standards Foundation, changed Jabber Registrar to XMPP Registrar.

(psa)

Version 1.1 (2004-05-20)

Updated to reflect experience. (psa)

Version 1.0 (2003-03-20)

Per a vote of the XMPP Council, advanced status to Active. (psa)

Version 0.5 (2003-01-21)

Changed name to XMPP Registrar in response to feedback from the XSF Board of Directors. (psa)

Version 0.4 (2003-01-20)

Added reference to jana@jabber.org mailing list. (psa)

Version 0.3 (2002-11-22)

Simplified to reflect discussion in the XMPP Council; in particular, reserved JANA functions to the XMPP Extensions Editor until there is a perceived need for a more formal governing body. (psa)

Version 0.2 (2002-10-27)

Clarified JANA composition, panel member requirements, and JANA process. (psa)

Version 0.1 (2002-10-24)

Initial version. (psa)

END