Markush Structures in Marvin JS


    A query with an R-group represents substitution variation on the same root structure. The molecule containing an R-group is called a scaffold. An R-group query can involve several derivatives that differ in one or more substituents (fragments).

    R-group Label

    You can add R-groups to your root structure in the following ways; by the [R-group] tool or through a Keyboard shortcut. Change the number by clicking repeatedly with the Smart R-group tool; change the label and add other properties in the Atom properties dialog.

    R-group Definition

    To create the definition for an R-group, first, draw the substituents from which the R-group should stand for, then enframe them with the Smart R-group tool or after selection use the R+Space keyboard shortcut. You can manipulate the R-group definitions by the Smart R-group tool or by the context menu.

    Attachment Points

    You can add attachment points to the fragments in an R-group definition by using the R-group Attachment button or from the context menu. The attachment points on every separate fragment are automatically numbered beginning with 1. The bond type of the R-group attachment points can be changed using either the R-group attachment point tool or any of the bond tools.

    {info} R-group definition import and export are supported only in ChemAxon Marvin Document (MRV) format in Marvin JS; besides, you can choose other formats if the relevant web service is available.


    Adding R-logic to an R-group query is possible via R-logic Dialog, which is available from the Empty space, the Atom, and also the R-labelcontext menus if there is at least one R-group definition on the canvas. You can do any modifications in the R-logic Dialog.

    Atom Lists and NOT Lists

    An atom list query atom indicates any atom that is part of the list; similarly, a NOT list query atom can represent any atom that is not part of the list. Atom Lists and NOT Lists can be defined using the Periodic table dialog. After creation, you can modify the elements in Atom properties dialog, otherwise, you can handle them as other atoms (move, delete, overwrite, and so on).

    Homology Groups

    Built-in homology groups of Marvin JS represent a series of chemical compounds with the same specific structural properties. For a list of the available homology groups, see Atom properties dialog. For more information about the properties or search conditions of the homology groups, see Homology Groups and Markush Structures.

    Homology groups can be created via Atom properties dialog, after a right-click on an atom. At the top of the dialog, change Element to Homology Groups then select the appropriate group from the list and choose either its full name or its alias at the Display option. On the canvas, you can manipulate the homology groups as other atoms (move, delete, overwrite, and so on).

    Position Variation Bond

    The position variation bond represents a variable connection pointing from a group of atoms to an atom. Find these kinds of bonds at the Bond tools on the tools toolbar. After creation, several properties of this bond are changeable, such as bond type, topology, location on the canvas, and so on.