Mercurial > repos > iuc > snpsift
diff snpSift_filter.xml @ 1:98708b88af9f draft
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tool_collections/snpsift/snpsift commit 21b46ae2c90ba7e569b2b3a9eaf938f8dedb2c31
author | iuc |
---|---|
date | Tue, 07 Jun 2016 10:04:09 -0400 |
parents | 9e8280e19338 |
children | bf8c1526871b |
line wrap: on
line diff
--- a/snpSift_filter.xml Thu Jan 22 08:39:07 2015 -0500 +++ b/snpSift_filter.xml Tue Jun 07 10:04:09 2016 -0400 @@ -1,31 +1,41 @@ -<tool id="snpSift_filter" name="SnpSift Filter" version="4.0.0"> - <options sanitize="False" /> +<tool id="snpSift_filter" name="SnpSift Filter" version="@WRAPPER_VERSION@.0"> <description>Filter variants using arbitrary expressions</description> - <expand macro="requirements" /> <macros> <import>snpSift_macros.xml</import> </macros> - <command> - java -Xmx6G -jar \$SNPEFF_JAR_PATH/SnpSift.jar filter -f $input -e $exprFile $inverse + <expand macro="requirements" /> + <expand macro="stdio" /> + <expand macro="version_command" /> + + <command><![CDATA[ + java -Xmx6G -jar "\$SNPEFF_JAR_PATH/SnpSift.jar" filter -f "$input" -e "$exprFile" $inverse #if $filtering.mode == 'field': #if $filtering.replace.pass: --pass - #if $filtering.replace.filterId and len($filtering.replace.filterId.__str__.strip()) > 0: + #if $filtering.replace.filterId and len(str($filtering.replace.filterId).strip()) > 0: --filterId "$filtering.replace.filterId" #end if #end if - #if $filtering.addFilter and len($filtering.addFilter.__str__.strip()) > 0: + #if $filtering.addFilter and len(str($filtering.addFilter).strip()) > 0: --addFilter "$filtering.addFilter" #end if - #if $filtering.rmFilter and len($filtering.rmFilter.__str__.strip()) > 0: + #if $filtering.rmFilter and len(str($filtering.rmFilter).strip()) > 0: --rmFilter "$filtering.rmFilter" #end if #end if - > $output + > "$output" +]]> </command> + <configfiles> + <configfile name="exprFile"> +$expr#slurp + </configfile> + </configfiles> <inputs> <param format="vcf" name="input" type="data" label="Variant input file in VCF format"/> - <param name="expr" type="text" label="Filter criteria" size="160" help="Need help? See below a few examples." /> + <param name="expr" type="text" label="Filter criteria" help="Need help? See below a few examples." > + <sanitizer sanitize="False"/> + </param> <param name="inverse" type="boolean" truevalue="--inverse" falsevalue="" checked="false" label="Inverse filter" help="Show lines that do not match filter expression" /> <conditional name="filtering"> <param name="mode" type="select" label="Filter mode"> @@ -39,25 +49,19 @@ help="appends an ID tag to non-matching entry FILTER "/> <when value="no"/> <when value="yes"> - <param name="filterId" type="text" value="" optional="true" label="ID appended to non-matching (##FILTER tag in header and FILTER VCF field)." size="10" + <param name="filterId" type="text" value="" optional="true" label="ID appended to non-matching (##FILTER tag in header and FILTER VCF field)." help="Default ID is 'SnpSift'"/> </when> </conditional> - <param name="addFilter" type="text" value="" optional="true" label="Add a string to FILTER VCF field if 'expression' is true." size="10"/> - <param name="rmFilter" type="text" value="" optional="true" label="Remove a string from FILTER VCF field if 'expression' is true (and 'str' is in the field)." size="10"/> + <param name="addFilter" type="text" value="" optional="true" label="Add a string to FILTER VCF field if 'expression' is true." /> + <param name="rmFilter" type="text" value="" optional="true" label="Remove a string from FILTER VCF field if 'expression' is true (and 'str' is in the field)." /> </when> </conditional> </inputs> - <configfiles> - <configfile name="exprFile"> -$expr#slurp - </configfile> - </configfiles> <outputs> <data format="vcf" name="output" /> </outputs> - <expand macro="stdio" /> <tests> <test> <param name="input" ftype="vcf" value="test01.vcf"/> @@ -85,7 +89,7 @@ <test> <param name="input" ftype="vcf" value="test01.vcf"/> - <param name="expr" value="(POS >= 20175) & (POS <= 35549)"/> + <param name="expr" value="(POS >= 20175) & (POS <= 35549)"/> <param name="mode" value="entries"/> <output name="output"> <assert_contents> @@ -100,7 +104,7 @@ <test> <param name="input" ftype="vcf" value="test01.vcf"/> - <param name="expr" value="( DP >= 5 )"/> + <param name="expr" value="( DP >= 5 )"/> <param name="mode" value="entries"/> <output name="output"> <assert_contents> @@ -111,7 +115,7 @@ </output> </test> </tests> - <help> + <help><![CDATA[ **SnpSift filter** @@ -123,7 +127,7 @@ :: - ( CHROM = 'chr1' ) & ( POS > 1000000 ) & ( POS < 2000000 ) + ( CHROM = 'chr1' ) & ( POS > 1000000 ) & ( POS < 2000000 ) - *Filter value is either 'PASS' or it is missing*: @@ -131,11 +135,13 @@ (FILTER = 'PASS') | ( na FILTER ) - - *I want to filter lines with an EFF of 'frameshift_variant' ( for vcf files using Sequence Ontology terms )*: + - *I want to filter lines with an ANN annotation EFFECT of 'frameshift_variant' ( for vcf files using Sequence Ontology terms )*: :: - ( EFF[*].EFFECT = 'frameshift_variant' ) + ( ANN[*].EFFECT has 'frameshift_variant' ) + + **Important** According to the specification, there can be more than one EFFECT separated by & (e.g. 'missense_variant&splice_region_variant', thus using has operator is better than using equality operator (=). For instance 'missense_variant&splice_region_variant' = 'missense_variant' is false, whereas 'missense_variant&splice_region_variant' has 'missense_variant' is true. - *I want to filter lines with an EFF of 'FRAME_SHIFT' ( for vcf files using Classic Effect names )*: @@ -147,31 +153,31 @@ :: - ( QUAL > 30 ) + ( QUAL > 30 ) - *...but we also want InDels that have quality 20 or more*: :: - (( exists INDEL ) & (QUAL >= 20)) | (QUAL >= 30 ) + (( exists INDEL ) & (QUAL >= 20)) | (QUAL >= 30 ) - *...or any homozygous variant present in more than 3 samples*: :: - (countHom() > 3) | (( exists INDEL ) & (QUAL >= 20)) | (QUAL >= 30 ) + (countHom() > 3) | (( exists INDEL ) & (QUAL >= 20)) | (QUAL >= 30 ) - *...or any heterozygous sample with coverage 25 or more*: :: - ((countHet() > 0) & (DP >= 25)) | (countHom() > 3) | (( exists INDEL ) & (QUAL >= 20)) | (QUAL >= 30 ) + ((countHet() > 0) & (DP >= 25)) | (countHom() > 3) | (( exists INDEL ) & (QUAL >= 20)) | (QUAL >= 30 ) - *I want to keep samples where the genotype for the first sample is homozygous variant and the genotype for the second sample is reference*: :: - (isHom( GEN[0] ) & isVariant( GEN[0] ) & isRef( GEN[1] )) + (isHom( GEN[0] ) & isVariant( GEN[0] ) & isRef( GEN[1] )) **For information regarding HGVS and Sequence Ontology terms versus classic names**: @@ -183,7 +189,7 @@ @EXTERNAL_DOCUMENTATION@ http://snpeff.sourceforge.net/SnpSift.html#filter -@CITATION_SECTION@ - +]]> </help> + <expand macro="citations" /> </tool>