Start a new topic

incorrect SMILES string

 using MarvinJS and obtaining the SMILES via JChem webservices I get different SMILES strings for aromatic structures. The SMILES string is also incorrect based on standards and the SMILES string that is returned by MarvinSketch.

for 1,2dimethylbenzene (o-xylene), I get CC1=CC=CC=C1C or CC1=C(C)C=CC=C1 depending on whether the two methyls are on the double bond or single bond in the Kekule structure of the benzene ring. this seems to be the case with similar aromatic structures.

when I put o-xylene into a SMILES generator or MarvinSketch, I get Cc1ccccc1C which should be the string that is returned in MarvinJS

Dear Mark,

Thank you for mentioning this.

The difference that you experience is because with ChemAxon tools you can export more types of SMILES. You can read more about this in our documentation:

As default, JChem Web Services exports into generic SMILES format, that is what you get in Marvin JS export dialog.
The type of SMILES you are looking for is unique SMILES. 

You can send a request to the web service to generate you the right type of SMILES via Marvin JS API function with the following parameters:
exportStructure("smiles", {"extra": "u"})

I hope this information will help.

Best regards,
Eszter Szabo

Marvin JS Team Member


thanks for the information. I currently use:

exportStructure("smiles", {"extra": "-H"}) to get a SMILES string with explicit hydrogens removed from the structure. Can I combine these:

exportStructure("smiles", {"extra": "-H,u"}) to get the SMILES without explicit hydrogens and aromatisation

cheers Mark

Hi Mark, 

You can combine these as the following:
exportStructure("smiles", {"extra": "-H, "extra":"u"}) 

If any further question arises, please let us know.


Login to post a comment