Comment Re:Part of the early 2000s XML solves everything (Score 3, Informative) 32
XMPP isn't even good XML. It's weirdly annoying.
XMPP absolutely requires an event-based parser, because the entire conversation from start to end is a single XML document that doesn't end until the client disconnects. So you absolutely need a parser that can deal with XML as it comes.
It's also not terribly high performance friendly. There's no clear framing, so the only way to tell where a message ends is to parse XML until you reach the end. You don't get a friendly protocol that tells you "Hey, next message is 520 bytes long", so that you can conveniently allocate a buffer upfront and read the whole thing in one go.
Besides that, it appears that XMPP's dialect deviates somewhat from proper XML, eg, by not allowing anything but UTF8 and forbidding comments. Those may be fairly minor, but they'd be problems early on, meaning you can run into trouble with the wrong XML libraries/code.