A comparison of ABNF, ASN.1 and XML

I have made a short comparison of ABNF, ASN.1 and XML, by
encoding the same information with all three coding methods.

The result of the comparison is not very surprising. The
meta description (ABNF, ASN.1 resp. DTD) was about equally
long with all three languages. My personal preference is
for ASN.1 as a meta language, since it is easy to read and
gives stronger type control.

The encoded data required 169 octets for ABNF, 54 octets
for ASN.1-BER and 297 octets for XML. ASN.1-PER would
probably give even less octets. The readability of the
encoded data was however much much better with ABNF and
XML. XML gives especially good readability of the encoded
data for complex information structures. And the need for
many more octets with ABNF and especially XML can of course
be eliminated through compression. I made some tests with a
compression program, and it is able to eliminate almost all
the additional redundancy with ABNF and XML, but maybe not
for very small files.

My personal wish would be to have such a neat and strongly
typed metalanguage as ASN.1, but such neat and readable
encoded data as XML. (I know that there is something called
XER. But I do not believe that is what I am asking for. XER
is an attempt to encode ASN.1 into a subset of XML. What I
would wish is an ASN.1-like replacement for the DTD meta
language, i.e. a meta language which can replace DTD for
the full span of the XML language.)

This message makes a number of statements on very
controversial issues, so all of you may not agree with the
conclusions!

The comparison can be found at:
http://dsv.su.se/jpalme/abook/comparison.pdf in Acrobat format, and at
http://dsv.su.se/jpalme/abook/comparison.ps in Postscript format

(Note: My BER encoding is probably not 100% right. It is
difficult to produce correct BER encoding manually, and I
have no ASN.1-BER encoding program to help me. But this
will probably not influence the results of the comparison
very much.)
-- 
Jacob Palme <jpalme@dsv.su.se> (Stockholm University and KTH)
for more info see URL: http://www.dsv.su.se/jpalme/

Received on Thursday, 2 March 2000 12:14:22 UTC