I'd like to represent and save molecules at a more detailed level than an InChI, such that I can include metastable molecules with electrons at specific excitations (for example, singlet vs triplet states). I understand that a molfile removes some of the ambiguity in SMILES and potentially InChI's, but aside from the specified bonds, the molfile assumes all orbitals are in their lowest unoccupied energy level, right?

Is there a well supported format that includes information about energy levels (and bonus points for conformations, too), so that I can cache results from certain long running molecular simulations?

  • 3
    $\begingroup$ I guess this is better suited at Matter Modeling. Please do not cross-post this question. Raise a flag if you want it migrated. Anyway, as a first idea CML comes to mind. Never used it, but it should have the capabilities. Another idea would be to look at the machine learning stuff currently happening. They're parsing, storing and using heaps of data. A molfile is a structure file, it does not make any assumptions on the wave function/el density. Oh… wfn files can store that. $\endgroup$ Commented Dec 14, 2023 at 23:35

2 Answers 2


What you describe is unfortunately, not represented much by common interchange formats.

As part of the Avogadro project, we've been developing an extensible, community standard schema for chemicaljson which does include:

  • total molecular charge
  • molecular spin state
  • orbital occupations
  • conformations (3dSets)
  • vibrations
  • calculated spectra
  • metadata / properties

Please feel free to post questions / issues at the chemicaljson GitHub, or on the Avogadro forum: https://discuss.avogadro.cc/

  • $\begingroup$ BTW we welcome adoption by other project and I'd be happy to help with implementation or schema questions and concerns $\endgroup$ Commented Dec 16, 2023 at 20:40
  • $\begingroup$ This seems like the best option available, I'll look into it! $\endgroup$
    – Gert
    Commented Dec 17, 2023 at 0:11

Like mentioned in the comment, have a look at the Chemical Markup Language (CML). This Scholia page has relevant literature, but particularly check these two publications:

  • Phadungsukanan, W., Kraft, M., Townsend, J.A. et al. The semantics of Chemical Markup Language (CML) for computational chemistry : CompChem. J Cheminform 4, 15 (2012). https://doi.org/10.1186/1758-2946-4-15
  • de Jong, W.A., Walker, A.M. & Hanwell, M.D. From data to analysis: linking NWChem and Avogadro with the syntax and semantics of Chemical Markup Language. J Cheminform 5, 25 (2013). https://doi.org/10.1186/1758-2946-5-25
  • $\begingroup$ I don't think CML has any semantics for orbital occupations (e.g., a singlet or triplet excitation). $\endgroup$ Commented Dec 16, 2023 at 17:51
  • $\begingroup$ @GeoffHutchison, this is what the "conventions" can be used for: you can add additional properties. Should not be an issue, I think, but may require a bit of extra hacking. This is, btw, why the Chemistry Development Kit has this plugin mechanism for CML reading. $\endgroup$ Commented Dec 18, 2023 at 8:36
  • 1
    $\begingroup$ I know, but those "conventions" need to be supported by software, and IIRC there's no agreed convention for orbital occupation and other things. Happy to discuss further via e-mail. There's a reason after deJong and Hanwell wrote that paper, they switched to CJSON. $\endgroup$ Commented Dec 18, 2023 at 22:19
  • $\begingroup$ But I guess switching to another format did not mean they did not have to write code to support that format, or? $\endgroup$ Commented Dec 20, 2023 at 5:30

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .