0
$\begingroup$

Is there a specification for MDL Connection Table format somewhere. At some places it is mentioned that the format writes the line length as a character then the actual line characters. If I save a structure using ChemDraw, I see no such thing and the lines are separated using CarriageReturn and LineFeed characters. Can someone please point me to the correct format? Is it that the format is different while SAVING TO FILE and while COPYING TO CLIPBOARD?

$\endgroup$
4
  • $\begingroup$ Do you mean SDF? MDL uses "Connection Table" or CTfile to represent their general file format, e.g. Accelrys / MDL or Wikipedia $\endgroup$ Commented Oct 21, 2014 at 14:02
  • $\begingroup$ Or do you mean the "Connection Table" format (.ct) output by ChemDraw? This is an old, deprecated ChemDraw format. $\endgroup$ Commented Oct 21, 2014 at 14:04
  • $\begingroup$ Which is the Standard one? Isn't ChemDraw's CT same as MDLCT? Do they have their own CT format? $\endgroup$
    – user6834
    Commented Oct 21, 2014 at 16:43
  • $\begingroup$ Here's the MDL spec, I assume it's the original one: daylight.com/meetings/mug05/Kappler/ctfile.pdf $\endgroup$ Commented Mar 8 at 9:23

2 Answers 2

2
$\begingroup$

I know this is an old question but like to provide some detail since this does not seem to be documented officially anywhere. The MDL connection table format used in MOL files is described in the CT File Formats document referenced in the first answer. This is simple ASCII text with hard linebreaks (LF or CR+LF, depending on platform).

But there is also a special clipboard format MDL_CT created by ISIS/Draw, Accelrys/Draw etc. on Windows. This is not simply a MOL file put as text onto the clipboard. Instead each line of the molfile data is prefixed by a byte holding the number of characters, followed by the ASCII (one byte) characters of the line. The lines are not terminated by line breaks! This is basically the good old TurboPascal string format.

In addition to a single molecule the MDL_CT clipboard format also supports reactions. In that case the data comes from a RXN file, which is converted to the clipboard format the same way a molfile is: prefix each line with a length byte, remove hard linebreaks.

$\endgroup$
1
  • $\begingroup$ Interesting that the clipboard format is different - didn't realize that, thanks! $\endgroup$ Commented Nov 8, 2016 at 17:26
1
$\begingroup$

MDL "CT" is a synonym for part of a MDL Molfile or SD file. ChemDraw has a "Connection Table (.ct)" format, which is different and deprecated.

The specification is online: http://accelrys.com/products/informatics/cheminformatics/ctfile-formats/no-fee.php

And in any format, something saved to the clipboard should be the same as saved to a file.

$\endgroup$
5
  • $\begingroup$ I doubt if CT is the same as Molfile. I think CT is part of Molfile and Molfile format contains additional rows of information such as molecule name and description. CT (Connection Table) represents the atom and bond information in a Molfile format. $\endgroup$
    – user6834
    Commented Oct 21, 2014 at 16:51
  • $\begingroup$ I still don't know where you're referring to this. Yes, there is a connection table that's part of all MDL formats. It's specified in the "CTfile" specifications $\endgroup$ Commented Oct 21, 2014 at 19:27
  • $\begingroup$ But nothing from MDL ever refers to a "connection table" as a separate format. $\endgroup$ Commented Oct 21, 2014 at 19:29
  • $\begingroup$ +1. Yes CT is part of Molfile format. I was referring to program specific CT formats such as ChemDraw's and then there is one in the Indigo Chemistry Toolkit API that saves CT as (SingleCharForLineLength... then the actual lines follows). $\endgroup$
    – user6834
    Commented Nov 5, 2014 at 11:41
  • $\begingroup$ MDL's CT is different from the rest. Certainly ChemDraw's CT is marked as deprecated. Open Babel has an implementation to read it, but I doubt anyone really uses it. I haven't seen the Indigo version to know if it's different. $\endgroup$ Commented Nov 5, 2014 at 13:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.