Messages without a body are not considered chat messages. They won’t be archived or stored. They are considered real-time messages and if there is no recipient, they will be discarded.
It is a simple message that will be sent to all clients to remove the previous message. However, it won’t be stored and has to be handled by online users. Offline users will not receive it. Also, you need to find the old message in the archive and delete it to prevent offline users retrieving in via chat history when they come online.
I think it is good practice to put a human readable message in the body in order to call it a chat message otherwise it is a realtime message like a pub-sub notification event.
No sure what offline storage in openfire is currently doing, but monitoring plugin will not archive any message stanza without a body tag last time I checked. I appreciate what the spec says about the type attribute of the message stanza but in practice, what use is a chat message without a body providing the text?