[Standards] <[CDATA[ in XMPP

Sergei Golovan sgolovan at nes.ru
Tue Jul 31 14:22:31 UTC 2007

On 7/31/07, Jacek Konieczny <jajcus at jajcus.net> wrote:
> On Tue, Jul 31, 2007 at 05:22:50PM +0400, Sergei Golovan wrote:
> > The main mistake you did (and probably the only mistake, because CDATA
> > is indeed a valid XML construct) is that you BREAK THINGS.
> >
> > Since NO software used CDATA before
> Are you sure? Some people use existing XML libraries. Those could

I'm not sure. But at least all server implementation don't use CDATA (yet).

> generate CDATA in some cases -- e.g. only in some specific situations or
> after XML library upgrade (valid optimisation of XML serializer). Such
> software, even if very uncommon, is valid!

It's not a reason to add this explicitly.

> > there's certainly some which will break.
> Some time ago jabberd (the only available then) passed around non-UTF8
> characters. That was not valid XML handling. And most clients (all two

If there is a bug in a client or server it has to be fixed. But I
don't think that adding a "feature" which only impact is to highlight
bugs is a good idea. It's a good idea for a compatibility suite, but
not for real application.

> Any software using a third-party, standard compliant XML generator may
> start generating CDATA sections at any moment. And that will not be
> a bug in a XML library!

If the developer has no choice he can use this library. I would say
that even a reason like "this library is the most convenient for me"
looks reasonable.

Moreover, encouraging all to use full-featured XML parsers is a right
thought in long run. But not in such a way. People who loose with this
change are users and server admins. Isn't there a main goal for all
the clients and servers to make users happy? Or Jabber is only a toy
for a few tens of developers?

Sergei Golovan

More information about the Standards mailing list