[Council] XEP-0012

Peter Saint-Andre stpeter at stpeter.im
Thu Nov 20 16:35:40 CST 2008

Jack Moffitt wrote:
>> As promised, I've completed an editorial review of XEP-0012, resulting
>> in some smallish text changes. Perhaps we can vote on advancing this to
>> Final now (naturally, reviews by other Council members would be good).
> There are some minor issues and one major issue from my review of this XEP.
> Major issue:
> Section 4 (Online User Query) states that the server should return a
> forbidden error if 1) the IQ-get is sent to the full JID and 2) the
> requester  does not have a presence subscription.  Since when does a
> server have such a responsibility?  In fact this conflicts with RFC
> 3921 section 11.1 which states that a server MUST deliver a stanza
> sent to a resource that is connected.
> So this needs to be changed to put this responsibility on the client,
> but of course I don't see how that is going to work, since getting an
> error response from the client is just as good for determining
> presence.  I'm curious how this presence leak can be worked around, or
> if this is a case where using hard to guess resources is the only
> path.

As discussed during the meeting, I'll move the presence use case to a
separate ProtoXEP.

> Minor issues:
> Everywhere JID forms are mentioned they use slightly different syntax.
>  Some are <host> and some are <domain.tld>.  What are these angle
> brackets for?  Generally such a thing shows a variable substitution,
> so I would suggest we make all these uniform like so:  1) use <host>
> or <domain>, <node> or <user>, and <resource>, and 2) string them
> together like <node>@<host>/<resource>.

That's old-style quoting of Internet addresses, like <http://xmpp.org/>
or <stpeter at jabber.org>.

> In the last paragraph of section 2 (second sentence I believe), there
> are a bunch of missing closing parenthesis.  Taking into account the
> above, here's my suggestion for a change:
> "Specifically, the information means something different depending on
> whether the responding entity is an account registered on an XMPP
> server (with a JID of the form <user>@<host>), a connected or
> available resource associated with such an account
> (<user>@<host>/<resource>) or an "always-on" XMPP server or service
> (<host>)."

If you look in xep.ent you'll see that we have standardized XML entities
for these JID forms, so I've modified XEP-0012 to use those. I've also
split the text into a list, as follows:


The requesting entity interprets the IQ-result based on the responding
entity's JID type in order to determine the meaning of the information.
Specifically, the information means something different depending on the
identity of the responding entity:

   1. An account registered on an XMPP server, with a JID of the form
<localpart at domain.tld>.
   2. A connected or available resource associated with such an account,
with a JID of the form <localpart at domain.tld/resource>.
   3. An "always-on" XMPP server or service, with a JID of the form


> In the first sentence of section 4, the words "full JID" appear in
> quotes.  This is the only place such a term appears in quotes.  Let's
> lose the quotes.


SVN diffs are here:


The rendered copy is here:



Peter Saint-Andre

More information about the Council mailing list