Chemaxon Object Notation - CXON

    Code: cxon

    Chemaxon Object Notation (CXON [sɪksɒn]) is a Chemaxon specific JSON representation for chemical documents.

    About the format

    The CXON file format is primarily designed to support web based transfer of chemical documents. CXON files can store both chemical (explicit molelcules, Markush structures, chemical reactions) and graphical content (visual properties, graphical objects, formatted text boxes, etc.).

    Main characteristics:

    • A CXON document is a well formed JSON
    • The applied standards were chosen to support the matching of the content to web-based technologies, e.g. HTML color-codes are used to represent colors or the standard SVG Path is used to store graphical paths
    • A CXON document can be easily inserted in REST payloads as is
    • CXON can be used with JSON.stringify and JSON.parse natively in JavaScript

    Schema

    The CXON format has a JSON Schema descriptor. The all-time latest CXON schema specification can be accessed here.

    Document Structure

    ChemicalDocument

    Chemaxon specific JSON representation of a chemical document.

    {warning} Please mind that this project is in beta phase, which means that currently no backward compatibility is guaranteed.

    Fields

    field type description
    $schema string The url for the schema the CXON file is compliant with
    $version string The version of the CXON schema (e.g.: 1.0.0-beta)
    title string The title of the entire chemical document.
    comment string? Comment for the chemical document.
    molecules Molecule[] List of the simple Molecules in the document. Reaction and Markush components are handled separately.
    reactions Reaction[] List of chemical Reactions in the document.
    markushStructures MarkushStructure[] List of Markush structures in the document.
    graphicalObjects (Arrow | Bracket | Ellipse | Image | Line | Path | Rectangle | TextBox | PlusSign)[]? List of graphical objects in the document.
    displayProperties DisplayProperties? Object to hold all display related properties, such as visibility options, rendering hints, or graphical statuses.
    properties { [k: string]: any; }? Key-value pairs of additional custom properties.

    Molecule

    A simple chemical structure. Can be listed in the document as is, or defined as an entity in a Reaction or Markush structure.

    Fields

    field type description
    id string Reference id of this object. Should be unique for the entire document.
    nature MoleculeNature Logical property of the molecule, marking its type from cheminformatical point of view. PLAIN is for regular molecules, NO_STRUCTURE for placeholder molecule for search purposes.
    atoms Atom[] The list of the Atoms in this molecule.
    bonds Bond[] The list of the Bonds in this molecule.
    groups Group[] The list of the Groups in this molecule.
    properties { [k: string]: any; }? Key-value pairs of additional custom properties.

    Reaction

    A chemical Reaction. Only single step reactions are supported.

    Fields

    field type description
    id string Reference id of this object. Should be unique for the entire document
    direction ReactionDirection? The direction of the reaction. If omitted, the reaction direction is FORWARD
    reactants Molecule[] The list of the reactants of the reaction.
    agents Molecule[] The list of the agents of the reaction.
    products Molecule[] The list of the products of the reaction.

    MarkushStructure

    A Markush structure object. A Markush structure is defined by a scaffold, a list of Definitions and an optional Logic to describe extra rules for Definition substitutions.

    Fields

    field type description
    id string Reference id of this object. Should be unique for the entire document.
    scaffold { [k: string]: any; } The scaffold (root structure) of this Markush.
    definitions Definitions[]? The list of the variable Definitions for this Markush.
    logic Logic[]? The extra rules for the Definiton substitutions

    Definitions

    Markush Definitons is a list of alternatives the R-atoms can be substituted with.

    Fields

    field type description
    name string? The name of the definition. Usually the label of the corresponding R-atom. Functions as an id as well, so it has to be unique within this Markush structure.
    alternatives Molecule[]? The applicable alternatives for this definition. This definition can be substituted with any of these alternatives.

    Logic

    The extra rules for the Definiton substitutions

    Fields

    field type description
    targetDefinition string? The name of the Definition this logic defined for.
    occurenceCount string? The desired substitution count of the target Definition as a string. The value represents either an exact count or an open or closed range.
    restH boolean? This Logic triggers if and only if all substitutions of the R-atoms of the scaffold are either an alternative from the target or a Hydrogen atom.
    thenDefinition string? Makes this Logic an if-then type conditional Logic and specifies the then-definition name.

    Atom

    An atom object. Basic building block of molecule objects. Either can be a natural chemical element, or a logical placeholder for custom entities, such as groups attachment points, query entities or Markush atoms.

    Fields

    field type description
    id string Reference id of this object. Should be unique for the entire document
    label string The label of this Atom, which is the symbol from the periodic table for natural elements, or a custom label for logical Atoms.
    nature AtomNature Logical property of the Atom, marking its type from cheminformatical point of view. SUPERATOM is for legacy purposes only, do not use.
    alias string? A custom label to override the label of this Atom in some cases.
    charge number? The electrical charge (formal charge) of this Atom as a signed integer. Should be omitted for uncharged Atoms.
    isotope number? The isotopical mass (sum of the count of protons and count of neutrons in the nucleus) of this Atom as a positive integer.
    location Location? The coordinate of this Atom. If omitted, it should be considered as (0;0;0).
    mapping number? Atom-to-Atom mapping index: correspondence of Atoms in different structures. Do not confuse with numbering, which is a dynamic, calculated value, stored as the name of the numbering algorithm for the entire document.
    radical AtomRadical? Free radical value of the Atom.
    stereo Stereo? The stereochemistry-properties attached to this atom
    implicitHydrogenCount number? Indicates the suggested number of implicit hydrogens bound to this Atom. Correct values can vary in different systems. When the value is considered incorrect it can be ignored. This is not a query property.
    properties { [k: string]: any; }? Key-value pairs of additional custom properties.

    Location

    Three dimensional coordinate to mark a Location. In CXON it is a molecular Cartesian coordinate in Angstroms.

    Fields

    field type description
    x number X-coordinate.
    y number Y-coordinate.
    z number Z-coordinate.

    Bond

    A Bond object, which is a basic building block of Molecule objects. Can be a chemical bond or a query bond.

    Fields

    field type description
    id string Reference id of this object. Should be unique for the entire document.
    type BondType Type of this Bond. Can be a chemical covalent bond (SINGLE, DOUBLE, TRIPLE, AROMATIC, COORDINATE) or stereochemically enhanced covalent bond (UP, DOWN, UP_OR_DOWN), or a query bond (ANY, CIS_OR_TRANS, SINGLE_OR_AROMATIC, SINGLE_OR_DOUBLE, DOUBLE_OR_AROMATIC, UP_OR_DOWN).
    startAtom string The reference id of the Atom this bond starts at. The direction is not important in most cases, but relevant for stereochemical and dative bonds.
    endAtom string The reference id of the Atom this bond ends at. The direction is not important in most cases, but relevant for stereochemical and dative bonds.
    query BondQuery? The query features attached to this bond

    Group

    Work in progress

    Fields

    field type description
    id string Reference id of this object. Should be unique for the entire document
    type GroupType Type of this Group
    name string? The name of this Group. In case of abbreviation this is the default label.
    location Location? The coordinate of this Group. This location should be used if the group is contracted. If omitted, it should be considered as (0;0;0).
    atoms string[] The reference ids of the Atoms in this Group.
    bonds string[]? The reference ids of the Bonds in this Group.
    attachmentPoints AttachmentPoint[]? The AttachmentPoints of this group.

    AttachmentPoint

    AttachmentPoint descriptor object. Describes a site in this Group on which it can bond with other substances. It has an order which can have conventional meaning, such as in case of amino acids the amid bonds are formed from one amino acid's 2nd AttachmentPoint to another's 1st AttachmentPoint.

    Fields

    field type description
    atom string? The reference id of the Atom that serves as the site of chemical bonding with other substances.
    order number? The unique order of the AttachmentPoint. The AttachmentPoint orders in a Group should be a sequential set of positive integers starting from 1.

    Paragraph

    Paragraphs are newline separated portions of a text. Paragraph consists of an array of sections, which are independently formattable portions of text.

    Fields

    field type description
    sections Section[] The content of the Paragraph. An array of formatted Sections, which are continuous portions of text separated only for formatting, the content should be joined without any additional delimiter.

    Section

    Sections of a Paragraph separated only for formatting purposes. Each Section has one formatting setup, there are no embedded sections, hence no style inheritance. Any formatting option not specified in the section falls back to the default value of the Textbox

    Fields

    field type description
    text string Plain textual content of the Section without formatting.
    font Font? The font properties of the Section. If not specified, then the visualizer/renderer chooses the font.
    formula boolean? Indicates if this Section contains a chemical formula or not. Purely for marker purposes, to mark the intentions of the editor.
    color string? The color of the Section's text, specified as a HTML color code.
    backgroundColor string? The background-color of the Section's text, specified as a HTML color code.

    Font

    Font descriptor object.

    Fields

    field type description
    family string? The actual font family, such as 'Arial' or 'Times New Roman', or a logical family such as 'Serif'.
    size number? The size of the Font in points.
    style FontStyle[]? The Font's style.

    Stroke

    An object to specify properties for lines, borders, etc.

    Fields

    field type description
    style StrokeStyle? The style of this Stroke, modifies the line style of this Stroke.
    color string? The color of this Stroke, specified as a HTML color code.
    thickness number? The thickness of this Stroke in points. For best results, use positive integer values.

    Arrow

    A graphical Arrow, which is a directed line from one Location to another.

    Fields

    field type description
    id string Reference id of this object. Should be unique for the entire document.
    shape string Has to be ARROW
    arrowType ArrowType? Type of this Arrow: SINGLE(----->), DOUBLE(=====>), BLOCK(==== >), CROSSED(–x–>), CURVED(a curved SINGLE arrow), DASHED(- - ->), EQUILIBRIUM(´=====,), HASHED(--//–>) or RESONANCE(<----->)
    head { [k: string]: any; } Properties of the Head of this Arrow. The Head is at the Location this Arrow is directed to.
    tail { [k: string]: any; } Properties of the Tail of this Arrow. The Tail is at the Location this Arrow is directed from.
    line Stroke? The line of this Arrow. In most cases it is the arrow itself, but for example in case of BLOCK arrow, it is the outline.
    arc { [k: string]: any; }? The arc of this arrow. Should be specified only for CURVED arrows. This property describes an SVG arc. The SVG path's d attribute that describes this arc is: M headLocationX headLocationY A rx ry xAxisRotation largeArcFlag sweepFlag tailLocationX tailLocationY where tail and head location values are the corresponding properties of the arrow. For further details please visit https://www.w3.org/TR/SVG/paths.html#PathDataEllipticalArcCommands
    properties { [k: string]: any; }? Key-value pairs of additional custom properties.

    Bracket

    A graphical Bracket, which is a pair of brackets enclosing an area.

    Fields

    field type description
    id string Reference id of this object. Should be unique for the entire document.
    shape string Has to be BRACKET
    points Location[] The corner points of the bracketed area in the order top-left, top-right, bottom-right and bottom-left.
    line Stroke? The line of this Bracket
    type BracketType? The type of this Bracket. If not specified, it is considered SQUARE([]). Also can be ROUND(()), BRACES({}), or CHEVRONS(<>)
    properties { [k: string]: any; }? Key-value pairs of additional custom properties.

    Ellipse

    A graphical Ellipse.

    Fields

    field type description
    id string Reference id of this object. Should be unique for the entire document.
    shape string Has to be ELLIPSE
    points Location[] The corners of the bounding rectangle in the order top-left, top-right, bottom-right and bottom-left. The corners has to be defined in the atomic space to keep the relative position to the chemical content. The defined rectangle scaled up into the graphical space gives the area the shape should be rendered into.
    background string? The background color of this Ellipse, specified as a HTML color code. Not specified means transparent.
    border Stroke? The border of this Ellipse. An object of border properties. Right now only the color and thickness can be specified.
    properties { [k: string]: any; }? Key-value pairs of additional custom properties.

    Image

    An Image that can be remote or embedded into this document as a base64 encoded image.

    Fields

    field type description
    id string Reference id of this object. Should be unique for the entire document.
    shape string Has to be IMAGE
    points Location[] The corners of the bounding rectangle in the order top-left, top-right, bottom-right and bottom-left. The corners has to be defined in the atomic space to keep the relative position to the chemical content. The defined rectangle scaled up into the graphical space gives the area the image should be rendered into.
    url string? The URL of this Image
    placeholder string? Base64 encoded image to render if the remote image is not available, or while it is loading
    image string? Base64 encoded image
    properties { [k: string]: any; }? Key-value pairs of additional custom properties.

    Line

    A graphical undirected, straight Line.

    Fields

    field type description
    id string Reference id of this object. Should be unique for the entire document.
    shape string Has to be LINE
    points Location[] The endpoints of this Line
    line Stroke? The graphical properties of this Line.
    properties { [k: string]: any; }? Key-value pairs of additional custom properties.

    Path

    Work in progress

    Fields

    field type description
    id string Reference id of this object. Should be unique for the entire document.
    shape string Has to be PATH
    points Location[] The corners of the bounding rectangle in the order top-left, top-right, bottom-right and bottom-left. The corners has to be defined in the atomic space to keep the relative position to the chemical content. The defined rectangle scaled up into the graphical space gives the area the shape should be rendered into.
    svgPath string This Path described as an SVG path. See the 'd' property of SVG path at https://www.w3.org/TR/SVG/paths.html
    background string? The background color of this Path, specified as a HTML color code. Not specified means transparent. Only applicable for closed paths.
    line Stroke? Work in progress
    properties { [k: string]: any; }? Key-value pairs of additional custom properties.

    Rectangle

    A graphical Rectangle.

    Fields

    field type description
    id string Reference id of this object. Should be unique for the entire document.
    shape string Has to be RECTANGLE
    points Location[] The corners of the bounding rectangle in the order top-left, top-right, bottom-right and bottom-left. The corners has to be defined in the atomic space to keep the relative position to the chemical content. The defined rectangle scaled up into the graphical space gives the area the shape should be rendered into.
    background string? The background color of this Rectangle, specified as a HTML color code. Not specified means transparent.
    border Stroke? The border of this Rectangle. An object of border properties. Right now only the color can be specified.
    properties { [k: string]: any; }? Key-value pairs of additional custom properties.

    TextBox

    A Textbox, which is a formatted textual content that should be rendered into a rectangular area.

    Fields

    field type description
    id string Reference id of this object. Should be unique for the entire document.
    shape string Has to be TEXTBOX
    points Location[] The corners of the bounding rectangle in the order top-left, top-right, bottom-right and bottom-left. The corners has to be defined in the atomic space to keep the relative position to the chemical content. The defined rectangle scaled up into the graphical space gives the area the textbox should be rendered into.
    font Font? The default font for the Textbox. If a section of the Textbox does not specify some, or any of the font properties, this should be used for missing values. If this value is not set either, it is up to the renderer what font is used.
    color string? The default color for the Textbox, specified as a HTML color code. If a section of the Textbox does not specify a color, this should be used.
    paragraphs Paragraph[] The content of the Textbox. An array of Paragraphs, which are newline separated portions of the whole textual content.
    autoResize boolean? Marks whether this Textbox should change its size on change of the content. If not set, it is considered false.
    background string? The background color of the Textbox, specified as a HTML color code. Not specified means transparent.
    align TextBoxAlign? The horizontal alignment of the content. If not specified, it is considered LEFT
    verticalAlign TextBoxVerticalAlign? The vertical alignment of the content. If not specified, it is considered TOP.
    border Stroke? The border of this Textbox. An object of border properties. Right now only the color can be specified.
    properties { [k: string]: any; }? Key-value pairs of additional custom properties.

    PlusSign

    A graphical PlusSign

    Fields

    field type description
    id string Reference id of this object. Should be unique for the entire document.
    shape string Has to be PLUSSIGN
    points Location[] The corners of the bounding rectangle in the order top-left, top-right, bottom-right and bottom-left.
    line Stroke? The line of the a PlusSign
    properties { [k: string]: any; }? Key-value pairs of additional custom properties.

    DisplayProperties

    Describes the rendering hints for the content of this document.

    Fields

    field type description
    saveProperties boolean? Marks whether these properties should be saved or not after editing the document.
    scale number? The scale for rendering the elements in this document. The coordinates in this format are in Angstroms, so this property is basically a multiplier that transforms coordinates from Angstroms to pixels.
    background string? The color of the background in HTML color code.
    atomDisplayProperties AtomDisplayProperties? Rendering hints for Atoms.
    bondDisplayProperties BondDisplayProperties? Rendering hints for Bonds.
    moleculeDisplayProperties MoleculeDisplayProperties? Rendering hints for Molecules.
    reactionDisplayProperties ReactionDisplayProperties? Rendering hints for Reactions.
    groupDisplayProperties GroupDisplayProperties? Rendering hints for Groups.
    z-index string[]? Stores ordering of objects on the z-axis.

    AtomDisplayProperties

    Describes the rendering hints for Atoms. If an Atom has rendering hints in the customized section, then it should be used, otherwise the rendering hints in this section, and if there are no rendering hints in this section, it is the renderer's choice how to render the Atom.

    Fields

    field type description
    labelFont Font? The default font for atom labels.
    color string? The default color for atom labels in HTML color code.
    mapColor string? The default color for atom map labels in HTML color code.
    chargeColor string? The default color for charge labels in HTML color code.
    stereoColor string? The default color for stereo labels in HTML color code.
    atomNumberingType AtomDisplayPropertiesAtomNumberingType? The numbering algorithm for atoms.
    atomPropertiesVisible boolean? Sets whether atom properties (extra properties added in a key-value pair) are visible or not.
    atomMappingVisible boolean? Sets whether atom mapping is visible or not.
    lonePairsVisible boolean? Sets whether the lone pairs should be rendered or not.
    lonePairsAsLine boolean? Sets whether the lone pairs should be rendered as lines (true) or as dots (false). If this property is not specified, the default is the latter.
    calculateLonePairs boolean? Sets whether the lone pairs should be calculated for each atom (true) or use the precalculated values only (false).
    carbonVisibility AtomDisplayPropertiesCarbonVisibility? sets the visibility property for carbon atoms.
    charge AtomDisplayPropertiesCharge? sets the display property for charges on atoms.
    peptide AtomDisplayPropertiesPeptide? sets the display property for peptides.
    customized AtomDisplayProperty[]? List of specific display properties for atoms that have unique rendering specifications, like font or color, etc.

    AtomDisplayProperty

    Descriptor of display properties for customized atoms

    Fields

    field type description
    id string The internal reference id of the customized atom. The same id as in the atoms array of a molecule.
    labelFont Font? The font for the atom label.
    color string? The color for the atom label of a given atom in HTML color code.
    mapColor string? The color for atom map label of a given atom in HTML color code.
    chargeColor string? The color for charge label of a given atom in HTML color code.
    stereoColor string? The color for stereo label of a given atom in HTML color code.
    formattedLabel Section[]? The atom label with formatting. An array of formatted sections, which are continuous portions of text separated only for formatting, the content should be joined without any delimiter.
    atomMappingLocation Location? Display location information for atom mapping label, relative to atom.
    stereoLabelLocation Location? Display location information for stereo label, relative to atom.
    chargeLocation Location? Display location information for charge label, relative to atom.

    BondDisplayProperties

    Describes the rendering hints for Bonds. If a Bond has rendering hints in the customized section, then it should be used, otherwise the rendering hints in this section, and if there are no rendering hints in this section, it is the renderer's choice how to render the Bond.

    Fields

    field type description
    bondLength number? The default rendered bond length in points.
    aminoAcidBondColoringEnabled boolean? If true, then the amino acid bridge (usually S-S bridges) bonds are colored.
    bondLengthVisible boolean? If true, then the bond length values (in Angstrom) are displayed next to the bonds.
    coordinateBondStyle string? Sets the style of coordinate bonds.
    coordinateBondStyleAtMulticenter string? Sets the style of coordinate bonds if the bond points from or to a multicenter (also known as position variation bond).
    boldBondWidth number? Sets the width of bold bonds in points.
    bondSpacing number? Sets the gap between double (aromatic and some query bonds as well) and triple bonds in points.
    bondHashSpacing number? Sets the spacing between the hashed lines for single down wedged bonds and hashed bonds in points.
    wireThickness number? Bond thickness in wireframe mode in points.
    stickThickness number? The stick diameter for ball and stick mode in points.
    downWedge BondDisplayPropertiesDownWedge? Wedge bond display convention. Down wedge points downward in MDL's convention, upward (at the chiral center) in Daylight's.
    anyBond string? The bond-style to draw any-bonds with.
    customized BondDisplayProperty[]? List of bond specific display properties for bonds that have unique rendering specifications, such as color.

    BondDisplayProperty

    Descriptor of display properties for customized bonds

    Fields

    field type description
    id string The internal reference id of the customized bond. The same id as in the bonds array of a molecule.
    bondStyle string? The style for the bond.
    color string? The color for the bond in HTML color code.
    doubleBondAlignment BondDisplayPropertyDoubleBondAlignment? Double bond alignment between two atoms, defined from the viewpoint of the start atom towards the end atom.
    stereoLabelLocation Location? Display location information for stereo label, relative to the midpoint of bond.

    MoleculeDisplayProperties

    Describes the rendering hints for Molecules.

    Fields

    field type description
    ezVisible boolean? Whether to show E/Z labels.
    mpVisible boolean? Whether to show M/P labels.
    valenceErrorVisible boolean? Whether to show valence errors.
    absoluteLabelVisible boolean? Whether to show absolute stereo configuration labels.
    colorScheme MoleculeDisplayPropertiesColorScheme? Color scheme. (MONO=monochrome, CPK=Corey-Pauling-Kultun, SHAPELY=shapely (residue types), GROUP=residue sequence numbers).

    ReactionDisplayProperties

    Describes the rendering hints for Reactions.

    Fields

    field type description
    automaticReactionDetection boolean? Marks whether the content of this document should be automatically converted to a reaction. This conversion will only take place if the content was not a reaction and there is exactly one graphical arrow in the document.
    sketchArrowHeadLength number? Length of the head of the (graphical) reaction arrow in points.
    sketchArrowHeadWidth number? Width of the head of the (graphical) reaction arrow in points.
    sketchArrowTailLength number? Length of the tail of the (graphical) reaction arrow in points.
    sketchArrowTailWidth number? Width of the tail of the (graphical) reaction arrow in points.
    customized ReactionDisplayProperty[]? List of reaction specific display properties for reactions that have unique rendering specifications, such as a custom arrow.

    ReactionDisplayProperty

    Descriptor of display properties for customized reactions

    Fields

    field type description
    id string The internal reference id of the customized reaction. The same id as in the reactions array of the document.
    arrow Arrow? The custom arrow for the reaction. If not present, the reaction arrow should be generated by the renderer based on the reaction's direction property.

    GroupDisplayProperties

    Describes the rendering hints for Groups.

    Fields

    field type description
    customized GroupDisplayProperty[]? List of group specific display properties for groups that have custom rendering specifications.

    GroupDisplayProperty

    Descriptor of display properties for customized groups

    Fields

    field type description
    id string The internal reference id of the customized group.
    contracted boolean? Marks whether the group is represented in a contracted form or not.
    formattedLabel Section[]? Group label as formatted text. An array of formatted sections, which are continuous portions of text separated only for formatting, the content should be joined without any delimiter.

    Stereo

    The stereochemistry-properties attached to this atom

    Fields

    field type description
    enhanced EnhancedStereo? The stereo representation matching MDL's Enhanced Stereo Representation

    EnhancedStereo

    The stereo representation matching MDL's Enhanced Stereo Representation

    Fields

    field type description
    type EnhancedStereoType The way to connect groups according to this representation. Note, that "AND" and "OR" does not make sense without a group, while "ABSOLUTE" does not make sense with a group.
    group number? Serves as the basis to connect type "AND" or "OR" enhanced stereo-atoms. (A complete enhanced stereochemical representation is made of all the atoms having the same type and group enhanced stereo descriptors)

    BondQuery

    The query features attached to this bond

    Fields

    field type description
    topology string? Queries will match only if this bond is part of a chain or ring (as per the value of this property)

    BondStyle

    The style for the bond

    Values

    Hashed = "HASHED", Dashed = "DASHED", Bold = "BOLD", Wavy = "WAVY", Down = "DOWN", Up = "UP", Up_Or_Down = "UP_OR_DOWN", Default = "DEFAULT", Arrow = "ARROW", Auto = "AUTO", Solid = "SOLID"

    BondTopology

    Queries will match only if this bond is part of a chain or ring (as per the value of this property)

    Values

    In_Ring = "IN_RING", In_Chain = "IN_CHAIN"

    MoleculeNature

    Logical property of the molecule, marking its type from cheminformatical point of view. PLAIN is for regular molecules, NO_STRUCTURE for placeholder molecule for search purposes.

    Values

    Plain = "PLAIN", No_Structure = "NO_STRUCTURE"

    ReactionDirection

    The direction of the reaction. If omitted, the reaction direction is FORWARD

    Values

    Forward = "FORWARD", Backward = "BACKWARD", Equilibrium = "EQUILIBRIUM"

    AtomNature

    Logical property of the Atom, marking its type from cheminformatical point of view. SUPERATOM is for legacy purposes only, do not use.

    Values

    Natural = "NATURAL", Attachment_Point = "ATTACHMENT_POINT", Conventional = "CONVENTIONAL", Pseudo = "PSEUDO", Query = "QUERY", R_Atom = "R_ATOM", Superatom = "SUPERATOM"

    AtomRadical

    Free radical value of the Atom.

    Values

    None = "NONE", Monovalent = "MONOVALENT", Divalent = "DIVALENT", Divalent_Singlet = "DIVALENT_SINGLET", Divalent_Triplet = "DIVALENT_TRIPLET", Trivalent = "TRIVALENT", Trivalent_Doublet = "TRIVALENT_DOUBLET", Trivalent_Quartet = "TRIVALENT_QUARTET"

    BondType

    Type of this Bond. Can be a chemical covalent bond (SINGLE, DOUBLE, TRIPLE, AROMATIC, COORDINATE) or stereochemically enhanced covalent bond (UP, DOWN, UP_OR_DOWN), or a query bond (ANY, CIS_OR_TRANS, SINGLE_OR_AROMATIC, SINGLE_OR_DOUBLE, DOUBLE_OR_AROMATIC, UP_OR_DOWN).

    Values

    Any = "ANY", Aromatic = "AROMATIC", Cis_Or_Trans = "CIS_OR_TRANS", Coordinate = "COORDINATE", Double = "DOUBLE", Double_Or_Aromatic = "DOUBLE_OR_AROMATIC", Down = "DOWN", Single = "SINGLE", Single_Or_Aromatic = "SINGLE_OR_AROMATIC", Single_Or_Double = "SINGLE_OR_DOUBLE", Triple = "TRIPLE", Up = "UP", Up_Or_Down = "UP_OR_DOWN"

    GroupType

    Type of this Group

    Values

    Abbreviation = "ABBREVIATION", Amino_Acid = "AMINO_ACID"

    FontStyle

    Values

    Plain = "PLAIN", Bold = "BOLD", Italic = "ITALIC", Underline = "UNDERLINE", Subscript = "SUBSCRIPT", Superscript = "SUPERSCRIPT"

    StrokeStyle

    The style of this Stroke, modifies the line style of this Stroke.

    Values

    Solid = "SOLID", Dashed = "DASHED"

    ArrowType

    Type of this Arrow: SINGLE(----->), DOUBLE(=====>), BLOCK(====|>), CROSSED(–x–>), CURVED(a curved SINGLE arrow), DASHED(- - ->), EQUILIBRIUM(´=====,), HASHED(--//–>) or RESONANCE(<----->)

    Values

    Single = "SINGLE", Double = "DOUBLE", Block = "BLOCK", Crossed = "CROSSED", Curved = "CURVED", Dashed = "DASHED", Equilibrium = "EQUILIBRIUM", Hashed = "HASHED", Resonance = "RESONANCE"

    BracketType

    The type of this Bracket. If not specified, it is considered SQUARE([]). Also can be ROUND(()), BRACES({}), or CHEVRONS(<>)

    Values

    Square = "SQUARE", Round = "ROUND", Braces = "BRACES", Chevrons = "CHEVRONS"

    TextBoxAlign

    The horizontal alignment of the content. If not specified, it is considered LEFT

    Values

    Center = "CENTER", Left = "LEFT", Right = "RIGHT"

    TextBoxVerticalAlign

    The vertical alignment of the content. If not specified, it is considered TOP.

    Values

    Middle = "MIDDLE", Top = "TOP", Bottom = "BOTTOM"

    AtomDisplayPropertiesAtomNumberingType

    The numbering algorithm for atoms.

    Values

    None = "NONE", Default = "DEFAULT", Iupac = "IUPAC"

    AtomDisplayPropertiesCarbonVisibility

    sets the visibility property for carbon atoms.

    Values

    Always = "ALWAYS", Never = "NEVER", On_Demand = "ON_DEMAND"

    AtomDisplayPropertiesCharge

    sets the display property for charges on atoms.

    Values

    Plain = "PLAIN", Circled = "CIRCLED"

    AtomDisplayPropertiesPeptide

    sets the display property for peptides.

    Values

    One_Letter = "ONE_LETTER", Three_Letter = "THREE_LETTER"

    BondDisplayPropertiesDownWedge

    Wedge bond display convention. Down wedge points downward in MDL's convention, upward (at the chiral center) in Daylight's.

    Values

    Mdl = "MDL", Daylight = "DAYLIGHT"

    BondDisplayPropertyDoubleBondAlignment

    Double bond alignment between two atoms, defined from the viewpoint of the start atom towards the end atom.

    Values

    Left = "LEFT", Right = "RIGHT", Center = "CENTER"

    MoleculeDisplayPropertiesColorScheme

    Color scheme. (MONO=monochrome, CPK=Corey-Pauling-Kultun, SHAPELY=shapely (residue types), GROUP=residue sequence numbers).

    Values

    Mono = "MONO", Cpk = "CPK", Shapely = "SHAPELY", Group = "GROUP"

    EnhancedStereoType

    The way to connect groups according to this representation. Note, that "AND" and "OR" does not make sense without a group, while "ABSOLUTE" does not make sense with a group.

    Values

    And = "AND", Or = "OR", Absolute = "ABSOLUTE"