Hi!

Thanks for pointing out that subscribe, like publish, is described as optional functionality by certain sections of XEP-0060.

I agree with you that given that (and since there are XEPs that make use of that), the feature should not be defined as REQUIRED in section 10. There's some bike-shedding to be done on OPTIONAL vs RECOMMENDED maybe (Having a XEP that is titled "publish-subscribe" for which both the "publish"as well as the "subscribe" part are optional seems... weird to me), but regardless, REQUIRED does not seem to fit at all.

That leaves us with having not a single feature that the XEP requires to be advertised for a pubsub service. As Goffi describes, the disco#info identity can be used for that purpose. I do worry that a significant amount of implementations use the (currently undocumented) 'https://jabber.org/protocol/pubsub' feature for this. For that reason, I'd still like to see the feature be explicitly named (normative) in XEP-0060.

As XEP-0060 is Stable, I don't believe this can be made a REQUIRED feature, but a RECOMMENDED one (including a note that describes how services are recommended to publish it, but that consumers should not depend on it (and use the identity instead)) should be a good improvement over the current state of the XEP.

Thoughts?

Kind regards,

  Guus

On Fri, Oct 3, 2025 at 9:31 PM Goffi <goffi@goffi.org> wrote:
Le vendredi 3 octobre 2025, 20:21:41 heure d’été d’Europe centrale Guus der
Kinderen a écrit :
> Hi all,
>
> After some more discussion in the chat room, I am proposing to remove the
> ambiguity in XEP-0060 by:
>
>    1. replacing the usage of the 'http://jabber.org/protocol/pubsub'
>    feature with that of 'http://jabber.org/protocol/pubsub#subscribe'
>    (which is a feature that is defined to be REQUIRED in section 10);
>    2. add a note to document this change and recommend advertisement of '
>    http://jabber.org/protocol/pubsub' for compatibility;
>    3. with regards to another feature, '
>    http://jabber.org/protocol/pubsub#publish', to no longer define that as
>    being REQUIRED in section 10, as section 7.1.1 clearly defines it to be
>    optional.
>
> Kind regards,
>
>   Guus

Sorry my previous message has been delayed.

Your solution seems sensible.

However, regarding subscription, a service may not support it, as specified in
§ 6.1.3.10 . This is actually exploited in XEP-0498 (Pubsub File Sharing) § 9
(Business Rules).

It feels a bit weird to have the feature exposed by disco#info then return a
'feature-not-implemented' error. I guess that we can live with that, but
ideally, I would replace REQUIRED by OPTIONAL for subscribe in XEP-0060 §10.

Best,
Goffi_______________________________________________
Standards mailing list -- standards@xmpp.org
To unsubscribe send an email to standards-leave@xmpp.org