[Biopython-dev] ASN.1

Andrew Dalke dalke at acm.org
Sat May 26 02:30:49 EDT 2001

>It's a context-free grammar used for data at the NCBI.  It was invented
>before XML, but technically, should be able to handle equivalent data.  I
>don't know if it's used outside of NCBI -- I've never seen it.

I've seen it in two other places: exchange of crypto data and
(this is obscure :)) Steve Brenner's annmm, at

Years ago I tried using NCBI's toolkit to parse annmm for
VMD and got it to core dump so ended up writing an ugly parser
in Perl which was sufficient to handle only annmm.  That
task turned me off of both ASN.1 and the NCBI toolkit.  No
doubt the toolkit has improved since then but I don't know
anyone who has used it to tell me its status.

A google search returns lots of "ASN.1" hits.  The first is
http://asn1.elibel.tm.fr/ .  I came across references of
ANS.1 used for SNMP, X.400 email, X.500 directory and Z39.50.
In other words, big gnarly international standards I don't
use :)

> How much is ASN.1 used?

Outside of NCBI but still in the world of bioinformatics, it isn't.

> My first impression is that its close enough to xml that it
> should be xml [...] What does it offer beyond xml?

I would argue that it's not the same as raw XML.  It contains
things like "integer" or "choice" which are more like XML Schemas,
"which offers facilities for describing the structure and
constraining the contents of XML" (http://www.w3.org/TR/xmlschema-1/).
Granted, XML Schemas are written using XML, but that's like
saying SWISS-PROT is written using ASCII.

I don't know enough about it to judge what it offers beyond
XML.  As with Jeff, I think they are for the most part equivalent -
and for what NCBI uses of it, they definitely equivalent, with
the advantage going to XML for having many more tools available
for dealing with it.


More information about the Biopython-dev mailing list