[Standards] What is the size limit of node and item ids in XEP-0060: Publish-Subscribe?

Peter Saint-Andre stpeter at stpeter.im
Sun Mar 4 01:31:01 UTC 2018


RFC 7622, that is.

Sent from mobile, might be terse 

> On Mar 3, 2018, at 6:30 PM, Peter Saint-Andre <stpeter at stpeter.im> wrote:
> 
> 
> 
>>> On Mar 3, 2018, at 2:36 PM, Timothée Jaussoin <edhelas at movim.eu> wrote:
>>> 
>>>> Le jeudi 01 mars 2018 à 07:10 -0700, Peter Saint-Andre a écrit :
>>>>> On 3/1/18 1:07 AM, Jonas Wielicki wrote:
>>>>>> On Donnerstag, 1. März 2018 08:52:29 CET Florian Schmaus wrote:
>>>>>>> On 01.03.2018 01:17, Peter Saint-Andre wrote:
>>>>>>> On 2/28/18 3:18 PM, Timothée Jaussoin wrote:
>>>>>>> Hi,
>>>>>>> 
>>>>>>> I came across a database limitation while implementing Pubsub in Movim.
>>>>>>> 
>>>>>>> I'd like to know if we have a limitation for the size of the node and
>>>>>>> items ids in Pubsub (like we have for the JIDs). Also do we have some
>>>>>>> specific forbid characters, basically what is the format of such
>>>>>>> attributes? If noting is already specificed I think that it would be
>>>>>>> wise to update the 0060 to do so.> 
>>>>>> 
>>>>>> My inclination is to specify a length of 1023 octets
>>>>> 
>>>>> Which would break applications and protocols using JIDs as node or item
>>>>> identifier. This includes for example MIX. If we want to allow this, we
>>>>> need at least (3x1023)+2 octets, and then I would probably go for 4096
>>>>> octets.
>>>> 
>>>> This is bikeshedding territory. But given that databases have limits on the 
>>>> size of keys, using as many as needed and as few as possible octets (the 3071 
>>>> you quoted) is probably sensible.
>>>> 
>>>> Do those protocols use bare or full JIDs? If they only use bare and if we 
>>>> agree that full JIDs (due to their transience) do not make sense, the limit 
>>>> could conceivably be as low as 2047, which is probably comfortable for 
>>>> databases to handle.
>>> 
>>> A full, especially non-client JID need not be transient, so I suppose
>>> we'd set it to 3071 (not sure why we'd need 4096 other than the fact
>>> it's a power of 2):
>>> 
>>> https://tools.ietf.org/html/rfc7622#section-3.1
>>> 
>>> Peter
>>> 
>>> _______________________________________________
>>> Standards mailing list
>>> Info: https://mail.jabber.org/mailman/listinfo/standards
>>> Unsubscribe: Standards-unsubscribe at xmpp.org
>>> _______________________________________________
>> 
>> Hi,
>> 
>> Thanks for the answers. I'm fine for the 3071 limitation, so we can set it both for the Pubsub nodes id and Pubsub items it?
>> If yes I'm ok to do a PR on the 0060 to specify that. I'm also wondering if there is a specific way of declaring such string
>> limitations, are you aware of any other XEPs that specify such things?
> 
> As mentioned, I think this belongs in XEP-0030 but I suppose it can be defined in XEP-0060.
> 
> See appendix A.7 of RFC 6120 for an example of length limits in XML Schema. RFC has similar text as well.
> 
> HTH,
> 
> Peter
> 
> 



More information about the Standards mailing list