Yes, molfile can only correctly indicate stereochemistry via a depiction. The structure diagram generator will add in required wedge bonds and adjust geometric isomers (with the exception of macrocycles). 

The best way to do this properly is to store the coordinates in an auxiliary layer (just like the InChI does with AuxInfo). You can then keep the depiction for display but have the compressed graph for fast loading. This also provides a good way to store multiple depictions or 3D conformers. Stephanís made great use of this for wiring nodes together in Knime. 

Check out the doc on the create(IAtomContainer, int[]) method in the SMILES generator. You also need to assign wedge bonds without regenerating a depiction, this is done with the NonPlanarBonds class (package-private). 

Alex Clark actually had a nice recent post on conversion - There are pragmatic solutions to most of his listed shortcomings but then Iím definitely more informatician then chemist :-). 


On 13 May 2014, at 22:06, John May <> wrote:

Hi Asad,

You are generating a generic SMILES, you probably want an isomeric SMILES. Both and non-canonical and intended for storage, canonical equivalence are unique and absolite.


On 13 May 2014, at 17:05, Syed Asad Rahman <> wrote:


What is the best way to preserve the stereo chemistry in the CDK while converting an AtomContainer to SMILES and back (round trip)?

IAtomContainer=>SMILES=> IAtomContainer (leads to loss of stereo information)



PS: Attached is a molecule (L-Alanine) with Stereo centre.


"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.
Get unparalleled scalability from the best Selenium testing platform available
Simple to use. Nothing to install. Get started now for free."
Cdk-user mailing list