CIF parser

Paul Edgington edgington at ccdc.cam.ac.uk
Fri Oct 6 05:17:14 EDT 2000


On Thu, 5 Oct 2000 23:08:41 -0600, "Andrew Dalke" <dalke at acm.org>
wrote:

>Horst Gassner wrote:
>>Does anyone know if there is a parser for the CIF (Crystallographic
>>Information File) format? I only found parsers written in C language but
>>none written in Python.
>>
>>The following URL is the one where I have looked for a parser:
>>http://www.iucr.org/iucr-top/cif/home.html
>
>I haven't come across any.  That link you mentions points to HICCuP from
>CCDC which requires Python, but I can't find documentation for it and
>I don't like the license enough to download the package.
>
>Then again, I've had a long dislike of CIF - more specifically, mmCIF -
>so it would't take much for me to keep from downloading a CIF package.
>(Eg, the CIF format is protected by patent law (!), is strongly FORTRAN
>biased and doesn't really have namespaces.)  Luckily, I haven't come
>across anyone in molecular modelling who's actually used the format,
>even though mmCIF's been out for 6 years or so.
>
As the author of HICCuP and until recently on the CIF maintainence
committee I would like to say....

Sorry the documentation never got finished as the project was
effectively mothballed (which is why it has been 'beta' for ever!)
However I would hope that users find the interface is fairly
intuative. I would also like to apologise for the coding. It was might
first bit of serious python from a Fortran background. 

The licence is a general one used for free software from the CCDC.
Until it was mentioned I didn't realise it had been added to HICCuP.
Anyway its a bit inapplicable in places (i.e. how do you reverse
engineer a python .py file??).

I am amazed by the comment about CIF being FORTRAN biased. Having had
to write some fortran code to read and process CIF's for processing to
database entries I can say its one of the worst languages for CIF
handling.

Anyway. Back to the original point. From a little private project of
my own I have put some CIF passing code at:

http://www.ccdc.cam.ac.uk/~edgington/CIFparsing.py

Which might be useful.

Paul

--
http://i.am/am.i.not/ Paul Edgington
Senior Scientific Software Engineer
Cambridge Crystallographic Data Centre




More information about the Python-list mailing list