[standards-jig] JEP-0060 Pub/Sub, subscriptions and configuration

Peter Millard me at pgmillard.com
Mon Apr 21 20:18:13 UTC 2003


Ralph -

I agree with your almost all of your comments :)

> Also, example 38 gives a mismatch to the schemas at the end of the JEP: there
> are two children of <pubsub/> now. What we could do is alter example 38
> into the following:
> <iq type="result" from="pubsub.jabber.org" to="sub1 at foo.com/home" id="sub1">
>   <pubsub xmlns="http://jabber.org/protocol/pubsub">
>     <entity jid="sub1 at foo.com" affiliation="none" subscription="subscribed">
>   <options/>
> </entity>
>   </pubsub>
> </iq>
> The <options/> of course indicating that configuration is required.

No, this would not work... there are 2 piecies of information we need from the
options element:
1) A subscriber may configure options for their subscription.
2) A subscriber MUST configure options for their subscription.

So if we change it so that <options> is a child of <entity> (which is fine with
me)... it would _have_ to look like:

<iq type="result" from="pubsub.jabber.org" to="sub1 at foo.com/home" id="sub1">
    <pubsub xmlns="http://jabber.org/protocol/pubsub">
       <entity jid="sub1 at foo.com" affiliation="none" subscription="subscribed">
            <options>
                <required/>
            </options>
        </entity>
    </pubsub>
</iq>

Where the <required/> element indicates that configuration is mandatory.

> Thinking about this, we have four states of subscription now:
> none
> pending
> subscribed
> subscribed-but-not-configured
>
> The last state is one in which you won't get notifications. So are you really
> subscribed? And if you forget to configure, how can you see that? Retrieving
> the affiliations as in example 31/32 doesn't reveal that fact, because it
> would show as 'subscribed'. My suggestion is to add the fourth level of
> subscription 'unconfigured'. An entity has to examine the subscription
> attribute of the iq-result anyway, to see if it is 'pending' or 'subscribed'.

Agreed... so the above example SHOULD read:
    <entity jid="sub1 at foo.com" affiliation="none" subscription="unconfigured"/>

I can make these changes for the next revision. Thanx for the feedback.

For those interested in pub/sub it is my intention to make 1 last revision
before submitting the JEP for last-call... so get those comments in while you
can :)

pgm.




More information about the Standards mailing list