CDD Vault enables you to register siRNAs with their complete chemical structure to create an exact record of the molecule. This provides a detailed visual representation capable of accurately displaying complex components, such as dumbbells, conjugates, hairpins, and strand breaks.
Step 1: formatting the siRNA sequences
In order to compose siRNA, first you will need to prepare your sequences in a tabular format (e.g. .csv or .xlsx).
- The minimum requirements needed to compose an siRNA are one column for each the sense and antisense strands.
- Note: The direction of each strand should be 5`-3`
Metadata annotation
Hydrogen bond (base pairing) annotation
To register an siRNA, you must explicitly define the complementary base pairing between the Sense and Antisense strands using the following syntax: Sequence{@Start-End:ID}
- @: Indicates the Hydrogen Bond (base pairing) annotation.
-
Start-End: Specifies the range of monomers involved in pairing (Range Annotation).
- Note: The Antisense numbering from the example above is inverted (6-2) to align with the 5'-3' orientation of the Sense strand.
-
:ID: A numeric identifier for a continuous stretch of paired bases- a pairing block.
- The matching ID (:1) tells the software these two specific stretches are bound to one another
| Name | Sense (5`-3`) | Antisense (5`-3`) |
| S03 | GAUUACA{@2-6:1} | UGUAAUC{@6-2:1} |
Note that the strands are ordered in opposite directions. For the sense strand, sequence IDs start at 5' on the left being sequence ID #1, increasing to the right toward the 3' end. For the antisense strand, sequences start at 5' on the right being sequence ID #1, increasing in number as it goes to the left toward the 3' end. In the above example there are 5 paired bases: 2:6, 3:5, 4:4, 5:3 and 6:2. The shorthand notation for indicating these pairs is {2-6} on the sense strand, and {6-2} on the antisense strand.
Broken phosphate backbone annotation
If you would like to indicate broken phosphodiester bond (nicked strand), that can be done by inserting a period (.) between the desired monomers.
- In the following example, there is a break in the phosphate backbone between:
- monomers 4 and 5 on the sense strand
- Monomers 1 and 2 and monomers 6 and 7 on the antisense strand
- Note: The presence of a break does not change the monomer indexing used for hydrogen bond annotations. The Sense {@1-7:1} and Antisense {@7-1:1} annotations ensure the software treats the entire sequence as a single continuous pairing block.
| Name | Sense (5`-3`) | Antisense (5`-3`) |
| S04 | GAUU.ACA{@1-7:1} | U.GUAAU.C{@7-1:1} |
Internal Hairpin annotation
To define an internal hairpin (where specific bases do not participate in base pairing but form a loop), use multiple Pairing Block IDs to jump over the unpaired monomers.
In this example, the Sense strand is a continuous pairing partner, but the Antisense strand contains a 2-base hairpin (bases 5 and 6) that is excluded from the duplex. In order to annotate this:
- Paired Block 1 (ID:1): Bases 1–4 of the Sense strand form hydrogen bonds with bases 10–7 of the Antisense strand.
- Paired Block 2 (ID:2): Bases 5–8 of the Sense strand form hydrogen bonds with bases 4–1 of the Antisense strand.
- Notes
- The Hairpin Loop: Antisense monomers 5 and 6 (the "GG" sequence in the diagram) are excluded from both pairing blocks. Because they lack a pairing block assignment, they are rendered as an internal hairpin loop.
- Continuous Sense Strand: Although the Sense strand uses two pairing block identifiers (:1 and :2), it remains a single continuous sequence because there are no gaps in base pairing for monomers on that strand.
| Name | Sense (5`-3`) | Antisense (5`-3`) |
| S06 | GAUUACAU{@1-4:1}{@5-8:2} | AUGUGGAAUC{@10-7:1}{@4-1:2} |
Terminal hairpin annotation (shRNA and dumbbell)
To indicate a phosphodiester bond between the ends of two different strands, use the Loop Operator {&:ID} in addition to the annotations described above. Just as a Pairing Block ID links bases via hydrogen bonds, the Terminal Loop ID identifies which two ends are bound.
In the following example
- Two 10-monomer strands are paired in the middle, while their ends are linked to each other to form loops at both sides.
- Central Pairing: Bases 4–7 of the Sense strand are base-paired with bases 7–4 of the Antisense strand (Pairing Block 1).
- Terminal Loop 1 (ID:1): The {&:1} at the 5' end of the Sense strand and the {&:1} at the 3' end of the Antisense strand indicate a phosphodiester bond between Sense Monomer 1 (A) and Antisense Monomer 10 (G).
- Terminal Loop 2 (ID:2): The {&:2} at the 3' end of the Sense strand and the {&:2} at the 5' end of the Antisense strand indicate a phosphodiester bond between Sense Monomer 10 (A) and Antisense Monomer 1 (U).
| Name | Sense | Antisense |
| S11 | {&:1}AAUGAUUACA{@4-7:1}{&:2} | {&:2}UGUAAUCAGG{@7-4:1}{&:1} |
Incorporating custom monomers or conjugates in your siRNAs
If you have custom monomers including internal or terminal conjugates, you should first register those in CDD Vault as part of your monomer library. Once your monomers have been registered, you can include them in your siRNA strands as in the example below:
- Each custom monomer or conjugate is included in square brackets.
| Name | Sense (5`-3`) | Antisense (5`-3`) |
| Inclisiran | [CR2OMePS][UR2OMePS][AR2OMe][GR2OMe][AR2OMe][CR2OMe][CR2F][UR2OMe][GR2F][UR2OMe]T[UR2OMe][UR2OMe][GR2OMe][CR2OMe][UR2OMe][UR2OMe][UR2OMe][UR2OMe][GR2OMe][UR2OMe][GaINAc]{@1-21:1} | [AR2OMePS][CR2FPS][AR2OMePS][AR2F][AR2F][AR2F][GR2OMe][CR2F][AR2OMe][AR2F][AR2OMe][AR2OMe][CR2OMe][AR2F][GR2OMe][GR2F][UR2OMe][CR2F][CR2OMe][AR2OMe][GR2OMePS][AR2OMePS][AR2OMe]{@21-1:1} |
Step 2: importing the siRNA to CDD Vault
Once a data file has been created, the next step is to access the Import Data panel in your Vault and select your file. For a detailed guide on the import process, please refer to Importing the first compound library.
Proceed by selecting the “Compose macromolecules from columns” option from the drop-down menu, and click on “Update”. In the following step, select the “siRNA” option from the radio button.
In this step, you will map the columns from your import file to the appropriate chains of the siRNA.
- There is an option to cleave 5` terminal phosphates from each stand.
- Under the Backbone radio button, the DNA/RNA selection will set the sugar to deoxyribose or ribose for any natural bases that are contained in your sequence.
- For example, if I had the following sequence [UR2OMe]T[UR2OMe] and selected Chain = Sense and Backbone = DNA
- We would use the custom monomer in your vault corresponding to [UR2OMe] which can have any backbone that you registered it with.
- For T, we would use deoxyribose as the sugar.
- For example, if I had the following sequence [UR2OMe]T[UR2OMe] and selected Chain = Sense and Backbone = DNA
- If your sequences contain custom monomers (denoted by square brackets), we will automatically look those up in your vault custom monomer library.
Please note: at this step you do not need to map the Name column.
Once you have mapped all fields to the corresponding column, click on “Process File”.
Once the file is processed, a new column is added to the table in the Import flow, with the header “Molfile”. This should be automatically mapped to the Structure field of CDD Vault as in the screenshot below:
You can now map additional fields, such as “Name” to Synonym, or other columns that you may have added in your datasheet. Once all fields are mapped, you can commit the resulting entity to your vault and proceed to use it as your other molecules within the Vault.
Please note: Although the Sense and Antisense sequences are already embedded in the Molfile column, you can optionally import them into user-defined fields at the Molecule level to enable direct sequence searching within CDD Vault.
Tips and tricks
Flexibility in the Hydrogen bond (base pairing) annotation
For the example S03 shown above, we support 2 additional methods to specify the hydrogen bonds for base pairing.
- Anchor Point Annotation: You can specify only the starting monomer of the Antisense pairing block. The software will then pair it with the corresponding first base defined in the Sense strand’s Pairing Block.
- The Anchor: On the Antisense strand, only position 6 is specified for Pairing Block 1.
- Automatic Alignment: CDD Vault recognizes position 6 as the "anchor" that pairs with the first base of the Sense range (position 2).
| Name | Sense (5`-3`) | Antisense (5`-3`) |
| S03 | GAUUACA{@2-6:1} | UGUAAUC{@6:1} |
- Individual Base-Pair Annotation: You can define base pairs individually by assigning a unique Pairing Block ID to every set of complementary monomers.
- For the first base-par, Sense strand position 2 pairs with antisense strand base 7 to form pairing block 1.
| Name | Sense (5`-3`) | Antisense (5`-3`) |
| S03 | GAUUACA{@2:1}{@3:2}{@4:3}{@5:4}{@6:5} | UGUAAUC{@6:1}{@5:2}{@4:3}{@3:4}{@2:5} |