In my working copy of rfc3921bis I have:

***

   The server SHOULD return a <not-allowed/> error to the client if the
   roster set violates any of the following rules:

   1.  The <item/> element MAY contain a 'name' attribute, but the value
       of the 'name' attribute SHOULD NOT be more than 1023 characters
       in length.
   2.  The XML character data of any given <group/> element MUST NOT be
       of zero length and SHOULD NOT be more than 1023 characters in
       length.

***

It says SHOULD NOT. If a server has good reasons to go over 1024, it is
perfectly allowed to do so. So this is a guideline, not a requirement.
As a guideline I think it makes a lot of sense (we can quibble over the
size).

It would be handy to also specify an extended additional error along with the <not-allowed/> so that the client can know what part of the roster item is wrong which would add to the flexibility, e.g. <name-limit-exceeded xmlns="urn:xmpp:roster:errors"/> and <groupname-limit-exceeded xmlns="urn:xmpp:roster:errors"/>.

This will allow the client to present the appropriate message to the user as to what they need to modify, this along with the not set in stone limit of 1023 is flexible enough for me.

Richard


Reply via email to