Java CML Filter Library (JCFL)

About the project

The Chemical Markup Language (CML) is a XML application for storing and transporting chemical information. The first official release of CML was in spring 1999. Egon Willighagen wrote import and export filters in the Java programming language soon after. These Java classes are now avaiable under GPL license.

The library makes use of the Chemical Data Object Programming Interface (CDOPI). Using the JCF Library means that the Java program must define a class that implements CDOPI. JCFL uses this subclass to store information taken from a CML file or stores the information in the subclass into a CML file.

Supported Software

Below is a table with software that can produce CML. In the first column the name of the program is given, and in the second a list of conventions used for the output. In the third column, for each of these conventions, the support for this convention by JCFL is described.

program output conventions supported by JCFL
Jmol JMOL-ANIMATION yes, as plugin
JChemPaint JCHEMPAINT yes, as plugin
?? MDLMol yes

If you know of other software that produces CML code, and you are interested in support by the JCF library, please contact me.


The latest version of this library is 1.2.6 and was released on January 1st 2001.

Except for the FortranFormat (wriiten by D.Gezelter) class all classes are distributed with a GNU license.

Software that uses JCFL


There is no tutorial yet. In principle, please refer to the Jmol or JChemPaint software to see how one can implement JCFL. Alternatively you can request a tutorial. If need is urgent enough or enough request, i'll make time to write it.

Articles on JCFL


Last updated on January 1st 2001. Copyright © 2000-2001 Egon Willighagen