The InChI algorithms are written in C++ and not available as Java library. Integration into softwarewritten in Java therefore requires a bridge between C and Java libraries, provided by the Java NativeInterface (JNI) technology.
We here describe how the InChI library is used in the Bioclipse workbench and the Chemistry Development Kit (CDK) cheminformatics library. To make this possible, a JNI bridge to the InChIlibrary was developed, JNI-InChI, allowing Java software to access the InChI algorithms. By usingthis bridge, the CDK project packages the InChI binaries in a module and offers easy access fromJava using the CDK API. The Bioclipse project packages and offers InChI as a dynamic OSGi bundlethat can easily be used by any OSGi-compliant software, in addition to the regular Java Archive andMaven bundles. Bioclipse itself uses the InChI as a key component and calculates it on the ﬂy whenvisualizing and editing chemical structures. We demonstrate the utility of InChI with various applications in CDK and Bioclipse, such as decision support for chemical liability assessment, tautomergeneration, and for knowledge aggregation using a linked data approach.
These results show that the InChI library can be used in a variety of Java library dependency solutions, making the functionality easily accessible by Java software, such as in the CDK. The applications show various ways the InChI has been used in Bioclipse, to enrich its functionality.
2013. Vol. 5, no 14