Everything being an extension is a good feature
You're right! I thought about it as I was typing, that having a mechanism to evolve in the future is important! And both protocols can evolve over time
Though I think that the "Matrix evolves, server implementors should follow the specification" model/mentality may work better (even if not all implementations follow it, but most probably will)
Than the mentality of "the base XMPP protocol only sends text messages, everything else is optional, before joining a server and downloading an app users are advised to check if they support images, encryption, federation, and chat history synchronization"
