mail-ng
[Top] [All Lists]

Why XML (was: Re: What I see as problems to solve ... and a strawman solution)

2004-02-01 15:38:07

At 15:10 04/02/01 +0000, Paul Smith wrote:

However, thinking about it a bit more, I can see reasons for XML -
<header>
<to><name>fred bloggs</name><address>fred(_at_)company(_dot_)com</address></to>
<to><address>jim(_at_)company(_dot_)com</address><name>Jim Smith</name><comment>Director</comment></to>
...
</header>
would be more useful than the many ways to encode a To: field at the moment, but that's about the only reason that I can come up with. The added complexity of XML parsing & generation, and the data overhead may or may not be worth it, IMHO, there are almost definitely non-XML ways of doing this.

One thing where I think XML could help a lot is to get some order
into the current header confusions. In particular, the From:, Sender:,
Reply-to:,... headers have been developed in a somewhat ad-hoc fashion.

Rather than a mostly flat header structure and a two-level distinction
between (transport/SMTP) envelope and email body (including headers),
it seems to me more appropriate to have a single format with some
rather general wrapping conventions. More on that maybe in another
message.

A particularly interesting property for XML in the context of email
is that with XML digital signatures (http://www.ietf.org/rfc/rfc3275.txt/
http://www.w3.org/TR/xmldsig-core/), you can sign arbitrary pieces
of a document, i.e. you can sign the body and some headers, but
not others. Also, the signature is not on the bytestream, but on
canonical XML. Together, these two properties can alleviate quite
a bit of the current problems with signing email messages.


At 03:56 31/01/2004, Chuq Von Rospach wrote:

And anyway, why build a custom format that needs custom code to decode, when you can use an existing system that allows for existing tools to do the packing and unpacking?

Because this assumes you have access to libraries which work on your system which support parsing/creating XML. Let's assume you're writing a mailing system for a hardware device with a limited amount of RAM & ROM, and you only have assembler and C (if you're lucky) to use, would you still want XML?

Yes. The chances are that there are a few other things going on on this
system, even if it's very small. And a few of them easily also use XML.
You might be surprised, but as far as I know, most of the higher-end
mobile phones these days support XML.


Regards,   Martin.