Most of RFC 3920 is supported, with the following exceptions.
SASL is supported only when an external SASL library from FLIM or Gnus is present. As SASL is an essential part to XMPP, jabber.el will send pre-XMPP stream headers if it is not available.
None of the stringprep profiles are implemented. jabber.el changes JIDs to lowercase internally; that's all.
jabber.el doesn't interpret namespace prefixes.
xml:lang attribute is neither interpreted nor generated.
SRV records are used if a modern version of
dns.el is installed.