<?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE xep SYSTEM 'xep.dtd' [ <!ENTITY % ents SYSTEM 'xep.ent'> %ents; ]> <?xml-stylesheet type='text/xsl' href='xep.xsl'?> <xep> <header> <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> &LEGALNOTICE; <number>0240</number> <status>Deferred</status> <type>Standards Track</type> <sig>Standards</sig> <approver>Council</approver> <dependencies> <spec>XMPP Core</spec> </dependencies> <supersedes/> <supersededby/> <shortname>NOT_YET_ASSIGNED</shortname> &stpeter; &ralphm; <revision> <version>0.1</version> <date>2008-04-30</date> <initials>psa</initials> <remark><p>Initial published version.</p></remark> </revision> <revision> <version>0.0.1</version> <date>2008-04-28</date> <initials>psa/rm</initials> <remark><p>First draft.</p></remark> </revision> </header> <section1 topic='Introduction' anchor='intro'> <p>&w3html; defines a <link/> 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> <section1 topic='Link Format' anchor='format'> <p>The RECOMMENDED format is as follows.</p> <example caption='Format'><![CDATA[ <link href='xmpp-uri' rel='some-relation'/> ]]></example> <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 <link/> 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> <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> <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='xmpp:stpeter@jabber.org' rel='self'/> ]]></example> <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='xmpp:jdev@conference.jabber.org'/> ]]></example> <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='xmpp:pubsub.jabber.org?;node=xeps' rel='alternate'/> ]]></example> </section1> <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> <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> <section1 topic='XMPP Registrar Considerations' anchor='registrar'> <p>This document requires no interaction with the ®ISTRAR;.</p> </section1> </xep>