diff tools/mira4/mira4_mapping.xml @ 6:626d5cfd01aa draft

Uploaded v0.0.1 preview 6, support for fragment length (using mira4_validator.py)
author peterjc
date Mon, 21 Oct 2013 12:01:47 -0400
parents ffefb87bd414
children 902f01c1084b
line wrap: on
line diff
--- a/tools/mira4/mira4_mapping.xml	Tue Oct 15 12:07:34 2013 -0400
+++ b/tools/mira4/mira4_mapping.xml	Mon Oct 21 12:01:47 2013 -0400
@@ -1,7 +1,6 @@
 <tool id="mira_4_0_mapping" name="MIRA v4.0 mapping" version="0.0.1">
     <description>Maps Sanger, Roche 454, Solexa/Illumina, Ion Torrent and PacBio reads</description>
     <requirements>
-        <requirement type="python-module">Bio</requirement>
         <requirement type="binary">mira</requirement>
         <requirement type="package" version="4.0">MIRA</requirement>
     </requirements>
@@ -38,13 +37,27 @@
                 <option value="pcbiohq">PacBio high quality (corrected)</option>
                 <option value="text">Synthetic reads (database entries, consensus sequences, artifical reads, etc)</option>
             </param>
-            <param name="segment_placement" type="select" label="Pairing type (segment placing)">
-                <option value="">None (e.g. single end sequencing)</option>
-                <option value="FR">---&gt; &lt;--- (e.g. Sanger capillary or Solexa/Illumina paired-end library)</option>
-                <option value="RF">&lt;--- ---&gt; (e.g. Solexa/Illumina mate-pair library)</option>
-                <option value="SB">2---&gt; 1---&gt; (e.g. Roche 454 paired-end libraries or IonTorrent long-mate; see note)</option>
-                <option value="?">Unknown or not relevant (e.g. primer walking with Sanger capillary sequencing)</option>
-            </param>
+            <conditional name="segments">
+                <param name="type" type="select" label="Are these paired reads?">
+                    <option value="paired">Paired reads</option>
+                    <option value="none">Single reads or not relevant (e.g. primer walking with Sanger capillary sequencing)</option>
+                </param>
+                <when value="paired">
+                    <param name="placement" type="select" label="Pairing type (segment placing)">
+                        <option value="FR">---&gt; &lt;--- (e.g. Sanger capillary or Solexa/Illumina paired-end library)</option>
+                        <option value="RF">&lt;--- ---&gt; (e.g. Solexa/Illumina mate-pair library)</option>
+                        <option value="SB">2---&gt; 1---&gt; (e.g. Roche 454 paired-end libraries or IonTorrent long-mate; see note)</option>
+                    </param>
+                    <param name="naming" type="select" label="Pair naming convention">
+                        <option value="solexa">Solexa/Illumina (using '/1' and '/2' suffixes)</option>
+                        <option value="FR">Forward/Reverse scheme (using '.f*' and '.r*' suffixes)</option>
+                        <option value="tigr">TIGR scheme (using 'TF*' and 'TR*' suffixes)</option>
+                        <option value="sanger">Sanger scheme (see notes)</option>
+                        <option value="stlouis">St. Louis scheme (see notes)</option>
+                    </param>
+                </when>
+                <when value="none" /><!-- no further questions -->
+            </conditional>
             <param name="filenames" type="data" format="fastq,mira" multiple="true" required="true" label="Read file(s)"
                    help="Multiple files allowed, for example paired reads can be given as two files (MIRA looks at read names to identify pairs)." />
         </repeat>
@@ -104,9 +117,13 @@
 ##This is perhaps redundant as MIRA defaults to StrainX for the reads:
 strain = StrainX
 #end if
-#if str($rg.segment_placement) != ""
 ##Record the segment placement (if any)
-segmentplacement = ${rg.segment_placement}
+#if str($rg.segments.type) == "paired"
+segmentplacement = ${rg.segments.placement}
+segmentnaming = ${rg.segments.naming}
+#end if
+#if str($rg.segments.type) == "none"
+segmentplacement = ?
 #end if
 ##MIRA will accept multiple filenames on one data line, or multiple data lines
 #for $f in $rg.filenames
@@ -160,18 +177,35 @@
 
 It is particularly suited to small genomes such as bacteria.
 
-**Notes**
+
+**Notes on paired reads**
 
 .. class:: warningmark
 
-Note that the raw data for Roche 454 and Ion Torrent paired-end libraries
-sequences a circularised fragment such that the raw data starts with the
-end of the fragment, a linker, then the start of the fragment. This means
-both the start and end are sequenced from the same strand, and thus should
-be given to MIRA as orientation "2---&gt; 1---&gt;". However, in order to
-use this data with traditional tools expecting Sanger capillary style
-libraries which expect "---&gt; &lt;---" your FASTQ files may have been
-pre-processed to mimic this by reverse complementing one of the pair.
+MIRA uses read naming conventions to identify paired read partners
+(and does not care about their order in the input files). In most cases,
+the Solexa/Illumina setting is fine. For Sanger capillary sequencing,
+you may need to rename your reads to match one of the standard conventions
+supported by MIRA. For Roche 454 or Ion Torrent the appropriate settings
+depend on how the FASTQ file was produced:
+
+* If using Roche's ``sffinfo`` or older versions of ``sff_extract``
+  to convert SFF files to FASTQ, your reads will probably have the
+  ``---&gt; &lt;---`` orientation and use the ``.f`` and ``.r``
+  suffixes (FR naming).
+
+* If using a recent version of ``sff_extract``, then the ``/1`` and ``/2``
+  suffixes are used (Solexa/Illumina style naming) and the original
+  ``2---&gt; 1---&gt;`` orientation is preserved.
+
+The reason for this is the raw data for Roche 454 and Ion Torrent paired-end
+libraries sequences a circularised fragment such that the raw data begins
+with the end of the fragment, a linker, then the start of the fragment.
+This means both the start and end are sequenced from the same strand, and
+have the orientation ``2---&gt; 1---&gt;``. However, in order to use the data
+with traditional tools expecting Sanger capillary style ``---&gt; &lt;---``
+orientation it was common to reverse complement one of the pair to mimic this.
+
 
 **Citation**