summaryrefslogtreecommitdiff
path: root/doc/rfc/rfc4854.txt
blob: a9ef68004401fe0a855e4d70fb03e12e6792e6f2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
Network Working Group                                     P. Saint-Andre
Request for Comments: 4854                                           XSF
Category: Informational                                       April 2007


              A Uniform Resource Name (URN) Namespace for
  Extensions to the Extensible Messaging and Presence Protocol (XMPP)

Status of This Memo

   This memo provides information for the Internet community.  It does
   not specify an Internet standard of any kind.  Distribution of this
   memo is unlimited.

Copyright Notice

   Copyright (C) The IETF Trust (2007).

Abstract

   This document describes a Uniform Resource Name (URN) namespace for
   uniquely identifying Extensible Markup Language (XML) formats and
   protocols that provide extensions to the Extensible Messaging and
   Presence Protocol (XMPP) and are defined in specifications published
   by the XMPP Standards Foundation (XSF).


























Saint-Andre                  Informational                      [Page 1]
^L
RFC 4854           URN Namespace for XMPP Extensions          April 2007


Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . . . 3
   2.  Specification Template  . . . . . . . . . . . . . . . . . . . . 3
   3.  Namespace Considerations  . . . . . . . . . . . . . . . . . . . 6
   4.  Community Considerations  . . . . . . . . . . . . . . . . . . . 6
   5.  Security Considerations . . . . . . . . . . . . . . . . . . . . 7
   6.  IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 7
   7.  References  . . . . . . . . . . . . . . . . . . . . . . . . . . 8
     7.1.  Normative References  . . . . . . . . . . . . . . . . . . . 8
     7.2.  Informative References  . . . . . . . . . . . . . . . . . . 8








































Saint-Andre                  Informational                      [Page 2]
^L
RFC 4854           URN Namespace for XMPP Extensions          April 2007


1.  Introduction

   While the Extensible Messaging and Presence Protocol (XMPP), as
   specified in [XMPP-CORE] and [XMPP-IM], provides basic messaging and
   presence functionality, the fact that XMPP is at root a technology
   for streaming Extensible Markup Language [XML] data makes it possible
   to include virtually any structured information within XMPP, as long
   as such information is qualified by appropriate XML namespaces
   [XML-NAMES].  When sent over XMPP, such structured data formats and
   protocols are generally referred to as "XMPP extensions".

   A large number of such XMPP extensions exist.  The main standards
   development organization in which such extensions are defined is the
   XMPP Standards Foundation (XSF) (formerly the Jabber Software
   Foundation), which contributed XMPP to the Internet Standards
   process.  Typically, such extensions are defined within the XSF's
   XMPP Extension Protocol (XEP) specification series.  To date, the XML
   namespaces defined within the Jabber/XMPP community have used names
   of the form "jabber:*" (deprecated since early 2002) and
   "http://jabber.org/protocol/*" (not including names of the form
   "urn:ietf:params:xml:ns:xmpp-*" specified in the XMPP RFCs).
   However, it is desirable that names associated with future XMPP
   extensions be both unique and persistent, which is not necessarily
   the case with names that are also HTTP URLs.  Therefore, in
   accordance with the process defined in [MECHANISMS], this document
   registers a formal namespace identifier (NID) for Uniform Resource
   Names [URN] associated with XMPP extensions published in the XSF's
   XEP series and for XML namespaces registered with the XSF's XMPP
   Registrar function [REGISTRAR].

2.  Specification Template

   Namespace ID:

      The Namespace ID "xmpp" is requested.

   Registration Information:

      Version 1
      Date: 2007-04-27

   Declared Registrant of the Namespace:

      Registering organization
         Organization: XMPP Standards Foundation
         Address: P.O. Box 1641, Denver, CO 80201 USA





Saint-Andre                  Informational                      [Page 3]
^L
RFC 4854           URN Namespace for XMPP Extensions          April 2007


      Designated contact
         Role: XMPP Registrar
         Email: registrar@xmpp.org

   Declaration of Syntactic Structure:

      The Namespace Specific String (NSS) of all URNs that use the
      "xmpp" NID shall have the following structure:

         urn:xmpp:{ShortName}:{SubName}

      The keywords have the following meaning:

         (1) the "ShortName" is a required US-ASCII string that
         conforms to the URN syntax requirements (see RFC 2141)
         and defines a particular protocol or format that is used
         as an XMPP extension.

         (2) the "SubName" is an optional US-ASCII string that
         conforms to the URN syntax requirements (see RFC 2141)
         and defines a particular subset of the relevant protocol
         or format.

      The XSF's XMPP Registrar function shall be responsible for
      managing the assignment of both "ShortName" and "SubName"
      strings and maintaining a registry of resulting namespaces
      at <http://www.xmpp.org/registrar/namespaces.html>.  The
      XMPP Registrar may also assign URNs in sub-trees below the
      level of the ShortName or SubName as needed for use in various
      XMPP extensions.

   Relevant Ancillary Documentation:

      Information about the XSF's XMPP Registrar function can be
      found at <http://www.xmpp.org/extensions/xep-0053.html>
      and <http://www.xmpp.org/registrar/>.

   Identifier Uniqueness Considerations:

      The XMPP Registrar is already responsible for managing
      the assignment of XML namespace names of the form
      "http://jabber.org/protocol/{ShortName}" and
      "http://jabber.org/protocol/{ShortName}#{SubName}"
      (e.g., "http://jabber.org/protocol/pubsub" and
      "http://jabber.org/protocol/disco#info").  In order to
      assign namespace names in the context of the "xmpp"
      NID, the XMPP Registrar shall simply modify the syntax
      of the namespace names it assigns from



Saint-Andre                  Informational                      [Page 4]
^L
RFC 4854           URN Namespace for XMPP Extensions          April 2007


      "http://jabber.org/protocol/{ShortName}" and
      "http://jabber.org/protocol/{ShortName}#{SubName}" to
      "urn:xmpp:{ShortName}" and "urn:xmpp:{ShortName}:{SubName}".

      The XMPP Registrar shall ensure the uniqueness of all
      XMPP URNs by checking such names against the list of
      existing namespace names, as documented in XEP-0053
      (the controlling specification for the XMPP Registrar
      function).  The XMPP Registrar shall, in all cases, directly
      ensure the uniqueness of the assigned strings and shall
      not assign secondary responsibility for management of any
      sub-trees.  However, the XMPP Registrar may assign URNs
      in sub-trees below the level of the ShortName or SubName
      as needed for use in various XMPP extensions.  The
      resulting URNs shall not be re-assigned.

   Identifier Persistence Considerations:

      The XMPP Registrar shall provide clear documentation of
      the registered uses of the "xmpp" NID in the form of
      XMPP Extension Protocol (XEP) specifications published
      at <http://www.xmpp.org/extensions/>, as well as a
      registry of the namespace names themselves at
      <http://www.xmpp.org/registrar/namespaces.html>.

   Process of Identifier Assignment:

      The XMPP Registrar's processes and procedures for
      identifier assignment are documented in XEP-0053,
      which is the controlling specification for the XMPP
      Registrar function.  In particular, identifiers shall
      be issued only upon advancement of the relevant protocol
      specification to a status of Draft within the standards
      process, followed by the XMPP Standards Foundation (as
      specified in XEP-0001).  The XMPP Registrar shall check
      all identifiers against the list of existing namespace
      names to ensure uniqueness and to encourage relevance
      and memorability.  Assignment of URNs within the "xmpp"
      tree is reserved to the XMPP Standards Foundation,
      specifically to its XMPP Registrar function.

   Process for Identifier Resolution:

      The namespace is not currently listed with a Resolution
      Discovery System (RDS), but nothing about the namespace
      prohibits the future definition of appropriate resolution
      methods or listing with an RDS.




Saint-Andre                  Informational                      [Page 5]
^L
RFC 4854           URN Namespace for XMPP Extensions          April 2007


   Rules for Lexical Equivalence:

      No special considerations; the rules for lexical
      equivalence specified in RFC 2141 apply.

   Conformance with URN Syntax:

      No special considerations.

   Validation Mechanism:

      None specified.

   Scope:

      Global.

3.  Namespace Considerations

   The XMPP Standards Foundation has been developing Internet protocols
   since August 2001 and that work is expected to continue for the
   foreseeable future.  The old-style "jabber:*" namespace names
   originally used in the Jabber open-source community were not proper
   URNs or URIs and thus were deprecated in early 2002.  Since then, the
   namespace names assigned by the XMPP Registrar function of the XMPP
   Standards Foundation have been (equivalent to) specialized HTTP URLs
   whose authority component is "jabber.org".  While that domain is
   currently under the control of the XMPP Standards Foundation, there
   is no guarantee that it will always remain so, thus potentially
   threatening the reliability and permanence of the assigned namespace
   names.  The use of Uniform Resource Names with an appropriate
   Namespace ID will enable the XMPP Standards Foundation to assign
   cleaner, more general, more permanent, more reliable, and more
   controllable namespace names related to the XMPP extensions it
   defines, while keeping the tree of XMPP extensions produced by the
   XMPP Standards Foundation properly separate from the IETF tree used
   to define some of the core XMPP namespaces as well as namespaces
   related to XMPP extensions that may be produced in the future by the
   IETF.

4.  Community Considerations

   The XMPP standards development community will benefit from
   publication of this namespace by having more permanent and reliable
   names for the XML namespaces defined in XMPP Extension Protocol
   specifications produced by the XMPP Standards Foundation.





Saint-Andre                  Informational                      [Page 6]
^L
RFC 4854           URN Namespace for XMPP Extensions          April 2007


   The standards process followed by the XSF is open to contributions
   from any interested individual; such a contribution takes the form of
   a proposal submitted to the XMPP Extensions Editor
   <mailto:editor@xmpp.org>, accepted by the XMPP Council
   <http://www.xmpp.org/council/>, and published in the XSF's XMPP
   Extension Protocol (XEP) series at <http://www.xmpp.org/extensions/>.
   Use of the proposed space for a particular XML format or protocol
   extension will be contingent upon advancement of the appropriate
   specification within the XSF's standards process (as documented in
   [XEP]) and issuance of a namespace name within the "xmpp" tree by the
   XMPP Registrar (as documented in [REGISTRAR]).

5.  Security Considerations

   This document introduces no additional security considerations beyond
   those associated with the use and resolution of URNs in general.

6.  IANA Considerations

   This document defines a URN NID registration of "xmpp", which has
   been entered into the IANA registry located at
   <http://www.iana.org/assignments/urn-namespaces>.





























Saint-Andre                  Informational                      [Page 7]
^L
RFC 4854           URN Namespace for XMPP Extensions          April 2007


7.  References

7.1.  Normative References

   [MECHANISMS]  Daigle, L., van Gulik, D., Iannella, R., and P.
                 Faltstrom, "Uniform Resource Names (URN) Namespace
                 Definition Mechanisms", BCP 66, RFC 3406, October 2002.

   [URN]         Moats, R., "URN Syntax", RFC 2141, May 1997.

7.2.  Informative References

   [REGISTRAR]   Saint-Andre, P., "XMPP Registrar Function", XSF
                 XEP 0053, December 2006.

   [XEP]         Saint-Andre, P., "XMPP Extension Protocols", XSF
                 XEP 0001, December 2006.

   [XML]         Bray, T., Paoli, J., Sperberg-McQueen, C., and E.
                 Maler, "Extensible Markup Language (XML) 1.0 (2nd ed)",
                 W3C REC-xml, October 2000,
                 <http://www.w3.org/TR/REC-xml>.

   [XML-NAMES]   Bray, T., Hollander, D., and A. Layman, "Namespaces in
                 XML", W3C REC-xml-names, January 1999,
                 <http://www.w3.org/TR/REC-xml-names>.

   [XMPP-CORE]   Saint-Andre, P., "Extensible Messaging and Presence
                 Protocol (XMPP): Core", RFC 3920, October 2004.

   [XMPP-IM]     Saint-Andre, P., "Extensible Messaging and Presence
                 Protocol (XMPP): Instant Messaging and Presence",
                 RFC 3921, October 2004.

Author's Address

   Peter Saint-Andre
   XMPP Standards Foundation
   P.O. Box 1641
   Denver, CO  80201
   USA

   EMail: stpeter@jabber.org
   URI:   xmpp:stpeter@jabber.org







Saint-Andre                  Informational                      [Page 8]
^L
RFC 4854           URN Namespace for XMPP Extensions          April 2007


Full Copyright Statement

   Copyright (C) The IETF Trust (2007).

   This document is subject to the rights, licenses and restrictions
   contained in BCP 78, and except as set forth therein, the authors
   retain all their rights.

   This document and the information contained herein are provided on an
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND
   THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS
   OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
   THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
   WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Intellectual Property

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at
   ietf-ipr@ietf.org.

Acknowledgement

   Funding for the RFC Editor function is currently provided by the
   Internet Society.







Saint-Andre                  Informational                      [Page 9]
^L