Wed, 4 Dec 2013 14:44:36 +0000 Dave Cridland <[email protected]> wrote:
> XMPP is *not* a hard-schema protocol for the most part - we can and do > cheerfully sling extra elements and attributes in all over the shop. > Only the core is hard - that is, the stanzas and stream - the rest > should be considered simply "complete as far as they go". Good schema protocols assume you can add some extra elements. XMPP doesn't provide any schemas at all. Yes, there are XML schemas, but those are pointless inefficient crap. Not saying that for many XEPs they are incorrect or even missing. Implementators are *required* to write silly validation code which will consume 50% of the total code easily. Take a look inside any XMPP implementation: most of the time you will see tag/attribute checks like "is it required?", "is it an integer?", "does it have CDATA?" and so on. A waste of a time and a source of errors. I consider this as a very major problem. XMPP 2.0, if we're talking about it, should target this in the first place. For example, with protobuffs/thrift/asn1 we wouldn't have those problems.
