You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

86 lines
4.5 KiB

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE xep SYSTEM 'xep.dtd' [
<!ENTITY % ents SYSTEM 'xep.ent'>
<?xml-stylesheet type='text/xsl' href='xep.xsl'?>
<title>Auto-Discovery of JabberIDs</title>
<abstract>This specification defines a recommended best practice for linking to JabberIDs from documents hosted on the World Wide Web.</abstract>
<type>Standards Track</type>
<spec>XMPP Core</spec>
<remark><p>Initial published version.</p></remark>
<remark><p>First draft.</p></remark>
<section1 topic='Introduction' anchor='intro'>
<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>
<section1 topic='Link Format' anchor='format'>
<p>The RECOMMENDED format is as follows.</p>
<example caption='Format'><![CDATA[
<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>
<p>The 'rel' attribute is RECOMMENED and its value SHOULD be a link relation as registered in the &ianalinks; or other registry.</p>
<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>
<section1 topic='Processing' anchor='processing'>
<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>
<section1 topic='Examples' anchor='examples'>
<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>
<example caption='Link Pointing to an Author'><![CDATA[
<link href='' rel='self'/>
<p>The following example shows a JabberID that points to a multi-user chat room where the document can be discussed.</p>
<example caption='Link Pointing to a Chat Room'><![CDATA[
<link href=''/>
<p>The following example shows a JabberID that points to a publish-subscribe node where notifications related to the document can be retrieved.</p>
<example caption='Link Pointing to a Pubsub Node'><![CDATA[
<link href=';node=xeps' rel='alternate'/>
<section1 topic='Security Considerations' anchor='security'>
<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>
<section1 topic='IANA Considerations' anchor='iana'>
<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>
<section1 topic='XMPP Registrar Considerations' anchor='registrar'>
<p>This document requires no interaction with the &REGISTRAR;.</p>