initial version
[xmpp:xmpp.git] / extensions / xep-0240.xml
1 <?xml version='1.0' encoding='UTF-8'?>
2 <!DOCTYPE xep SYSTEM 'xep.dtd' [
3   <!ENTITY % ents SYSTEM 'xep.ent'>
4 %ents;
5 ]>
6 <?xml-stylesheet type='text/xsl' href='xep.xsl'?>
7 <xep>
8 <header>
9   <title>Auto-Discovery of JabberIDs</title>
10   <abstract>This specification defines a recommended best practice for linking to JabberIDs from documents hosted on the World Wide Web.</abstract>
11   &LEGALNOTICE;
12   <number>0240</number>
13   <status>Experimental</status>
14   <type>Standards Track</type>
15   <sig>Standards</sig>
16   <approver>Council</approver>
17   <dependencies>
18     <spec>XMPP Core</spec>
19   </dependencies>
20   <supersedes/>
21   <supersededby/>
22   <shortname>NOT_YET_ASSIGNED</shortname>
23   &stpeter;
24   &ralphm;
25   <revision>
26     <version>0.1</version>
27     <date>2008-04-30</date>
28     <initials>psa</initials>
29     <remark><p>Initial published version.</p></remark>
30   </revision>
31   <revision>
32     <version>0.0.1</version>
33     <date>2008-04-28</date>
34     <initials>psa/rm</initials>
35     <remark><p>First draft.</p></remark>
36   </revision>
37 </header>
38
39 <section1 topic='Introduction' anchor='intro'>
40   <p>&w3html; defines a &lt;link/&gt; element that defines a relationship between a document and another resource on the Internet. Such a resource can be a JabberID. Examples include the JabberID of a document author, a &xep0045; room where the document can be discussed, or a &xep0060; node where RSS or Atom feeds related to the document are hosted (e.g., see &rfc4287;). This specification defines a recommended approach for linking to JabberIDs in this way.</p>
41 </section1>
42
43 <section1 topic='Link Format' anchor='format'>
44   <p>The RECOMMENDED format is as follows.</p>
45   <example caption='Format'><![CDATA[
46 <link 
47   href='xmpp-uri'
48   rel='some-relation'/>
49   ]]></example>
50   <p>The 'href' attribute is REQUIRED and its value MUST be an XMPP URI or IRI that conforms to &rfc5122;. The URI SHOULD NOT include an action as described in &xep0147; and registered at &QUERYTYPES;, so that the URI can be appropriately dereferenced as described below. The URI MAY include a node key as shown in the examples below.</p>
51   <p>The 'rel' attribute is RECOMMENED and its value SHOULD be a link relation as registered in the &ianalinks; or other registry.</p>
52   <p>In addition to 'href' and 'rel', the HTML and XHTML specifications define a number of other allowable attributes for the &lt;link/&gt; element. These attributes MAY be included. However, because a JabberID is a bare address and there is no hosted media associated with a JabberID, the 'charset', 'media', and 'type' attribute SHOULD NOT be included.</p>
53 </section1>
54
55 <section1 topic='Processing' anchor='processing'>
56   <p>When an application encounters an auto-discovery link to a JabberID, it SHOULD pass it to an appropriate helper application (such as an XMPP client). The helper application then SHOULD dereference the URI, and send an XMPP &xep0030; request to the referenced JID, passing the optional node parameter. The service discovery response therefore enables a full range of future actions.</p>
57 </section1>
58
59 <section1 topic='Examples' anchor='examples'>
60   <p>The following example shows a JabberID that points to the same entity as the document itself (e.g., the author of an "about-the-author" page).</p>
61   <example caption='Link Pointing to an Author'><![CDATA[
62 <link href='xmpp:stpeter@jabber.org' rel='self'/>
63   ]]></example>
64   <p>The following example shows a JabberID that points to a multi-user chat room where the document can be discussed.</p>
65   <example caption='Link Pointing to a Chat Room'><![CDATA[
66 <link href='xmpp:jdev@conference.jabber.org'/>
67   ]]></example>
68   <p>The following example shows a JabberID that points to a publish-subscribe node where notifications related to the document can be retrieved.</p>
69   <example caption='Link Pointing to a Pubsub Node'><![CDATA[
70 <link href='xmpp:pubsub.jabber.org?;node=xeps' rel='alternate'/>
71   ]]></example>
72 </section1>
73
74 <section1 topic='Security Considerations' anchor='security'>
75   <p>Advertising an XMPP address so that it can be automatically discovered may expose that address to abusive communications. Care should be taken when choosing whether to advertise a JID that corresponds to an end user's primary XMPP address.</p>
76 </section1>
77
78 <section1 topic='IANA Considerations' anchor='iana'>
79   <p>This document currently requires no interaction with &IANA;. However, a future version of this specification may register new link relations with the IANA.</p>
80 </section1>
81
82 <section1 topic='XMPP Registrar Considerations' anchor='registrar'>
83   <p>This document requires no interaction with the &REGISTRAR;.</p>
84 </section1>
85
86 </xep>