User 98d11041ad
13-09-2011 22:31:30
The ChemAxon 5.5.0.0 Tool kit fails to import the following smiles:
C1[O]23[O]4[O@@]11[Si@@]24[O]3112C34[O]11C[O@@]23[O]4112[O]34C[O@@]11[O]3[Si@@]241
Which was originally generated by MarvinBeans after the standaridization process.
Apparently similar behviour is observed with the Oracle Cartridge on Oracle 10g
ChemAxon 9c0afc9aaf
13-09-2011 23:07:39
Hi,
This seems to be a "crazy" (impossible) structure with up to 6-valent O atoms and so forth.
This was too much to digest for our software in some versions.
JChem 5.6. has just been released, and it is now capable to read this SMILES without exception.
Best,
Szilard
User 98d11041ad
14-09-2011 17:18:55
Szilard,
Thank you for the prompt reply.
I agree that is a crazy structur, and I am still tracking the source of it.
Do you generally recoomand us upgrading to 5.6?
ChemAxon 9c0afc9aaf
14-09-2011 17:28:34
Do you generally recommend us upgrading to 5.6?
Yes.
Szilard
User 98d11041ad
14-09-2011 18:13:49
Szilard,
I have tried that crasy molecule on 5.6 and I still can not import it successfully.
in fact here is the exception out of my test case:
System.out.println("\t\tImporting " + linecount + " containing " + smilesLine );
MolHandler handler = new MolHandler();
Molecule m;
handler.setMolecule(smilesLine);
Importing line 0 containing C1[O]23[O]4[O@@]11[Si@@]24[O]3112C34[O]11C[O@@]23[O]4112[O]34C[O@@]11[O]3[Si@@]241
chemaxon.formats.MolFormatException: 1
at chemaxon.marvin.io.MRecordImporter.readStructure(Unknown Source)
at chemaxon.marvin.io.MRecordImporter.readMol(Unknown Source)
at chemaxon.marvin.io.MRecordImporter.readMol(Unknown Source)
at chemaxon.marvin.io.MRecordImporter.readMol0(Unknown Source)
at chemaxon.marvin.io.MRecordImporter.readMol(Unknown Source)
at chemaxon.formats.MolImporter.readMol(Unknown Source)
at chemaxon.formats.MolImporter.read(Unknown Source)
at chemaxon.formats.MolImporter.read(Unknown Source)
at chemaxon.util.MolHandler.importMol(MolHandler.java:661)
at chemaxon.util.MolHandler.setMolecule(MolHandler.java:149)
at com.ibm.simple.standardization.InchiKeyFix.main(InchiKeyFix.java:43)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 1
at chemaxon.marvin.modules.Parity.compareLevel(Unknown Source)
at chemaxon.marvin.modules.Parity.digraphTopoComparison(Unknown Source)
at chemaxon.marvin.modules.Parity.orderCIPTopographical(Unknown Source)
at chemaxon.marvin.modules.Parity.calculateTHChirality(Unknown Source)
at chemaxon.marvin.modules.Parity.stereogenicCenterCalculation(Unknown Source)
at chemaxon.marvin.modules.Parity.getChirality(Unknown Source)
at chemaxon.marvin.modules.Parity.modfunc(Unknown Source)
at chemaxon.struc.MoleculeGraph.getChirality(Unknown Source)
at chemaxon.marvin.io.formats.smiles.SmilesImport.setChiralFlag(Unknown Source)
at chemaxon.marvin.io.formats.smiles.SmilesImport.readMol0(Unknown Source)
at chemaxon.marvin.io.formats.smiles.SmilesImport.readMol(Unknown Source)
at chemaxon.marvin.io.formats.smiles.SmilesImport.readMol(Unknown Source)
ChemAxon 9c0afc9aaf
14-09-2011 18:46:43
Hi,
A similar code works for me with 5.6 just fine.
I suggest to double-check which version is in the classpath of your application:
System.err.println("Jchem version:" + chemaxon.jchem.version.VersionInfo.JCHEM_VERSION);
MolHandler handler = new MolHandler();
handler.setMolecule("C1[O]23[O]4[O@@]11[Si@@]24[O]3112C34[O]11C[O@@]23[O]4112[O]34C[O@@]11[O]3[Si@@]241");
Molecule m=handler.getMolecule();
System.err.println(m.toFormat("smiles"));
User 98d11041ad
14-09-2011 19:31:19
Szilard,
You were aboslutely right, it was my classpath which contained residual 5.5 references.
Thank you so much.