CML

    Marvin is capable of importing and exporting files in the Chemical Markup Language. Special atom types are lost during export.

    Code : cml

    Extension : .cml

    Import

    The following CML2 standard tags are recognized:

    • <cml>

      Children:

      • <molecule>

      • <reaction>

    • <molecule>

      Attributes:

      • title

      Children:

      • <propertyList>

        • <property dictRef=" name " title=" name " > - A property.

          • <scalar [dataType=" dataType "] > value - Supported data types: "string" (default), "boolean", "integer", "double", "ENTITY" (for special property classes).

          • <array dataType=" dataType " [delimiter=" delimiter "] > list of values - Currently, only the "integer" data type is supported. The default delimiter is the space character.

        • <property>

        • <atomArray>

        Attributes:

        • atomID , elementType , x2 , y2 , x3 , y3 , z3 , formalCharge , hydrogenCount , isotope

        Children:

        • <atom>

          Attributes:

          • id , elementType , x2 , y2 , x3 , y3 , z3 , formalCharge , hydrogenCount , isotope
        • <bondArray>

        Attributes:

        • atomRefs1 , atomRefs2 , order

        Children:

        • <bond atomRefs2=" a1 a2 " order=" order " >

          The atom references a1 and a2 must be valid atom ids. The order value can be "1", "S" (single), "2", "D" (double), "3", "T" (triple) or "A" (aromatic).

          Children:

          • <bondStereo > value

            • Value can be "W" (wedge - up), "H" (hatch - down), "C" (cis) or "T" (trans)
          • <bondStereo convention=" convention " conventionValue=" value " />

            convention conventionValue meaning
            MDL 1 up
            MDL 6 down
            MDL 4 either
            MDL 3 cis or trans
            Chemaxon CTUnspec cis/trans or unspecified

          A <bond> tag is recognized at import even if the bondArray container is not present.

    • <reaction>

      Attributes:

      • title

      Children:

      • <reactantList>

        • <molecule>
      • <productList>

        • <molecule>
      • <propertyList> - Reaction properties

    CML in other programs:

    • JChemPaint (last version tested: 1.9.8) and Marvin imports each other's CML files.

    • Jmol 8 imports CML files exported by Marvin that contain 3D structures. Jmol is a 3D viewer that does not import bonds but calculates them from atomic distances. This means that bonds are not imported correctly if the molecule is 2D.

    See also CML Export Options

    References