Does anyone know what existing clients do when faced with multiple reply
elements in a single message? Do they pick the first, last, or do anything
with both? My guess is that they'll vary, giving us the XMPP equivalent of
Undefined Behaviour - we saw that with MUC codes a few years back when
clients often only picked one. Discovering the answer to this will indicate
if this would need to be a spec bump or not.

There's nothing I noted in the existing spec that stipulates only one reply
element can exist in a single message, so it's possible some clients are
doing this kind of thing already.

Final comment - XML is ordered, so the arrangement attribute is redundant -
and prone to other exciting UB, like if there's two at the same rank, or
gaps, or...

(I have no opinion on whether we should do multi-replies, incidentally -
though to be clear, no objections either)

On Sat, 28 Jun 2025 at 23:16, Greatsword <[email protected]> wrote:

> I've seen some IM platforms (namely Revolt and Guilded) have the ability
> to let the user reference multiple messages in a single reply, which might
> be a useful feature. I think with the XEP as it currently is, it could be
> fairly simple to add support for this feature.
>
> I think an addition like this would be good.
>
> """
> Section 3.2 - Multi-Message Replies
>
> A user may want to reply to multiple messages with a single message. This
> can be done by including many reply elements. Ordering is important, so the
> reply element MUST include an "arrangement" attribute that counts up from
> 0, with 0 being displayed at the top in the client UI.
>
> EXAMPLE 5. Yuri replies to both Max's and Anna's messages in a MUC.
> ```
> <message to='[email protected]' from='
> [email protected]/anna' id='groupchat-id1' type='groupchat'>
>   <stanza-id xmlns='urn:xmpp:sid:0' id='groupchat-id1' />
>   <body>A fort will keep us safe!</body>
> </message>
>
> <message to='[email protected]' from='
> [email protected]/max' id='groupchat-id2' type='groupchat'>
>   <stanza-id xmlns='urn:xmpp:sid:0' id='groupchat-id2' />
>   <body>Adoring blue flags for style!</body>
> </message>
>
> <message to='[email protected]' from='
> [email protected]/yuri' id='groupchat-id3' type='groupchat'>
>   <stanza-id xmlns='urn:xmpp:sid:0' id='groupchat-id3' />
>   <body>Excellent ideas! Let's get right to it!</body>
>   <reply to='[email protected]/anna' id='groupchat-id1'
> arrangement='0' xmlns='urn:xmpp:reply:0' />
>   <reply to='[email protected]/max' id='groupchat-id2'
> arrangement='1' xmlns='urn:xmpp:reply:0' />
> </message>
> ```
>
> A fallback for this would work in the same way as the previous section,
> the main difference is that the fallback would include all referenced
> messages.
>
> """
>
> I think it also might be worth considering having some kind of limiter in
> how many messages can be referenced by one reply - perhaps MUCs that
> advertise support for replies could indicate in a data form how many
> references may be one message, and if clients don't self-enforce this, then
> the MUC could throw a policy violation error and drop the message.
> _______________________________________________
> 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]

Reply via email to