diff windowBed.xml @ 8:0d3aa592ce27 draft

Uploaded
author iuc
date Tue, 28 Apr 2015 22:56:34 -0400
parents
children a2d4c30ba2f9
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/windowBed.xml	Tue Apr 28 22:56:34 2015 -0400
@@ -0,0 +1,107 @@
+<tool id="bedtools_windowbed" name="WindowBed" version="@WRAPPER_VERSION@.0">
+    <description></description>
+    <macros>
+        <import>macros.xml</import>
+    </macros>
+    <expand macro="requirements" />
+    <expand macro="stdio" />
+    <command>
+<![CDATA[
+        bedtools window
+        #if $inputA.ext == "bam":
+            -abam $inputA
+        #else:
+            -a $inputA
+        #end if
+        -b $inputB
+        $bed
+        $strandB
+        #if $addition.addition_select == 'window':
+            -w $addition.w
+        #elif $addition.addition_select == 'lr':
+            -l $addition.l
+            -r $addition.r
+        #end if
+        $original
+        $number
+        $nooverlaps
+        $header
+        > $output
+]]>
+    </command>
+    <inputs>
+        <param format="bed,bam,vcf,gff,gff3" name="inputA" type="data" label="BED/VCF/GFF/BAM file"/>
+        <param format="bed,gff,vcf,gff3" name="inputB" type="data" label="BED/VCF/GFF file"/>
+        <param name="bed" type="boolean" checked="false" truevalue="-bed" falsevalue=""
+            label="When using BAM input, write output as BED. The default is to write output in BAM when using a bam file"
+            help="(-bed)" />
+        <conditional name="addition">
+            <param name="addition_select" type="select" label="Choose what you want to do">
+                <option value="window">Add Base pairs for **both** upstream and downstream of each entry in A when searching for overlaps in B</option>
+                <option value="lr">Add Base pairs **separately** for upstream and downstream of each entry in A when searching for overlaps in B</option>
+            </param>
+            <when value="window">
+                <param name="w" type="integer" value="1000" label="Base pairs to add upstream and downstream" />
+            </when>
+            <when value="lr">
+                <param name="l" type="integer" value="1000"
+                    label="Base pairs added upstream (left) of each entry in A when searching for overlaps in B"
+                    help="Allows one to create assymetrical “windows”. Default is 1000bp. (-l)" />
+                <param name="r" type="integer" value="1000"
+                    label="Base pairs added downstream (right) of each entry in A when searching for overlaps in B"
+                    help="Allows one to create assymetrical “windows”. Default is 1000bp. (-r)" />
+            </when>
+        </conditional>
+        <param name="strandB" type="select" label="Calculation based on strandedness?">
+            <option value="" selected="True">Report any hit in B</option>
+            <option value="-sm">Only report hits in B that overlap A on the **same** strand</option>
+            <option value="-Sm">Only report hits in B that overlap A on the **opposite** strand</option>
+        </param>
+        <param name="original" type="boolean" checked="false" truevalue="-u" falsevalue=""
+            label="Write original A entry once if any overlaps found in B"
+            help="In other words, just report the fact at least one overlap was found in B. (-u)" />
+        <param name="number" type="boolean" checked="false" truevalue="-c" falsevalue=""
+            label="For each entry in A, report the number of hits in B"
+            help="Reports 0 for A entries that have no overlap with B (-c)" />
+        <param name="nooverlaps" type="boolean" checked="false" truevalue="-v" falsevalue=""
+            label="Only report those entries in A that have no overlaps with B" help="(-v)" />
+        <expand macro="print_header" />
+    </inputs>
+    <outputs>
+        <data format_source="inputA" name="output" metadata_source="inputA" label=""/>
+    </outputs>
+    <tests>
+        <test>
+            <param name="inputA" value="windowBedA.bed" ftype="bed" />
+            <param name="inputB" value="windowBedB.bed" ftype="bed" />
+            <output name="output" file="windowBed_result1.bed" ftype="bed" />
+        </test>
+        <test>
+            <param name="inputA" value="windowBedA.bed" ftype="bed" />
+            <param name="inputB" value="windowBedB.bed" ftype="bed" />
+            <param name="addition_select" value="window" />
+            <param name="w" value="5000" />
+            <output name="output" file="windowBed_result2.bed" ftype="bed" />
+        </test>
+        <test>
+            <param name="inputA" value="windowBedA.bed" ftype="bed" />
+            <param name="inputB" value="windowBedB.bed" ftype="bed" />
+            <param name="addition_select" value="lr" />
+            <param name="l" value="200" />
+            <param name="r" value="20000" />
+            <output name="output" file="windowBed_result2.bed" ftype="bed" />
+        </test>
+    </tests>
+    <help>
+<![CDATA[
+**What it does**
+
+Similar to bedtools intersect, window searches for overlapping features in A and B. However, window adds a specified number (1000, by default) of base pairs upstream and downstream of each feature in A. In effect, this allows features in B that are “near” features in A to be detected.
+
+.. image:: $PATH_TO_IMAGES/window-glyph.png
+
+@REFERENCES@
+]]>
+    </help>
+    <expand macro="citations" />
+</tool>