view bcftools_call.xml @ 3:5337db17a5f7 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/bcftools commit 44bebb8a97d64015cbba59f0663e2541035112b6
author iuc
date Mon, 03 Oct 2016 12:19:38 -0400
parents 8959eda17fca
children 6d2a5f0859cf
line wrap: on
line source

<?xml version='1.0' encoding='utf-8'?>
<tool name="bcftools @EXECUTABLE@" id="bcftools_@EXECUTABLE@" version="@VERSION@.1">
    <description>SNP/indel variant calling from VCF/BCF</description>
    <macros>
        <token name="@EXECUTABLE@">call</token>
        <import>macros.xml</import>
    </macros>
    <expand macro="requirements" />
    <expand macro="version_command" />
    <command detect_errors="aggressive"><![CDATA[
@PREPARE_ENV@
@PREPARE_INPUT_FILE@
#set $section = $sec_consensus_variant_calling.variant_calling
#set $targets_path = None
#if $section.method == 'multiallelic':
 #if $section.genotypes.constrain == 'alleles':  
  #set $section = $sec_consensus_variant_calling.variant_calling.genotypes
  @PREPARE_TARGETS_FILE@
 #end if
#end if

bcftools @EXECUTABLE@

#set $section = $sec_consensus_variant_calling.variant_calling
#if $section.method == 'multiallelic':
 -m
 #if str($section.gvcf) != '':
  --gvcf $section.gvcf
 #end if
 #if $section.genotypes.constrain == 'alleles':  
  --constrain alleles $section.genotypes.insert_missed
  #set $section = $sec_consensus_variant_calling.variant_calling.genotypes
  @TARGETS_FILE@
 #else
   #if $section.genotypes.constrain == 'trio':
    --constrain trio
    #if $section.genotypes.novel_rate:
     --novel-rate '$section.genotypes.novel_rate'
    #end if
   #end if
   #set $section = $sec_consensus_variant_calling.variant_calling.genotypes
   @TARGETS@
 #end if
#else 
 -c
#end if

#set $section = $sec_restrict
@REGIONS@
@SAMPLES@

#set $section = $sec_consensus_variant_calling
#if $section.pval_threshold:
  --pval-threshold  "$section.pval_threshold"
#end if
#if $section.prior:
  --prior "$section.prior"
#end if

## File format section
#set $section = $sec_file_format
#if $section.ploidy:
  --ploidy "${section.ploidy}"
#end if
#if $section.ploidy_file:
  --ploidy-file "${section.ploidy_file}"
#end if

## Input/output section
#set $section = $sec_input_output
${section.keep_alts}
## #if section.format_fields:
##   --format-fields "${section.format_fields}"
## #end if
${section.keep_masked_ref}
#if $section.skip_variants:
  --skip-variants "${section.skip_variants}"
#end if
${section.variants_only}

@OUTPUT_TYPE@
@THREADS@

## Primary Input/Outputs
@INPUT_FILE@
> "$output_file"
]]>
    </command>
    <inputs>
        <expand macro="macro_input" />
        <section name="sec_restrict" expanded="false" title="Restrict to">
            <expand macro="macro_regions" />
            <expand macro="macro_samples" />
        </section>
        <section name="sec_consensus_variant_calling" expanded="true" title="Consensus/variant calling Options">
            <conditional name="variant_calling">
                <param name="method" type="select" label="calling method">
                    <option value="multiallelic">Multiallelic and rare-variant Caller</option>
                    <option value="consensus">Consensus Caller</option>
                </param>
                <when value="multiallelic">
                    <conditional name="genotypes">
                        <param name="constrain" type="select" label="Constrain" help="one of: alleles, trio (see manual)">
                            <option value="none">Do not constrain</option>
                            <option value="alleles">alleles - call genotypes given alleles</option>
                            <option value="trio">trio - call genotypes given the father-mother-child constraint</option>
                        </param>
                        <when value="none">
                            <expand macro="macro_targets" />
                        </when>
                        <when value="alleles">
                            <expand macro="macro_targets_file"/>
                            <param name="insert_missed" type="boolean" truevalue="--insert-missed" falsevalue="" label="Insert Missed" help="output also sites missed by mpileup but present in -T" />
                        </when>
                        <when value="trio">
                            <expand macro="macro_targets" />
                            <param name="novel_rate" type="float" label="Novel Rate" value="1e-8,1e-9,1e-9" optional="true" help="likelihood of novel mutation for constrained trio calling, see man page for details" />
                        </when>
                    </conditional>
                    <param name="gvcf" type="integer" label="gvcf" optional="True" help="group non-variant sites into gVCF blocks by minimum per-sample DP" />
                </when>
                <when value="consensus">
                    <conditional name="genotypes">
                        <param name="constrain" type="select" label="Constrain" help="one of: alleles, trio (see manual)">
                            <option value="none">Do not constrain</option>
                            <option value="trio">trio - call genotypes given the father-mother-child constraint</option>
                        </param>
                        <when value="none">
                        </when>
                        <when value="trio">
                            <param name="novel_rate" type="float" label="Novel Rate" value="1e-8,1e-9,1e-9" optional="true" help="likelihood of novel mutation for constrained trio calling, see man page for details" />
                        </when>
                    </conditional>
                    <expand macro="macro_targets" />
                </when>
            </conditional>
            <param name="pval_threshold" type="float" label="Pval Threshold" value="0.5" optional="True" help="variant if P(ref|D)&lt;FLOAT with -c" />
            <param name="prior" type="float" label="Prior" value="1.1e-3" optional="True" help="mutation rate (use bigger for greater sensitivity)" />
        </section>
        <section name="sec_file_format" expanded="false" title="File format Options">
            <param name="ploidy" type="select" label="Select Predefined Ploidy" optional="true">
                <option value="GRCh37">GRCh37 - Human Genome reference assembly GRCh37 / hg19</option>
                <option value="GRCh38">GRCh37 - Human Genome reference assembly GRCh38 / hg38</option>
                <option value="X">X - Treat male samples as haploid and female as diploid regardless of the chromosome name</option>
                <option value="Y">Y - Treat male samples as haploid and female as no-copy, regardless of the chromosome name"</option>
                <option value="1">1 - Treat all samples as haploid</option>
            </param>
            <param name="ploidy_file" type="data" format="tabular" label="Ploidy File" optional="True" help="space/tab-delimited list of CHROM,FROM,TO,SEX,PLOIDY" />
            <expand macro="macro_regions" />
            <expand macro="macro_samples" />
        </section>
        <section name="sec_input_output" expanded="false" title="Input/output Options">
            <param name="keep_alts" type="boolean" truevalue="--keep-alts" falsevalue="" label="Keep Alts" help="keep all possible alternate alleles at variant sites" />
            <param name="format_fields" type="text" value="" optional="true" label="Format Fields" 
               help="output format fields: GQ,GP" >
                <validator type="regex" message="FORMAT terms separated by commas">^([A-Za-z]+(,[A-Za-z]+)*)?$</validator>
            </param>
            <param name="keep_masked_ref" type="boolean" truevalue="--keep-masked-ref" falsevalue="" label="Keep Masked Ref" help="keep sites with masked reference allele (REF=N)" />
            <param name="skip_variants" type="select" label="Skip Variants" optional="True" help="skip indels/snps">
                <option value="indels">indels</option>
                <option value="snps">snps</option>
            </param>
            <param name="variants_only" type="boolean" truevalue="--variants-only" falsevalue="" label="Variants Only" help="output variant sites only" />
        </section>
        <expand macro="macro_select_output_type" />
    </inputs>
    <outputs>
        <expand macro="macro_vcf_output"/>
    </outputs>
    <tests>
        <test>
            <param name="input_file" ftype="vcf" value="mpileup.vcf" />
            <param name="method" value="multiallelic" />
            <param name="variants_only" value="true" />
            <param name="output_type" value="v" />
            <output name="output_file">
                <assert_contents>
                    <has_text text="DP4=2,4,8,11;MQ=49" />
                </assert_contents>
            </output>
        </test>
        <test>
            <param name="input_file" ftype="vcf" value="mpileup.vcf" />
            <param name="method" value="multiallelic" />
            <param name="gvcf" value="0" />
            <param name="output_type" value="v" />
            <output name="output_file">
                <assert_contents>
                    <has_text text="MinDP" />
                    <has_text text="DP4=2,4,8,11;MQ=49" />
                </assert_contents>
            </output>
        </test>
        <test>
            <param name="input_file" ftype="vcf" value="mpileup.X.vcf" />
            <param name="method" value="multiallelic" />
            <param name="ploidy_file" value="mpileup.ploidy" />
            <param name="samples_file" value="mpileup.samples" />
            <param name="output_type" value="v" />
            <output name="output_file">
                <assert_contents>
                    <has_text text="DP4=2,4,8,11;MQ=49" />
                </assert_contents>
            </output>
        </test>
        <test>
            <param name="input_file" ftype="vcf" value="mpileup.X.vcf" />
            <param name="method" value="consensus" />
            <param name="output_type" value="v" />
            <param name="ploidy_file" value="mpileup.ploidy" />
            <output name="output_file">
                <assert_contents>
                    <has_text text="DP4=2,4,8,11" />
                    <has_text text="PV4=1,1,1,1" />
                </assert_contents>
            </output>
        </test>
    </tests>
    <help><![CDATA[
==================================
 bcftools @EXECUTABLE@
==================================

SNP/indel variant calling from VCF/BCF. To be used in conjunction with samtools mpileup. 

  - This command replaces the former "bcftools view" caller. 
  - Some of the original functionality has been temporarily lost in the process of transition to htslib, but will be added back on popular demand. 
  - The original calling model can be invoked with the -c option.

@REGIONS_HELP@
@TARGETS_HELP@

@BCFTOOLS_MANPAGE@#@EXECUTABLE@

@BCFTOOLS_WIKI@
]]>
    </help>
    <expand macro="citations" />
</tool>