view Haplophyle.xml @ 2:d6281dc90e20 draft default tip

Uploaded
author dereeper
date Wed, 09 Jun 2021 16:54:15 +0000
parents 6f11162b6fa2
children
line wrap: on
line source

<tool id="haplophyle" name="Haplophyle" version="1.0.0">
    
    <!-- [REQUIRED] Tool description displayed after the tool name -->
    <description>Generates haplotype network</description>
    
    <!-- [OPTIONAL] 3rd party tools, binaries, modules... required for the tool to work -->
    <requirements>
        <requirement type="binary">perl</requirement>
        <requirement type="package" version="1.6.924">perl-bioperl</requirement>
		<requirement type="package" version="8.0.112">java-jdk</requirement>
    </requirements>
    

    <!-- [STRONGLY RECOMMANDED] Exit code rules -->
    <stdio>
        <!-- [HELP] If no exit code rule is defined, the tool will stop if anything is written to STDERR -->
        <exit_code range="1:" level="fatal" />
    </stdio>    

    <!-- [REQUIRED] The command to execute -->
    <command interpreter="perl">
	Haplophyle.sh $input $fileout $dotfile $filelog
        #if str( $color.choice ) == "yes":
           $color.input2 $color.groups 
        #end if
    </command>
    <!-- [REQUIRED] Input files and tool parameters -->
    <inputs>
	<param name="input" type="data" format="fasta" optional="false" label="Haplotype sequences in Fasta" />
        <conditional name="color">
           <param name="choice" type="boolean" truevalue="yes" falsevalue="no" label="Group colorization?"/>
           <when value="no">
           </when>
           <when value="yes">
 	      <param name="input2" type="data" format="txt" optional="true" label="Haplotype sequences and individuals carrying the haplotype" help="See example below"/>
              <param name="groups" type="data" format="txt" optional="true" label="Groups" help="Semicolon separated file (ind;group)"/>
           </when>
        </conditional>
    </inputs>
    
    <!-- [REQUIRED] Output files -->
    <outputs>
	<data name="fileout" format="json" label="JSON for Cytoscape" />
	<data name="dotfile" format="txt" label="Dot file" />
	<data name="filelog" format="txt" label="Logfile" />
    </outputs>

    <!-- [OPTIONAL] Tests to be run manually by the Galaxy admin -->
    <tests>
        <!-- [HELP] Test files have to be in the ~/test-data directory -->
        <test>
            <param name="input" value="haplotype.fasta" />
            <conditional name="color">
               <param name="choice" value="yes" />
               <param name="input2" value="haplotype.txt" />
               <!--param name="groups" value="" /-->
            </conditional>
            <output name="fileout" file="output.json" compare="sim_size" delta="0"/>
            <output name="dotfile" file="dotfile.txt" compare="sim_size" delta="0"/>
        </test>
        <test>
            <param name="input" value="haplotype.fasta" />
            <conditional name="color">
               <param name="choice" value="no" />
            </conditional>
            <output name="fileout" file="output.json" compare="sim_size" delta="20"  />
            <output name="dotfile" file="dotfile.txt" compare="sim_size" delta="0" />
        </test>
    </tests>

    
    <!-- [OPTIONAL] Help displayed in Galaxy -->
    <help><![CDATA[

.. class:: infomark

**Authors**     Gautier Sarah : Haplophyle_

.. _Haplophyle: http://haplophyle.cirad.fr/Haplophyle/

.. class:: infomark

**Galaxy integration** Provided by Southgreen & Dereeper Alexis (IRD) & Marcon Valentin (IFB & INRA)

.. class:: infomark

**Support** For any questions about Galaxy integration, please send an e-mail to alexis.dereeper@ird.fr

---------------------------------------------------

================
Haplophyle
================

-----------
Description
-----------

  | Create haplotype network from haplotype sequences

----------
Input file
----------

Haplotype fasta file
	Haplotype fasta file with haplotype sequences and proportion
Haplotype sequences and their individuals
	Haplotype sequences and list of individuals holding the haplotype

Groups

------------
Output files
------------

JSON file for Cytoscape
Dot file
Log file

---------------------------------------------------

---------------
Working example
---------------

Input files
===========

Haplotype fasta file
----------------------------

::

	>haplo1|1
	AGAGGCCCATT
	>haplo2|1
	CGAGGTCCATT
	>haplo3|1
	CGGAGCCCATT
	>haplo4|2
	AGAGGTCTATT
	>haplo5|1
	CGAGGTCTATT
	>haplo6|7
	AGAGGTCCATT
	>haplo7|3
	CAAGATCCATC
	>haplo8|1
	CGAGGTTCATT
	>haplo9|1
	CGGAGCCCGTT
	>haplo10|1
	CGAGGCCCATT
	>haplo11|1
	AGAGGTTCATT
	>haplo12|38
	CAAGGTCCATT
	>haplo13|3
	CAAGGTCCACT
	>haplo14|1
	AGGAGCCCATT


Haplotype sequences and their individuals
----------------------------------------------

::

        haplo4:2:RS10_1,RS10_2,
        GAGTGGGTTGCTTCCTTGCGTAGCCATCCGCCAACGACTGT
        haplo5:2:RC3_1,RC3_2,
        AGGTATACTGCCTGCTCGCGTAGTCAGCCGCCGACGGCTGG
        haplo6:2:RS8_1,RS8_2,
        GAGTGGGTTGCTTCCTTGCGTAGCCATCCACCAACGACTGT
        haplo7:2:sativa_1,sativa_2,
        GAGTGGGCTGCTTCCTCGCGTAGTCAGCCGCCGACAGCTGG



Output files
============

output.json
----------------------------

::

	{"elements": {"nodes": [{ "data": { "id": "MV1", "width": 0.1} },
	{ "data": { "id": "MV2", "width": 0.1} },
	{ "data": { "id": "MV3", "width": 0.1} },
	{ "data": { "id": "haplo6", "width": 0.8 } },
	{ "data": { "id": "haplo7", "width": 0.8 } },
	{ "data": { "id": "haplo8", "width": 0.8 } }],
	"edges": [
	{ "data": { "id": "haplo4MV1", "weight": 1, "source": "haplo4", "target": "MV1"} },
	{ "data": { "id": "haplo3haplo4", "weight": 1, "source": "haplo3", "target": "haplo4"} },
	{ "data": { "id": "haplo5MV3", "weight": 1, "source": "haplo5", "target": "MV3"} },
	{ "data": { "id": "MV1MV2", "weight": 1, "source": "MV1", "target": "MV2"} },
	{ "data": { "id": "haplo8MV3", "weight": 1, "source": "haplo8", "target": "MV3"} }]}}


dotfile.txt
----------------------------

::

	graph G {
	overlap="scale";
	outputMode="nodesfirst";
	MV1 [shape="circle", color="red", width=0.1, height=0.1,fixedsize=true];
	MV2 [shape="circle", color="red", width=0.1, height=0.1,fixedsize=true];
	haplo2 [shape="circle",style="filled", color="green" , imagescale="both", width=0.8, height=0.8,fixedsize=true];
	haplo4 [shape="circle",style="filled", color="green" , imagescale="both", width=0.8, height=0.8,fixedsize=true];
	haplo8 [shape="circle",style="filled", color="green" , imagescale="both", width=0.8, height=0.8,fixedsize=true];
	haplo7 -- MV2 [len=0.2];
	haplo1 -- haplo2 [len=0.2];
	haplo4 -- MV1 [len=0.2];
	MV2 -- MV3 [len=0.6];
	haplo5 -- MV3 [len=0.8];
	haplo8 -- MV3 [len=1,label="length: 24.0",color="red"];
	}

        


    ]]></help>

</tool>