Canonical SMILES strings uniquely identify a particular molecule. The canonical SMILES representation of any molecule is dependent on the software program's canonicalization algorithm. For this reason, the canonical SMILES string for a molecule in Marvin JS might be different from the canonical SMILES string generated by another application.
Combinatorial SMILES strings identify a discrete structure in a molecule, and can be combined to form canonical SMILES strings.
Although the native Marvin JS XML format provides the most comprehensive description of your chemical structures, it is long, difficult to read, and cannot be manipulated by your question code. With SMILES, your question code can easily combine or change SMILES strings, for example, to reflect a chemical process or to randomize your question.
For example, you could use either Marvin JS XML or SMILES to display an ethanol molecule:
Marvin JS XML | SMILES |
|---|---|
| |
The best way to ensure that your SMILES string works correctly in Marvin JS is to use Marvin JS to generate SMILES.
Create your drawing using the Marvin JS Key Generation tool.
Click Marvin under Page Tools.
For Marvin Type, select the drawing mode to use.
Draw the chemical structure or reaction.
In the Marvin JS Key Generation tool, export the drawing to the ChemAxon SMILES format.
Click
.
For Format, select ChemAxon SMILES.
Select and copy the SMILES string that is displayed.
You don't need to download the SMILES string.
Paste the SMILES string that you copied into your question.
You can use the SMILES string in your questions instead of Marvin JS XML to display the chemical structure drawing in a question, to specify a Marvin JS answer key, or to define a Marvin JS template.
Example Displaying Chemical Structures Using SMILES The following table summarizes an actual question. QID 1534322 Name Template2 5.MARVIN.06. Mode Multiple-Choice Question <eqn> # ---------------------------------------------------- # Select 1 of 8 molecules to identify # ---------------------------------------------------- @dat = (["ethanol", "CCO"], ["isopropanol", "CC(O)C"], ["methanol", "CO"], ["n-propanol", "CCCO"], ["n-butanol", "CCCCO"], ["isobutanol", "CC(C)CO"], ["propene", "C=CC"], ["ethylene", "C=C"]); @choices = pick(5, 0..$#dat); '' </eqn> Identify the molecule. <table><tr><td width="250"><_></td> <td><MARVIN type='condensed'><EQN $dat[$choices[0]][1]></MARVIN></td></tr></table> Answer <EQN $dat[$choices[0]][0]> <EQN $dat[$choices[1]][0]> <EQN $dat[$choices[2]][0]> <EQN $dat[$choices[3]][0]> <EQN $dat[$choices[4]][0]> Display to Students
Example Marvin JS Question Using SMILES Answer Key The following table summarizes an actual question. QID 1534328 Name Template2 5.MARVIN.07. Mode Fill-in-the-Blank Question <eqn> # ---------------------------------------------------- # Set $mykey to one of 2730 possible tripeptides # ---------------------------------------------------- @dat = (["Ala", "NC(C)C(=O)"], ["Arg", "NC(CCCNC(N)=N)C(=O)"], ["Asn", "NC(CC(N)=O)C(=O)"], ["Asp", "NC(CC(O)=O)C(=O)"], ["Cys", "NC(CS)C(=O)"], ["Gln", "NC(CCC(N)=O)C(=O)"], ["Glu", "NC(CCC(O)=O)C(=O)"], ["Gly", "NCC(=O)"], ["Ile", "NC(C(C)CC)C(=O)"], ["Leu", "NC(CC(C)C)C(=O)"], ["Lys", "NC(CCCCN)C(=O)"], ["Met", "NC(CCSC)C(=O)"], ["Ser", "NC(CO)C(=O)"], ["Thr", "NC(C(C)O)C(=O)"], ["Val", "NC(C(C)C)C(=O)"]); ($a, $b, $c) = pick(3, 0..$#dat); $label = $dat[$a][0]. '-'. $dat[$b][0]. '-'. $dat[$c][0]; $mykey = $dat[$a][1]. $dat[$b][1]. $dat[$c][1]. 'O'; '' </eqn> Draw the structure of the tripeptide <eqn $label>. <br> <_> Answer <EQN $MARVIN='condensed'; $mykey> Display to Students 
- Create Multiple-Choice Questions
- Create True/False Questions
- Create Yes/No Questions
- Create Multiple-Select Questions
- Create Fill-in-the-Blank Questions
- Create File Upload Questions
- Create Free Response Questions
- Create Image Map Questions
- Create Multi-Part Questions That Have One Question Mode
- Create Multi-Mode Questions
- Create Polling Questions
- Add Expandable Sections to Multi-Part Questions
- Create Scored Tutorial Questions
- Create Popup Tutorial Questions
- Create Integer or Decimal Number Questions
- Create Answer-Dependent Questions
- Create mathPad Questions Using Symbolic Mode
- Create mathPad Questions Using Algebraic Mode with Mathematica
- Create a NumberLine Question
- Create Graphing Questions
- Create chemPad Questions for Formulas
- Create List and Rank-Order chemPad Questions
- Create chemPad Questions for Reactions
- Create chemPad Questions for Kinetic or Equilibrium Expressions
- Create chemPad Questions for Electrochemical Cell Notation
- Create chemPad Questions for Electron Configuration
- Create Marvin JS Questions That Require Students to Create a New Drawing
- Create Marvin JS Questions That Display an Initial Drawing
- Randomize Question Values
- Display Chemical Structures in Questions with Marvin JS
- SMILES notation: www.daylight.com/dayhtml/doc/theory/theory.smiles.html
- Marvin JS Drawing Modes
- Draw Chemical Structures in Marvin JS