Hi all, As discussed, I have been preparing a PR with the changes discussed so far. That PR is now available, here: https://github.com/xsf/xeps/pull/1455
I have added a few more that have not explicitly been discussed in this mail thread yet: - To further reduce the complexity of XEP-0060, but also to improve the consistency of the separation between XEP-0060 and XEP-0248, most collection-specific references, such as related Registrar considerations) are migrated from XEP-0060 to XEP-0248. Many of these already exist in the latter, in which case the duplicate in the former should be removed. - Another desirable change is to have the specification of changes to the node type be centralized in one XEP. Currently, XEP-0060 describes changing a leaf to a collection, while XEP-0248 describes changing a collection to a leaf (but uses generic language that is easily interpreted as if node type changes are not allowable at all). By having both processes be specified in XEP-0248, there is a lot less room for ambiguity (while it also further reduces complexity in XEP-0060). - XEP-0060 should no longer reference to XEP-0248 for a 'process to retrieve the default subscription configuration options for collection nodes'. Such process is not explicitly defined in XEP-0248 (meaning that the process is equal to that in XEP-0060), meaning that the reference is more likely to cause confusion than clarity. Although additional configuration options (but not a new process) are provided in XEP-0248, it is perfectly reasonable for readers to expect that type-specific configuration is to be found in type-specific XEPs. - XEP-0060 defines a MUST for a collection nodes to support 'pubsub#notify_config' (support is a SHOULD for leaf nodes). Such a strict requirement for collection nodes should be defined in the XEP-0248 instead of in XEP-0060. I don't believe that these changes are contentious, but please correct me if you feel different. With all of these changes, I believe that the split off of 'collections' from the original specification is now improved. That serves my original purpose, which was to be able to write integration tests to cover XEP-0060 without having to deal with hierarchy / collection functionality. There is one remaining gripe that I have with the XEPs, which is the usage of a 'root' collection in XEP-0060, even though it's defined in XEP-0248. That doesn't sit quite right with me, but I'm not seeing easy ways to improve on that. Something something not calling the root a 'collection', and moving the corresponding definition back from XEP-0248 to XEP-0060, but that feels like stretching things. For now, at least for the purpose of this set of changes, I think I'll leave it as-is. Better, not perfect. I have somewhat cheekily already opened the PR even though not all changes have been discussed here. If you have concerns, please raise them on this mailinglist. I'll change the PR to draft if significant concerns are raised, to avoid wasting time of the processing entities. Kind regards, Guus On Fri, Sep 5, 2025 at 12:28 PM Goffi <[email protected]> wrote: > Hi again Guus, > > Le vendredi 5 septembre 2025, 11:00:48 heure d’été d’Europe centrale Guus > der > Kinderen a écrit : > > [SNIP] > > XEP-0060 in section 4.6 defines two forms of addressing: JID and > > JID+NodeID. It states the JID format SHOULD be used when using a protocol > > that does not support the node attribute. However, it does not explicitly > > prohibit the JID format from being used if the protocol _does_ support > the > > node attribute, right? > > As I'm always working with node attribute, I was not even aware that using > the > resource for node ID was possible! I wonder which implementation do > support > that. > > > I believe that this leaves the door open to using the JID address format > > with Service Discovery. Unless I'm mistaken, this is then a valid > > equivalent of example 10: > > > > <iq type='result' > > from='pubsub.shakespeare.lit' > > to='[email protected]/barracks' > > id='nodes1'> > > <query xmlns='http://jabber.org/protocol/disco#items'> > > <item jid='pubsub.shakespeare.lit/blogs' > > name='Weblog updates'/> > > <item jid='pubsub.shakespeare.lit/news' > > name='News and announcements'/> > > </query> > > </iq> > > > > This seems to be indistinguishable from a response that discovers items > > (rather than nodes) as specified in section 5.5. > > If that were indeed possible, I guess that using the resource for node in > the > answer, would here be equivalent to have the "node" attribute. But this is > for > sure a great source of confusion and bugs. > > > Using JID+NodeID in a protocol that supports the node attribute seems a > > silly thing to do to me, but I don't think it is forbidden by the XEP. > > Should we add a restriction (or at least a recommendation)? > > I agree that this could be explicitly stated. Actually, I would be really > happy to get completely rid of using the resource for the node ID as > stated in > §4.6.1, we have already enough troubles by using resources for MUCs, no > need > to do the same with Pubsub. > > I wonder if this is used by anybody in the wild. > > > Thank you for catching that and your effort on improving pubsub Guus. > > Best, > Gofffi_______________________________________________ > Standards mailing list -- [email protected] > To unsubscribe send an email to [email protected] >
_______________________________________________ Standards mailing list -- [email protected] To unsubscribe send an email to [email protected]
