Repository 'molecule_datatypes'
hg clone https://toolshed.g2.bx.psu.edu/repos/iuc/molecule_datatypes

Changeset 0:85eca06eefc6 (2013-08-15)
Commit message:
Uploaded
added:
cml_to_inchi_converter.xml
cml_to_mol2_converter.xml
cml_to_sdf_converter.xml
cml_to_smi_converter.xml
datatypes_conf.xml
inchi_to_cml_converter.xml
inchi_to_mol2_converter.xml
inchi_to_mol_converter.xml
inchi_to_sdf_converter.xml
inchi_to_smi_converter.xml
mol2_to_cml_converter.xml
mol2_to_inchi_converter.xml
mol2_to_mol_converter.xml
mol2_to_sdf_converter.xml
mol2_to_smi_converter.xml
mol_to_cml_converter.xml
mol_to_inchi_converter.xml
mol_to_mol2_converter.xml
mol_to_smi_converter.xml
molecules.py
sdf_to_cml_converter.xml
sdf_to_inchi_converter.xml
sdf_to_mol2_converter.xml
sdf_to_smi_converter.xml
smi_to_cml_converter.xml
smi_to_inchi_converter.xml
smi_to_mol2_converter.xml
smi_to_mol_converter.xml
smi_to_sdf_converter.xml
smi_to_smi_converter.xml
test-data/2zbz.pdb
test-data/50_chemfp_fingerprints_FPS1.fps
test-data/drugbank_drugs.inchi
test-data/drugbank_drugs.sdf
test-data/drugbank_drugs.smi
tool_dependencies.xml
b
diff -r 000000000000 -r 85eca06eefc6 cml_to_inchi_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/cml_to_inchi_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,16 @@
+<tool id="CONVERTER_cml_to_inchi" name="CML to InChI" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -icml "${input}" -oinchi -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="cml" label="Molecules in CML-format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="inchi"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 cml_to_mol2_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/cml_to_mol2_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,16 @@
+<tool id="CONVERTER_cml_to_mol2" name="CML to mol2" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -icml "${input}" -omol2 -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="cml" label="Molecules in CML-format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="mol2"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 cml_to_sdf_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/cml_to_sdf_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,16 @@
+<tool id="CONVERTER_cml_to_sdf" name="CML to SDF" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -icml "${input}" -osdf "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="cml" label="Molecules in CML-format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="sdf"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 cml_to_smi_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/cml_to_smi_converter.xml Thu Aug 15 03:19:26 2013 -0400
[
@@ -0,0 +1,42 @@
+<tool id="CONVERTER_cml_to_smiles" name="CML to SMILES" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >
+        obabel -icml "${input}"
+        #if $can:
+            -ocan
+        #else:
+            -osmi 
+        #end if
+            -O "${output}" -e 
+        $remove_h
+        #if $iso_chi or $can or $exp_h:
+            -x$iso_chi$exp_h$can
+        #end if
+        #if $dative_bonds:
+            -b
+        #end if
+        #if int($ph) >= 0:
+            -p $ph
+        #end if
+
+        2>&#38;1
+    </command>
+    <inputs>
+        <param name="input" type="data" format="cml" label="Molecules in CML-format"/>
+        <param name="iso_chi" type="boolean" label="Do not include isotopic or chiral markings (-xi)" truevalue="i" falsevalue="" checked="false" />
+        <param name="can" type="boolean" label="Output in canonical form (-xc)" truevalue="c" falsevalue="" checked="false" />
+        <param name="exp_h" type="boolean" label="Output explicit hydrogens as such (-xh)" truevalue="h" falsevalue="" checked="false" />
+        <param name="remove_h" type="boolean" label="Delete hydrogen atoms (-d)" truevalue="-d" falsevalue="" />
+        <param name="ph" size="3" type="float" value="-1" label="Add hydrogens appropriate for pH (-p)" help="-1 means deactivated"/>
+        <param name="dative_bonds" type="boolean" label="Convert dative bonds (e.g. [N+]([O-])=O to N(=O)=O) (-b)" truevalue="-b" falsevalue="" />
+    </inputs>
+    <outputs>
+        <data name="output" format="smi"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 datatypes_conf.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/datatypes_conf.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,63 @@
+<?xml version="1.0"?>
+  <datatypes>
+   <datatype_files>
+     <datatype_file name="molecules.py"/>
+   </datatype_files>
+   <registration>
+        <!--Cheminformatics Datatypes -->
+        <datatype extension="smi" type="galaxy.datatypes.molecules:SMILES" display_in_upload="True">
+            <!-- The ordering is important. The first one is considered as default converter in the build-in conversion function -> (as sdf)-->
+            <converter file="smi_to_sdf_converter.xml" target_datatype="sdf"/>
+            <converter file="smi_to_inchi_converter.xml" target_datatype="inchi"/>
+            <converter file="smi_to_cml_converter.xml" target_datatype="cml"/>
+            <converter file="smi_to_mol_converter.xml" target_datatype="mol"/>
+            <converter file="smi_to_mol2_converter.xml" target_datatype="mol2"/>
+            <converter file="smi_to_smi_converter.xml" target_datatype="smi"/>
+        </datatype>
+        <datatype extension="sdf" type="galaxy.datatypes.molecules:SDF" display_in_upload="True">
+            <converter file="sdf_to_smi_converter.xml" target_datatype="smi"/>
+            <converter file="sdf_to_inchi_converter.xml" target_datatype="inchi"/>
+            <converter file="sdf_to_mol2_converter.xml" target_datatype="mol2"/>
+            <converter file="sdf_to_cml_converter.xml" target_datatype="cml"/>
+        </datatype>
+        <datatype extension="inchi" type="galaxy.datatypes.molecules:InChI" display_in_upload="True">
+            <converter file="inchi_to_smi_converter.xml" target_datatype="smi"/>
+            <converter file="inchi_to_sdf_converter.xml" target_datatype="sdf"/>
+            <converter file="inchi_to_mol_converter.xml" target_datatype="mol"/>
+            <converter file="inchi_to_mol2_converter.xml" target_datatype="mol2"/>
+            <converter file="inchi_to_cml_converter.xml" target_datatype="cml"/>
+        </datatype>
+        <datatype extension="mol" type="galaxy.datatypes.molecules:MOL" display_in_upload="True">
+            <converter file="mol_to_smi_converter.xml" target_datatype="smi"/>
+            <converter file="mol_to_inchi_converter.xml" target_datatype="inchi"/>
+            <converter file="mol_to_mol2_converter.xml" target_datatype="mol2"/>
+            <converter file="mol_to_cml_converter.xml" target_datatype="cml"/>
+        </datatype>
+        <datatype extension="mol2" type="galaxy.datatypes.molecules:MOL2" display_in_upload="False">
+            <converter file="mol2_to_smi_converter.xml" target_datatype="smi"/>
+            <converter file="mol2_to_sdf_converter.xml" target_datatype="sdf"/>
+            <converter file="mol2_to_inchi_converter.xml" target_datatype="inchi"/>
+            <converter file="mol2_to_mol_converter.xml" target_datatype="mol"/>
+            <converter file="mol2_to_cml_converter.xml" target_datatype="cml"/>
+        </datatype>
+        <datatype extension="cml" type="galaxy.datatypes.molecules:CML" display_in_upload="True">
+            <converter file="cml_to_smi_converter.xml" target_datatype="smi"/>
+            <converter file="cml_to_inchi_converter.xml" target_datatype="inchi"/>
+            <converter file="cml_to_sdf_converter.xml" target_datatype="sdf"/>
+            <converter file="cml_to_mol2_converter.xml" target_datatype="mol2"/>
+        </datatype>
+        <datatype extension="fps" type="galaxy.datatypes.molecules:FPS" mimetype="text/html" display_in_upload="True" />
+        <datatype extension="obfs" type="galaxy.datatypes.molecules:OBFS" mimetype="text/html" display_in_upload="False" />
+        <datatype extension="phar" type="galaxy.datatypes.molecules:PHAR" display_in_upload="False" />
+        <datatype extension="pdb" type="galaxy.datatypes.molecules:PDB" display_in_upload="True" />
+   </registration>
+   <sniffers>
+        <sniffer type="galaxy.datatypes.molecules:SDF"/>
+        <sniffer type="galaxy.datatypes.molecules:PDB"/>
+        <sniffer type="galaxy.datatypes.molecules:MOL2"/>
+        <sniffer type="galaxy.datatypes.molecules:InChI"/>
+        <sniffer type="galaxy.datatypes.molecules:FPS"/>
+        <sniffer type="galaxy.datatypes.molecules:CML"/>
+        <!-- TODO: see molecules.py <sniffer type="galaxy.datatypes.molecules:SMILES"/>-->
+   </sniffers>
+</datatypes>
b
diff -r 000000000000 -r 85eca06eefc6 inchi_to_cml_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/inchi_to_cml_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,16 @@
+<tool id="CONVERTER_inchi_to_cml" name="InChI to CML" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -iinchi "${input}" -ocml -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="inchi" label="Molecules in InChI format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="cml"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 inchi_to_mol2_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/inchi_to_mol2_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,16 @@
+<tool id="CONVERTER_inchi_to_mol2" name="InChI to MOL2" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -iinchi "${input}" -omol2 -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="inchi" label="Molecules in InChI format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="mol2"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 inchi_to_mol_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/inchi_to_mol_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,16 @@
+<tool id="CONVERTER_inchi_to_mol" name="InChI to MOL" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -iinchi "${input}" -omol -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="inchi" label="Molecules in InChI-format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="mol"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 inchi_to_sdf_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/inchi_to_sdf_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,16 @@
+<tool id="CONVERTER_inchi_to_sdf" name="InChI to SDF" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -iinchi "${input}" -osdf -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="inchi" label="Molecules in InChI format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="sdf"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 inchi_to_smi_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/inchi_to_smi_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,16 @@
+<tool id="CONVERTER_inchi_to_smi" name="InChI to SMILES" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -iinchi "${input}" -osmi -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="inchi" label="Molecules in InChI format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="smi"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 mol2_to_cml_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mol2_to_cml_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,16 @@
+<tool id="CONVERTER_mol2_to_cml" name="MOL2 to CML" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -imol2 "${input}" -ocml -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="mol2" label="Molecules in MOL2-format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="cml"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 mol2_to_inchi_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mol2_to_inchi_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,16 @@
+<tool id="CONVERTER_mol2_to_inchi" name="MOL2 to InChI" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -imol2 "${input}" -oinchi -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="mol2" label="Molecules in MOL2-format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="inchi"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 mol2_to_mol_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mol2_to_mol_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,16 @@
+<tool id="CONVERTER_mol2_to_mol" name="MOL2 to MOL" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -imol2 "${input}" -omol -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="mol2" label="Molecules in MOL2-format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="mol"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 mol2_to_sdf_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mol2_to_sdf_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,16 @@
+<tool id="CONVERTER_mol2_to_sdf" name="MOL2 to SDF" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -imol2 "${input}" -osdf "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="mol2" label="Molecules in MOL2-format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="sdf"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 mol2_to_smi_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mol2_to_smi_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,16 @@
+<tool id="CONVERTER_mol2_to_smi" name="MOL2 to SMILES" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -imol2 "${input}" -omol "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="mol2" label="Molecules in MOL2-format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="smi"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 mol_to_cml_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mol_to_cml_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,15 @@
+<tool id="CONVERTER_mol_to_cml" name="MOL to CML" version="1.0.0">
+    <description></description>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -imol "${input}" -ocml -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="mol" label="Molecules in MOL-format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="cml"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 mol_to_inchi_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mol_to_inchi_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,15 @@
+<tool id="CONVERTER_mol_to_mol2" name="MOL to MOL2" version="1.0.0">
+    <description></description>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -imol "${input}" -omol2 -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="mol" label="Molecules in MOL-format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="mol2"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 mol_to_mol2_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mol_to_mol2_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,15 @@
+<tool id="CONVERTER_mol_to_mol2" name="MOL to MOL2" version="1.0.0">
+    <description></description>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -imol "${input}" -omol2 -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="mol" label="Molecules in MOL-format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="mol2"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 mol_to_smi_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mol_to_smi_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,15 @@
+<tool id="CONVERTER_mol_to_smi" name="MOL to SMILES" version="1.0.0">
+    <description></description>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -imol "${input}" -osmi  -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="mol" label="Molecules in MOL-format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="smi"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 molecules.py
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/molecules.py Thu Aug 15 03:19:26 2013 -0400
[
b'@@ -0,0 +1,759 @@\n+# -*- coding: utf-8 -*-\r\n+\r\n+from galaxy.datatypes import data\r\n+import logging\r\n+from galaxy.datatypes.sniff import get_headers, get_test_fname\r\n+from galaxy.datatypes.data import get_file_peek\r\n+from galaxy.datatypes.tabular import Tabular\r\n+from galaxy.datatypes.binary import Binary\r\n+from galaxy.datatypes.xml import GenericXml\r\n+import subprocess\r\n+import os\r\n+#import pybel\r\n+#import openbabel\r\n+#openbabel.obErrorLog.StopLogging()\r\n+\r\n+from galaxy.datatypes.metadata import MetadataElement\r\n+from galaxy.datatypes import metadata\r\n+\r\n+log = logging.getLogger(__name__)\r\n+\r\n+def count_special_lines( word, filename, invert = False ):\r\n+    """\r\n+        searching for special \'words\' using the grep tool\r\n+        grep is used to speed up the searching and counting\r\n+        The number of hits is returned.\r\n+    """\r\n+    try:\r\n+        cmd = ["grep", "-c"]\r\n+        if invert:\r\n+            cmd.append(\'-v\')\r\n+        cmd.extend([word, filename])\r\n+        out = subprocess.Popen(cmd, stdout=subprocess.PIPE)\r\n+        return int(out.communicate()[0].split()[0])\r\n+    except:\r\n+        pass\r\n+    return 0\r\n+\r\n+def count_lines( filename, non_empty = False):\r\n+    """\r\n+        counting the number of lines from the \'filename\' file\r\n+    """\r\n+    try:\r\n+        if non_empty:\r\n+            out = subprocess.Popen([\'grep\', \'-cve\', \'^\\s*$\', filename], stdout=subprocess.PIPE)\r\n+        else:\r\n+            out = subprocess.Popen([\'wc\', \'-l\', filename], stdout=subprocess.PIPE)\r\n+        return int(out.communicate()[0].split()[0])\r\n+    except:\r\n+        pass\r\n+    return 0\r\n+\r\n+\r\n+class GenericMolFile( data.Text ):\r\n+    """\r\n+        abstract class for most of the molecule files\r\n+    """\r\n+    MetadataElement( name="number_of_molecules", default=0, desc="Number of molecules", readonly=True, visible=True, optional=True, no_value=0 )\r\n+\r\n+    def set_peek( self, dataset, is_multi_byte=False ):\r\n+        if not dataset.dataset.purged:\r\n+            dataset.peek = get_file_peek( dataset.file_name, is_multi_byte=is_multi_byte )\r\n+            if (dataset.metadata.number_of_molecules == 1):\r\n+                dataset.blurb = "1 molecule"\r\n+            else:\r\n+                dataset.blurb = "%s molecules" % dataset.metadata.number_of_molecules\r\n+            dataset.peek = data.get_file_peek( dataset.file_name, is_multi_byte=is_multi_byte )\r\n+        else:\r\n+            dataset.peek = \'file does not exist\'\r\n+            dataset.blurb = \'file purged from disk\'\r\n+\r\n+    def get_mime(self):\r\n+        return \'text/plain\'\r\n+\r\n+class MOL( GenericMolFile ):\r\n+    file_ext = "mol"\r\n+    def sniff( self, filename ):\r\n+        if count_special_lines("^M\\s*END", filename) == 1:\r\n+            return True\r\n+        else:\r\n+            return False\r\n+\r\n+    def set_meta( self, dataset, **kwd ):\r\n+        """\r\n+        Set the number molecules, in the case of MOL its always one.\r\n+        """\r\n+        dataset.metadata.number_of_molecules = 1\r\n+\r\n+\r\n+class SDF( GenericMolFile ):\r\n+    file_ext = "sdf"\r\n+    def sniff( self, filename ):\r\n+        if count_special_lines("^\\$\\$\\$\\$", filename) > 0:\r\n+            return True\r\n+        else:\r\n+            return False\r\n+\r\n+    def set_meta( self, dataset, **kwd ):\r\n+        """\r\n+        Set the number of molecules in dataset.\r\n+        """\r\n+        dataset.metadata.number_of_molecules = count_special_lines("^\\$\\$\\$\\$", dataset.file_name)\r\n+\r\n+    def split( cls, input_datasets, subdir_generator_function, split_params):\r\n+        """\r\n+        Split the input files by molecule records.\r\n+        """\r\n+        if split_params is None:\r\n+            return None\r\n+\r\n+        if len(input_datasets) > 1:\r\n+            raise Exception("SD-file splitting does not support multiple files")\r\n+        input_files = [ds.file_name for ds in input_datasets]\r\n+\r\n+        chunk_size = None\r\n+        if split_params[\'split_mode\'] == \'number_of_parts\':\r\n+            raise Exception(\'Split mode "%s" is currently no'..b')\r\n+            part_file.writelines( accumulated_lines )\r\n+            part_file.writelines( footer_line )\r\n+            part_file.close()\r\n+\r\n+        try:\r\n+            cml_records = _read_cml_records( input_files[0] )\r\n+            cml_lines_accumulated = []\r\n+            for counter, cml_record in enumerate( cml_records, start = 1):\r\n+                cml_lines_accumulated.extend( cml_record )\r\n+                if counter % chunk_size == 0:\r\n+                    _write_part_cml_file( cml_lines_accumulated )\r\n+                    cml_lines_accumulated = []\r\n+            if cml_lines_accumulated:\r\n+                _write_part_cml_file( cml_lines_accumulated )\r\n+        except Exception,  e:\r\n+            log.error(\'Unable to split files: %s\' % str(e))\r\n+            raise\r\n+    split = classmethod(split)\r\n+\r\n+\r\n+    def merge(split_files, output_file):\r\n+        """\r\n+        Merging CML files.\r\n+        """\r\n+        if len(split_files) == 1:\r\n+            #For one file only, use base class method (move/copy)\r\n+            return Text.merge(split_files, output_file)\r\n+        if not split_files:\r\n+            raise ValueError("Given no CML files, %r, to merge into %s" \\\r\n+                             % (split_files, output_file))\r\n+        with open(output_file, "w") as out:\r\n+            for filename in split_files:\r\n+                with open( filename ) as handle:\r\n+                    header = handle.readline()\r\n+                    if not header:\r\n+                        raise ValueError("CML file %s was empty" % f)\r\n+                    if not header.lstrip().startswith(\'<?xml version="1.0"?>\'):\r\n+                        out.write(header)\r\n+                        raise ValueError("%s is not a valid XML file!" % f)\r\n+                    line = handle.readline()\r\n+                    header += line\r\n+                    if not line.lstrip().startswith(\'<cml xmlns="http://www.xml-cml.org/schema\'):\r\n+                        out.write(header)\r\n+                        raise ValueError("%s is not a CML file!" % f)\r\n+                    molecule_found = False\r\n+                    for line in handle.readlines():\r\n+                        # we found two required header lines, the next line should start with <molecule >\r\n+                        if line.lstrip().startswith(\'</cml>\'):\r\n+                            continue\r\n+                        if line.lstrip().startswith(\'<molecule\'):\r\n+                            molecule_found = True\r\n+                        if molecule_found:\r\n+                            out.write( line )\r\n+            out.write("</cml>\\n")\r\n+    merge = staticmethod(merge)\r\n+\r\n+\r\n+if __name__ == \'__main__\':\r\n+    """\r\n+    TODO: We need to figure out, how to put example files under /lib/galaxy/datatypes/test/ from a toolshed, so that doctest can work properly.\r\n+    """\r\n+    inchi = get_test_fname(\'drugbank_drugs.inchi\')\r\n+    smiles = get_test_fname(\'drugbank_drugs.smi\')\r\n+    sdf = get_test_fname(\'drugbank_drugs.sdf\')\r\n+    fps = get_test_fname(\'50_chemfp_fingerprints_FPS1.fps\')\r\n+    pdb = get_test_fname(\'2zbz.pdb\')\r\n+    cml = get_test_fname(\'/home/bag/Downloads/approved.cml\')\r\n+\r\n+    print \'CML test\'\r\n+    print CML().sniff(cml), \'cml\'\r\n+    print CML().sniff(inchi)\r\n+    print CML().sniff(pdb)\r\n+    CML().split()\r\n+    """\r\n+    print \'SMILES test\'\r\n+    print SMILES().sniff(smiles), \'smi\'\r\n+    print SMILES().sniff(inchi)\r\n+    print SMILES().sniff(pdb)\r\n+    """\r\n+    print \'InChI test\'\r\n+    print InChI().sniff(smiles)\r\n+    print InChI().sniff(sdf)\r\n+    print InChI().sniff(inchi), \'inchi\'\r\n+\r\n+    print \'FPS test\'\r\n+    print FPS().sniff(smiles)\r\n+    print FPS().sniff(sdf)\r\n+    f = FPS()\r\n+    print f.sniff(fps)\r\n+\r\n+    print \'SDF test\'\r\n+    print SDF().sniff(smiles)\r\n+    print SDF().sniff(sdf), \'sdf\'\r\n+    print SDF().sniff(fps)\r\n+\r\n+    print \'PDB test\'\r\n+    print PDB().sniff(smiles)\r\n+    print PDB().sniff(sdf)\r\n+    print PDB().sniff(fps)\r\n+    print PDB().sniff(pdb), \'pdb\'\r\n'
b
diff -r 000000000000 -r 85eca06eefc6 sdf_to_cml_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sdf_to_cml_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,16 @@
+<tool id="CONVERTER_sdf_to_cml" name="SDF to CML" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -isdf "${input}" -ocml -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="sdf" label="Molecules in SDF-format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="cml"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 sdf_to_inchi_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sdf_to_inchi_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,16 @@
+<tool id="CONVERTER_sdf_to_inchi" name="SDF to InChI" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -isdf "${input}" -oinchi -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="sdf" label="Molecules in SDF-format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="inchi"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 sdf_to_mol2_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sdf_to_mol2_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,16 @@
+<tool id="CONVERTER_sdf_to_mol2" name="SDF to mol2" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -isdf "${input}" -omol2 -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="sdf" label="Molecules in SDF-format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="mol2"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 sdf_to_smi_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sdf_to_smi_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,21 @@
+<tool id="CONVERTER_sdf_to_smiles" name="SDF to SMILES" version="1.0.1">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >
+        obabel -isdf "${input}"
+            -ocan
+            -O "${output}" -e 
+        2>&#38;1
+    </command>
+    <inputs>
+        <param name="input" type="data" format="sdf" label="Molecules in SDF-format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="smi"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 smi_to_cml_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/smi_to_cml_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,16 @@
+<tool id="CONVERTER_SMILES_to_cml" name="SMILES to CML" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -ismi "${input}" -ocml -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="smi" label="Molecules in SMILES format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="cml"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 smi_to_inchi_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/smi_to_inchi_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,16 @@
+<tool id="CONVERTER_SMILES_to_inchi" name="SMILES to InChI" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -ismi "${input}" -oinchi -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="smi" label="Molecules in SMILES format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="inchi"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 smi_to_mol2_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/smi_to_mol2_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,16 @@
+<tool id="CONVERTER_SMILES_to_MOL2" name="SMILES to MOL2" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -ismi "${input}" -omol2 -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="smi" label="Molecules in SMILES format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="mol2"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 smi_to_mol_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/smi_to_mol_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,16 @@
+<tool id="CONVERTER_SMILES_to_MOL" name="SMILES to MOL" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -ismi "${input}" -omol -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="smi" label="Molecules in SMILES format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="mol"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 smi_to_sdf_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/smi_to_sdf_converter.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,16 @@
+<tool id="CONVERTER_SMILES_to_sdf" name="SMILES to SDF" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >obabel -ismi "${input}" -osdf -O "${output}" -e 2>&#38;1</command>
+    <inputs>
+        <param name="input" type="data" format="smi" label="Molecules in SMILES format"/>
+    </inputs>
+    <outputs>
+        <data name="output" format="sdf"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 smi_to_smi_converter.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/smi_to_smi_converter.xml Thu Aug 15 03:19:26 2013 -0400
[
@@ -0,0 +1,42 @@
+<tool id="CONVERTER_smiles_to_smiles" name="SMILES to SMILES" version="1.0.0">
+    <description></description>
+    <parallelism method="multi" split_inputs="input" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="output"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command >
+        obabel -ismi "${input}"
+        #if $can:
+            -ocan
+        #else:
+            -osmi 
+        #end if
+            -O "${output}" -e 
+        $remove_h
+        #if $iso_chi or $can or $exp_h:
+            -x$iso_chi$exp_h$can
+        #end if
+        #if $dative_bonds:
+            -b
+        #end if
+        #if int($ph) >= 0:
+            -p $ph
+        #end if
+
+        2>&#38;1
+    </command>
+    <inputs>
+        <param name="input" type="data" format="smi" label="Molecules in SD-format"/>
+        <param name="iso_chi" type="boolean" label="Do not include isotopic or chiral markings (-xi)" truevalue="i" falsevalue="" checked="false" />
+        <param name="can" type="boolean" label="Output in canonical form (-xc)" truevalue="c" falsevalue="" checked="false" />
+        <param name="exp_h" type="boolean" label="Output explicit hydrogens as such (-xh)" truevalue="h" falsevalue="" checked="false" />
+        <param name="remove_h" type="boolean" label="Delete hydrogen atoms (-d)" truevalue="-d" falsevalue="" />
+        <param name="ph" size="3" type="float" value="-1" label="Add hydrogens appropriate for pH (-p)" help="-1 means deactivated"/>
+        <param name="dative_bonds" type="boolean" label="Convert dative bonds (e.g. [N+]([O-])=O to N(=O)=O) (-b)" truevalue="-b" falsevalue="" />
+    </inputs>
+    <outputs>
+        <data name="output" format="smi"/>
+    </outputs>
+    <help>
+    </help>
+</tool>
b
diff -r 000000000000 -r 85eca06eefc6 test-data/2zbz.pdb
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/2zbz.pdb Thu Aug 15 03:19:26 2013 -0400
b
b'@@ -0,0 +1,3988 @@\n+HEADER    OXIDOREDUCTASE                          30-OCT-07   2ZBZ              \n+TITLE     CRYSTAL STRUCTURE OF VITAMIN D HYDROXYLASE CYTOCHROME P450            \n+TITLE    2 105A1 (R84A MUTANT) IN COMPLEX WITH 1,25-DIHYDROXYVITAMIN            \n+TITLE    3 D3                                                                   \n+COMPND    MOL_ID: 1;                                                            \n+COMPND   2 MOLECULE: CYTOCHROME P450-SU1;                                       \n+COMPND   3 CHAIN: A;                                                            \n+COMPND   4 SYNONYM: P450-CVA1, CYP105A1;                                        \n+COMPND   5 EC: 1.14.14.1;                                                       \n+COMPND   6 ENGINEERED: YES;                                                     \n+COMPND   7 MUTATION: YES                                                        \n+SOURCE    MOL_ID: 1;                                                            \n+SOURCE   2 ORGANISM_SCIENTIFIC: STREPTOMYCES GRISEOLUS;                         \n+SOURCE   3 ORGANISM_TAXID: 1909;                                                \n+SOURCE   4 STRAIN: ATCC 11796;                                                  \n+SOURCE   5 GENE: CYP105A1;                                                      \n+SOURCE   6 EXPRESSION_SYSTEM: ESCHERICHIA COLI;                                 \n+SOURCE   7 EXPRESSION_SYSTEM_TAXID: 562;                                        \n+SOURCE   8 EXPRESSION_SYSTEM_STRAIN: JM109;                                     \n+SOURCE   9 EXPRESSION_SYSTEM_VECTOR_TYPE: PLASMID;                              \n+SOURCE  10 EXPRESSION_SYSTEM_PLASMID: PKK223-3                                  \n+KEYWDS    P450, BETA PRISM, HEME, IRON, METAL-BINDING, MONOOXYGENASE,           \n+KEYWDS   2 OXIDOREDUCTASE                                                       \n+EXPDTA    X-RAY DIFFRACTION                                                     \n+AUTHOR    H.SUGIMOTO,R.SHINKYO,K.HAYASHI,S.YONEDA,M.YAMADA,M.KAMAKURA,          \n+AUTHOR   2 S.IKUSHIRO,Y.SHIRO,T.SAKAKI                                          \n+REVDAT   2   24-FEB-09 2ZBZ    1       VERSN                                    \n+REVDAT   1   08-APR-08 2ZBZ    0                                                \n+JRNL        AUTH   H.SUGIMOTO,R.SHINKYO,K.HAYASHI,S.YONEDA,M.YAMADA,            \n+JRNL        AUTH 2 M.KAMAKURA,S.IKUSHIRO,Y.SHIRO,T.SAKAKI                       \n+JRNL        TITL   CRYSTAL STRUCTURE OF CYP105A1 (P450SU-1) IN                  \n+JRNL        TITL 2 COMPLEX WITH 1ALPHA,25-DIHYDROXYVITAMIN D3                   \n+JRNL        REF    BIOCHEMISTRY                  V.  47  4017 2008              \n+JRNL        REFN                   ISSN 0006-2960                               \n+JRNL        PMID   18314962                                                     \n+JRNL        DOI    10.1021/BI7023767                                            \n+REMARK   1                                                                      \n+REMARK   2                                                                      \n+REMARK   2 RESOLUTION.    1.90 ANGSTROMS.                                       \n+REMARK   3                                                                      \n+REMARK   3 REFINEMENT.                                                          \n+REMARK   3   PROGRAM     : REFMAC 5.2.0019                                      \n+REMARK   3   AUTHORS     : MURSHUDOV,VAGIN,DODSON                               \n+REMARK   3                                                                      \n+REMARK   3    REFINEMENT TARGET : MAXIMUM LIKELIHOOD                            \n+REMARK   3                                                                      \n+REMARK   3  DATA USED IN REFINEMENT.                                            \n+REMARK   3   RESOLUTION RANGE HIGH (ANGSTROMS) : 1.90                           \n+REMARK   3   RESOLUTION RANGE LOW  (ANGSTRO'..b'119 3121                                                      \n+CONECT 3119 3118 3120 3122                                                      \n+CONECT 3120 3096 3116 3119                                                      \n+CONECT 3121 3118                                                                \n+CONECT 3122 3119 3123                                                           \n+CONECT 3123 3122                                                                \n+CONECT 3124 3092 3125 3128                                                      \n+CONECT 3125 3096 3124 3126                                                      \n+CONECT 3126 3125 3127 3129                                                      \n+CONECT 3127 3126 3128 3130                                                      \n+CONECT 3128 3093 3124 3127                                                      \n+CONECT 3129 3126                                                                \n+CONECT 3130 3127 3131                                                           \n+CONECT 3131 3130 3132                                                           \n+CONECT 3132 3131 3133 3134                                                      \n+CONECT 3133 3132                                                                \n+CONECT 3134 3132                                                                \n+CONECT 3135 3139                                                                \n+CONECT 3136 3161                                                                \n+CONECT 3137 3138 3146 3164                                                      \n+CONECT 3138 3137 3139                                                           \n+CONECT 3139 3135 3138 3140                                                      \n+CONECT 3140 3139 3141                                                           \n+CONECT 3141 3140 3142 3146                                                      \n+CONECT 3142 3141 3143                                                           \n+CONECT 3143 3142 3144                                                           \n+CONECT 3144 3143 3145 3150                                                      \n+CONECT 3145 3144 3147                                                           \n+CONECT 3146 3137 3141 3155                                                      \n+CONECT 3147 3145 3148                                                           \n+CONECT 3148 3147 3149                                                           \n+CONECT 3149 3148 3150 3153 3154                                                 \n+CONECT 3150 3144 3149 3151                                                      \n+CONECT 3151 3150 3152                                                           \n+CONECT 3152 3151 3153                                                           \n+CONECT 3153 3149 3152 3156                                                      \n+CONECT 3154 3149                                                                \n+CONECT 3155 3146                                                                \n+CONECT 3156 3153 3157 3158                                                      \n+CONECT 3157 3156                                                                \n+CONECT 3158 3156 3159                                                           \n+CONECT 3159 3158 3160                                                           \n+CONECT 3160 3159 3161                                                           \n+CONECT 3161 3136 3160 3162 3163                                                 \n+CONECT 3162 3161                                                                \n+CONECT 3163 3161                                                                \n+CONECT 3164 3137                                                                \n+MASTER      292    0    2   19   10    0    9    6 3482    1   75   32          \n+END                                                                             \n'
b
diff -r 000000000000 -r 85eca06eefc6 test-data/50_chemfp_fingerprints_FPS1.fps
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/50_chemfp_fingerprints_FPS1.fps Thu Aug 15 03:19:26 2013 -0400
b
b'@@ -0,0 +1,56 @@\n+#FPS1\n+#num_bits=1021\n+#type=OpenBabel-FP2/1\n+#software=OpenBabel/2.3.0\n+#source=/home/bag/50.smi\n+#date=2012-02-17T22:47:25\n+10000000000002240000008000020000000000800000000000000000000400001000000000000001000200002000000001000000102040000000000000008000081008000004000010008000288000140090004000000000000010000000000100040000000000020000200000000c8000010180000000000000008140000500\tZINC71786107\n+0000000000000224000000000040000000000080000000000000000000000000100000000000000000020000000000000100000000200402000000000000000008000000000400000000000008800084001000400000000000001000000000010004000000000000000000000000000000000000000000000000000100000100\tZINC71786109\n+0000000000000224000000000040000000000080000000000000000000000000100000000000000000020000000000000100000000200402000000000000000008000000000400000000000008800084001000400000000000001000000000010004000000000000000000000000000000000000000000000000000100000100\tZINC71786110\n+00000000000002000200000100020000000000000000000000000000000400001000000000000001000a0000200000000100000000204000000000000000820008100800000000000000800028800004009000400000000000000000000000000000000000000000000000000000088000030100000100000000000140000100\tZINC71786116\n+0000000000000200000000010000000000000000000000000000000000000000100000000000000000000000000000000100000000200002000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000100000000\tZINC71786140\n+0000000000000224000000012000000000000080004040000000200000002000100000000080000000000000000000000100000200200002200000000000080000000000000400000400000000000200000000400000000000001000004000000204000000000000000000000000000000000000000000002000000100000000\tZINC71786141\n+0000000000000224000000012000000000000080004040000000200000002000100000000080000080020000000000000100000200200100000000000000080000000000000400000000000008800204001000400000000000801000000000010204000080000000000000000000000000000000000000000000000100000100\tZINC71786220\n+0000000000000024000000012000000000000080004240000080200000002000100800000082000000000000010000000100020200200002200000000000080000000000000600000400008000000200000040400000000000001000006000000204000000000000010000000000010000000000000000002000040102000000\tZINC71786250\n+0000000000000224000000812000000000100080004040040000200080002800100000000080000000020000000004000100000200200000000000000000080000000000000400001002000008800204001000400000000000001000000000000204000000000000000000000000000000000000000000000000000100000100\tZINC71786287\n+0000000000000224000000012000000000100080004040040000200080002800100000000080000100000000000004000120000200204000000000000000080008000800040400001002800000000200000040400000000008001000000000000204000000000000000000000000090000000000000000000000008100000000\tZINC71786456\n+00000000000002240000008122000000000000800040400000002000000020001000000000800000800200000000000001000002002001000000000000000800000000000004000000000000088002040010004000000000008010004000000102040000c0000000000000000000000000002000000080000000000100000100\tZINC71786564\n+0000000000000200000000010000000000000000000000000000000000000000100000000000000000000000000000000100000000200002000000000000000000000000000000001000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000100000000\tZINC71786573\n+0000000000000224000000012000000000000080004240000000200000002000100000000080000000000000000000000100000200200000000000000000080000000000000400000000000000000200000040400000000000001000000000000204000000000000000000000000010000000000000000000000000100000000\tZINC71786600\n+0000000000000224000000012000000000000080004240000000200000002000100000000080000000000000000000000100000200200000000000000000080000000000000400000000000000000200000040400000000000001000000000000204000000000000000000000000010000000000000000000000000100000000\tZINC71786601\n+0000000000000224000000012000000000000080004240000000200000002'..b'00000000080000000010000000000000100000200200002200000000000080000000000000400000400000000000200000000400000000000001000004000000204000000000040000000000000100000000000000000002000000101000200\tZINC71787093\n+a000000c000000c000006600000000010040000000000200400000000004000000000000000080202080000840000640000412800000200008080002000000001c000c000001022000008000020800800000004004000000400000000001000000002000000000020c4000000000840020020400004100601808808002400000\tZINC71787147\n+00020000000000800100040000000000000000100000000000000000000000001800100000000001400e0410000000000100000000004000000000000000000008001800000000000000000110800004001001400000200080000000000200000000000000000000008000000000080000040000000010000010000100000100\tZINC71788036\n+000000000000000000000c00000000000000000000000000000000000000000010004000001000c1000a0018000000800100400000004000000000000000000008000800800000000000000110800004001001400800000080000000000000000000000000000000000000000000080000040000000000000000000104000100\tZINC71788597\n+000000000000000000000c00000000000000000000000000000000000000000010004000001000c1100a0018000000800100400000204000000000000000000008000800800000000000800008800004001001400800000080000000000000000000000000000000000000000000080000040000000000000000000104000100\tZINC71788598\n+002a00000000020000000400000000000000001000000000000000000100000010001000800000011000001000000000010200000020c002000000000000000008000800000000000000800002000000000001400000200080000000000000000000002000000000100000000000180000040000000010000000000100000000\tZINC71788731\n+0022000000004800000000000042000000000060000000404400000020040000100000000000000100800002a0000020010404002000c030000000001000000018902812080000000000008000080480008000400800210021000040408910000000003000010000080000100008200200010100000400000000004020000000\tZINC71788781\n+0022000000004800000000000042000000000060000000404400000020040000100000000000000100800002a0000020010404002000c030000000001000000018902812080000000000008000080480008000400800210021000040408910000000003000010000080000100008200200010100000400000000004020000000\tZINC71788782\n+0002000000000000100004000000000800000000000000000000000000000000100000020100000000000030000000080002000000000000000000000000000000000000000000000020000002000000000000400000200020010000000000000000000000000000000000000000000000040004000010000004000000000000\tZINC71788798\n+000200000040000010000400000000080000000000000000000000000000000010000002000000000006003000000000000000001000000000000000000000000000000001000000002000000280000a003000400000200000010000000000000000000000000000000000000000000000040004000010000000000000000000\tZINC71788832\n+0000010100000000000004000000000000000000000000000000001000000000100000000002000000000010000000000000000000000000000000000000000400000000000000000000040000000100000000400000000000400000000000000000000000000000000000000000000040041000000000000000000000000000\tZINC71788841\n+8000010100000000000000000000000008000000000000000000001000000000100000000004000000000000000000000000000000000000000000000000400402000000000000000000040000000100000000400000000000400000000000000000000000000000000000000000000000001000000000000000000000000000\tZINC71788843\n+00000101000000000000000000100000000000000000000000000010000200001000000000040001000a0000000000000000400000000000000000000000000408000800000000000000040000800100001000400000000000400000000000000000000000000000000000000000000000001000000000000000000000000000\tZINC71788844\n+0004020000200000020002000000400000400000000004080000000000400400100040000000802000811008000100400100000000042000040000020000000004000400000000400008000124080003001800400400100040000800000840000000000000200000000000000010040010028000004100000040000202800000\tZINC71788864\n+000002008020008001000200040000000000000040000200000900800064000004004000002080200083020800000040000002000000200000000002000000000c000402000002400000100004880003001800400400080040000000000000000000200000008004040000002000041000020010014100600808000202800000\tZINC71788946\n'
b
diff -r 000000000000 -r 85eca06eefc6 test-data/drugbank_drugs.inchi
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/drugbank_drugs.inchi Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,2 @@
+InChI=1S/C59H84N18O14/c1-31(2)22-40(49(82)68-39(12-8-20-64-57(60)61)56(89)77-21-9-13-46(77)55(88)75-76-58(62)90)69-54(87)45(29-91-59(3,4)5)74-50(83)41(23-32-14-16-35(79)17-15-32)70-53(86)44(28-78)73-51(84)42(24-33-26-65-37-11-7-6-10-36(33)37)71-52(85)43(25-34-27-63-30-66-34)72-48(81)38-18-19-47(80)67-38/h6-7,10-11,14-17,26-27,30-31,38-46,65,78-79H,8-9,12-13,18-25,28-29H2,1-5H3,(H,63,66)(H,67,80)(H,68,82)(H,69,87)(H,70,86)(H,71,85)(H,72,81)(H,73,84)(H,74,83)(H,75,88)(H4,60,61,64)(H3,62,76,90)/t38-,39-,40-,41-,42-,43-,44-,45+,46-/m0/s1
+InChI=1S/C46H64N14O12S2/c47-35(62)15-14-29-40(67)58-32(22-36(48)63)43(70)59-33(45(72)60-18-5-9-34(60)44(71)56-28(8-4-17-52-46(50)51)39(66)53-23-37(49)64)24-74-73-19-16-38(65)54-30(21-26-10-12-27(61)13-11-26)41(68)57-31(42(69)55-29)20-25-6-2-1-3-7-25/h1-3,6-7,10-13,28-34,61H,4-5,8-9,14-24H2,(H2,47,62)(H2,48,63)(H2,49,64)(H,53,66)(H,54,65)(H,55,69)(H,56,71)(H,57,68)(H,58,67)(H,59,70)(H4,50,51,52)/t28-,29-,30-,31-,32-,33-,34-/m0/s1
b
diff -r 000000000000 -r 85eca06eefc6 test-data/drugbank_drugs.sdf
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/drugbank_drugs.sdf Thu Aug 15 03:19:26 2013 -0400
[
b'@@ -0,0 +1,491 @@\n+Goserelin\n+  Mrv0541 04221219462D          \n+\n+ 91 96  0  0  1  0            999 V2000\n+   12.8548   -2.6382    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0\n+   13.9726   -2.5226    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0\n+   10.1766   -3.9327    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0\n+   11.2019   -0.7961    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0\n+    8.7800   -1.3064    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0\n+   16.8589   -3.2421    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0\n+   10.3562    1.2163    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0\n+    3.2702    4.8341    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0\n+    2.3500    8.2734    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0\n+    3.8213    4.2201    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0\n+    5.2178    1.5938    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0\n+    7.8960    2.8883    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0\n+    7.1271    0.5358    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0\n+   12.4834    3.1249    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0\n+   13.1495   -4.0364    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0\n+   11.2402   -2.9784    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0\n+   15.2089   -3.2393    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0\n+   10.1383   -1.7503    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0\n+   15.6226   -2.5255    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0\n+   12.3806   -6.3890    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0\n+    9.2926    0.2619    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0\n+    3.1485    7.0391    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0\n+    4.3338    5.7884    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0\n+   16.8613   -1.8132    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0\n+    8.1907    1.4900    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0\n+    5.1795    3.7761    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0\n+    6.2814    2.5480    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0\n+   11.3170   -7.3433    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0\n+   12.6753   -7.7873    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0\n+    3.8596    0.7098    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0\n+    6.7335    6.3823    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0\n+    5.9507    7.4636    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0\n+   13.9701   -3.9516    0.0000 C   0  0  1  0  0  0  0  0  0  0  0  0\n+   14.3043   -4.7058    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n+   13.6903   -5.2569    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n+   12.9766   -4.8431    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n+   12.5984   -3.4224    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n+   11.7912   -3.5925    0.0000 C   0  0  2  0  0  0  0  0  0  0  0  0\n+   14.3838   -3.2378    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n+   11.5349   -4.3767    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n+   12.0859   -4.9907    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n+    9.8819   -2.5345    0.0000 C   0  0  2  0  0  0  0  0  0  0  0  0\n+   10.4330   -3.1486    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n+    9.0747   -2.7046    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n+    8.8184   -3.4889    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n+   11.8295   -5.7750    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n+    8.0112   -3.6590    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n+    9.3694   -4.1029    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n+    9.5873   -1.1363    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n+    9.8436   -0.3521    0.0000 C   0  0  1  0  0  0  0  0  0  0  0  0\n+   10.6509   -0.1820    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n+   16.4476   -2.5269    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n+    2.9756    6.2324    0.0000 C   0  0  1  0  0  0  0  0  0  0  0  0\n+   12.0091   -0.6259    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n+    8.9979    1.6602    0.0000 C   0  0  2  0  0  0  0  0 '..b' 0  0  0  0  0  0\n+    9.1678    0.0000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n+    6.3366   -1.6628    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0\n+   10.6060    0.0000    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0\n+    1.3932   -5.4378    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n+    1.3932   -6.2467    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0\n+    0.6741   -5.0333    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0\n+  1  2  1  0  0  0  0\n+  2  3  1  0  0  0  0\n+  2 10  2  0  0  0  0\n+  3  4  1  0  0  0  0\n+  4  5  1  0  0  0  0\n+  5  6  1  0  0  0  0\n+  5 11  2  0  0  0  0\n+  6  7  1  0  0  0  0\n+  6 12  1  6  0  0  0\n+  7  8  1  0  0  0  0\n+  8  9  2  0  0  0  0\n+ 16  8  1  6  0  0  0\n+ 12 13  1  0  0  0  0\n+ 13 14  1  0  0  0  0\n+ 14 15  1  0  0  0  0\n+ 15 72  1  0  0  0  0\n+ 16 17  1  0  0  0  0\n+ 16 18  1  0  0  0  0\n+ 17 19  1  0  0  0  0\n+ 18 20  1  0  0  0  0\n+ 18 21  1  0  0  0  0\n+ 19 20  1  0  0  0  0\n+ 22 21  1  6  0  0  0\n+ 21 27  2  0  0  0  0\n+ 22 23  1  0  0  0  0\n+ 22 28  1  0  0  0  0\n+ 23 24  1  0  0  0  0\n+ 24 25  1  0  0  0  0\n+ 24 31  2  0  0  0  0\n+ 25 26  1  0  0  0  0\n+ 25 32  1  1  0  0  0\n+ 26 36  1  0  0  0  0\n+ 28 29  1  0  0  0  0\n+ 29 30  1  0  0  0  0\n+ 30 57  1  0  0  0  0\n+ 32 33  1  0  0  0  0\n+ 33 34  2  0  0  0  0\n+ 33 35  1  0  0  0  0\n+ 36 37  1  0  0  0  0\n+ 36 38  2  0  0  0  0\n+ 37 39  1  1  0  0  0\n+ 37 44  1  0  0  0  0\n+ 39 40  1  0  0  0  0\n+ 40 41  1  0  0  0  0\n+ 41 42  1  0  0  0  0\n+ 41 43  2  0  0  0  0\n+ 44 49  1  0  0  0  0\n+ 45 47  1  0  0  0  0\n+ 45 52  1  0  0  0  0\n+ 45 46  2  0  0  0  0\n+ 46 53  1  0  0  0  0\n+ 48 47  1  1  0  0  0\n+ 48 61  1  0  0  0  0\n+ 48 49  1  0  0  0  0\n+ 49 62  2  0  0  0  0\n+ 50 51  1  0  0  0  0\n+ 50 52  2  0  0  0  0\n+ 51 53  2  0  0  0  0\n+ 54 55  1  0  0  0  0\n+ 54 60  1  0  0  0  0\n+ 55 56  1  0  0  0  0\n+ 55 70  2  0  0  0  0\n+ 56 57  1  0  0  0  0\n+ 58 59  2  0  0  0  0\n+ 58 60  1  0  0  0  0\n+ 58 61  1  0  0  0  0\n+ 60 63  1  1  0  0  0\n+ 63 65  1  0  0  0  0\n+ 64 66  2  0  0  0  0\n+ 64 65  1  0  0  0  0\n+ 65 68  2  0  0  0  0\n+ 66 67  1  0  0  0  0\n+ 67 69  2  0  0  0  0\n+ 67 71  1  0  0  0  0\n+ 68 69  1  0  0  0  0\n+ 72 73  2  3  0  0  0\n+ 72 74  1  0  0  0  0\n+M  END\n+> <DRUGBANK_ID>\n+DB00035\n+\n+> <DRUG_GROUPS>\n+approved\n+\n+> <GENERIC_NAME>\n+Desmopressin\n+\n+> <SYNONYMS>\n+1-Desamino-8-D-arginine vasopressin; Desmopresina [INN-Spanish]; Desmopressine [INN-French]; Desmopressinum [INN-Latin]\n+\n+> <SALTS>\n+Desmopressin acetate\n+\n+> <BRANDS>\n+Adiuretin; Concentraid; DDAVP; Minirin; Stimate\n+\n+> <CHEMICAL_FORMULA>\n+C46H64N14O12S2\n+\n+> <MOLECULAR_WEIGHT>\n+1069.217\n+\n+> <EXACT_MASS>\n+1068.426954962\n+\n+> <IUPAC_NAME>\n+(2S)-2-{[(2S)-1-{[(4R,7S,10S,13S,16S)-13-benzyl-10-(2-carbamoylethyl)-7-(carbamoylmethyl)-16-[(4-hydroxyphenyl)methyl]-6,9,12,15,18-pentaoxo-1,2-dithia-5,8,11,14,17-pentaazacycloicosan-4-yl]carbonyl}pyrrolidin-2-yl]formamido}-5-carbamimidamido-N-(carbamoylmethyl)pentanamide\n+\n+> <INCHI_IDENTIFIER>\n+InChI=1S/C46H64N14O12S2/c47-35(62)15-14-29-40(67)58-32(22-36(48)63)43(70)59-33(45(72)60-18-5-9-34(60)44(71)56-28(8-4-17-52-46(50)51)39(66)53-23-37(49)64)24-74-73-19-16-38(65)54-30(21-26-10-12-27(61)13-11-26)41(68)57-31(42(69)55-29)20-25-6-2-1-3-7-25/h1-3,6-7,10-13,28-34,61H,4-5,8-9,14-24H2,(H2,47,62)(H2,48,63)(H2,49,64)(H,53,66)(H,54,65)(H,55,69)(H,56,71)(H,57,68)(H,58,67)(H,59,70)(H4,50,51,52)/t28-,29-,30-,31-,32-,33-,34-/m0/s1\n+\n+> <INCHI_KEY>\n+InChIKey=NFLWUMRGJYTJIN-NXBWRCJVSA-N\n+\n+> <SMILES>\n+NC(=O)CC[C@@H]1NC(=O)[C@H](CC2=CC=CC=C2)NC(=O)[C@H](CC2=CC=C(O)C=C2)NC(=O)CCSSC[C@H](NC(=O)[C@H](CC(N)=O)NC1=O)C(=O)N1CCC[C@H]1C(=O)N[C@@H](CCCNC(N)=N)C(=O)NCC(N)=O\n+\n+> <JCHEM_ACCEPTOR_COUNT>\n+15\n+\n+> <JCHEM_DONOR_COUNT>\n+14\n+\n+> <JCHEM_ACIDIC_PKA>\n+11.34\n+\n+> <ALOGPS_LOGP>\n+-1\n+\n+> <JCHEM_LOGP>\n+-6.1\n+\n+> <ALOGPS_LOGS>\n+-4\n+\n+> <JCHEM_POLARIZABILITY>\n+106.19\n+\n+> <JCHEM_POLAR_SURFACE_AREA>\n+435.41\n+\n+> <JCHEM_REFRACTIVITY>\n+279.78\n+\n+> <JCHEM_ROTATABLE_BOND_COUNT>\n+19\n+\n+> <ALOGPS_SOLUBILITY>\n+1.10e-01 g/l\n+\n+$$$$\n'
b
diff -r 000000000000 -r 85eca06eefc6 test-data/drugbank_drugs.smi
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/drugbank_drugs.smi Thu Aug 15 03:19:26 2013 -0400
[
@@ -0,0 +1,2 @@
+O=C(N1[C@@H](CCC1)C(=O)NNC(=O)N)[C@@H](NC(=O)[C@@H](NC(=O)[C@H](NC(=O)[C@@H](NC(=O)[C@@H](NC(=O)[C@@H](NC(=O)[C@@H](NC(=O)[C@H]1NC(=O)CC1)Cc1[nH]cnc1)Cc1c2c([nH]c1)cccc2)CO)Cc1ccc(O)cc1)COC(C)(C)C)CC(C)C)CCCN=C(N)N Goserelin
+NC(=O)CNC(=O)[C@@H](NC(=O)[C@@H]1CCCN1C(=O)[C@H]1NC(=O)[C@@H](NC(=O)[C@H](CCC(=O)N)NC(=O)[C@H](Cc2ccccc2)NC(=O)[C@@H](NC(=O)CCSSC1)Cc1ccc(cc1)O)CC(=O)N)CCCNC(=N)N Desmopressin
b
diff -r 000000000000 -r 85eca06eefc6 tool_dependencies.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool_dependencies.xml Thu Aug 15 03:19:26 2013 -0400
b
@@ -0,0 +1,6 @@
+<?xml version="1.0"?>
+<tool_dependency>
+    <package name="openbabel" version="2.3.2">
+        <repository changeset_revision="99a10425de93" name="package_openbabel_2_3" owner="iuc" toolshed="http://toolshed.g2.bx.psu.edu" />
+    </package>
+</tool_dependency>