diff jbrowse2.xml @ 97:74074746ccd8 draft

planemo upload for repository https://github.com/usegalaxy-eu/temporary-tools/tree/master/jbrowse2 commit 1c04ea76330d0148a7682b3c26846e5a5df21f99
author fubar
date Sat, 01 Jun 2024 05:37:13 +0000
parents 4c517a0041a8
children b1260bca5fdc
line wrap: on
line diff
--- a/jbrowse2.xml	Thu Apr 25 07:25:52 2024 +0000
+++ b/jbrowse2.xml	Sat Jun 01 05:37:13 2024 +0000
@@ -3,12 +3,23 @@
     <macros>
         <import>macros.xml</import>
     </macros>
-    <expand macro="edamInc" />
+    <expand macro="edamInc"/>
     <xrefs>
         <xref type="bio.tools">jbrowse2</xref>
     </xrefs>
     <expand macro="requirements" />
+    <expand macro="creators"/>
     <version_command>python '${__tool_directory__}/jbrowse2.py' --version</version_command>
+    <required_files>
+        <include path="autogenJB2.py" />
+        <include path="blastxml_to_gapped_gff3.py" />
+        <include path="convertMAF.sh" />
+        <include path="gff3_rebase.py" />
+        <include path="jb2_urlconf.py" />
+        <include path="jb2_webserver.py" />
+        <include path="jbrowse2.py" />
+        <include path="maf2bed.py" />
+    </required_files>
     <command detect_errors="aggressive"><![CDATA[
 mkdir -p '$output.files_path' &&
 cp '$trackxml' '$output.files_path/galaxy.xml' &&
@@ -19,9 +30,9 @@
         #if $autoCollection[$key].is_collection:
             #set subCol=$autoCollection[$key]
             #set pafs=[($subCol[x],$subcol[x].ext,x) for x in $subCol.keys() if $subCol[x].ext == 'paf']
+            #set refs=[($subCol[x],$subcol[x].ext,x) for x in $subCol.keys() if $subCol[x].ext in ['fasta.gz','fasta']]
             #if len($pafs) > 0:
                  --pafmeta '$pafs[0]'
-                #set refs = [($pafs[0][2],$subCol[x],x) for x in $subCol.keys() if $subCol[x].ext == 'fasta']
                 #for $ref in $refs:
                  --pafreferencemeta '$ref'
                 #end for
@@ -310,67 +321,39 @@
 ]]></configfile>
     </configfiles>
     <inputs>
-        <repeat name="assemblies" min="1"
-            title="Genome reference to provide display coordinates for this set of tracks"
-            help="JBrowse2 can show a set of tracks for each of multiple genome reference fasta files">
+        <repeat name="assemblies" min="1" title="Genome reference to provide display coordinates for this set of tracks" help="JBrowse2 can show a set of tracks for each of multiple genome reference fasta files">
             <conditional name="reference_genome">
-                <param help="Select a built in, history or remote tabix URI for the reference track"
-                    label="Reference genome source" name="genome_type_select" type="select">
+                <param name="genome_type_select" type="select" label="Reference genome source" help="Select a built in, history or remote tabix URI for the reference track">
                     <option selected="True" value="indexed">Use a Galaxy server built-in genome</option>
                     <option value="history">Use a genome fasta file from the current history</option>
                     <option value="uri">Provide a URI (e.g. "https://..." for a genome reference as
                         tabix bgzip with predictable index file URI</option>
                 </param>
                 <when value="indexed">
-                    <param
-                        help="If not listed, add a custom genome, use a history genome or a remote URI tabix genome"
-                        label="Select a built in reference genome or custom genome"
-                        name="genome"
-                        type="select"
-                        optional="true">
+                    <param name="genome" type="select" optional="true" label="Select a built in reference genome or custom genome" help="If not listed, add a custom genome, use a history genome or a remote URI tabix genome">
                         <options from_data_table="all_fasta">
-                            <filter column="2" type="sort_by" />
-                            <validator
-                                message="No genomes are available for the selected input dataset"
-                                type="no_options">
+                            <filter column="2" type="sort_by"/>
+                            <validator message="No genomes are available for the selected input dataset" type="no_options">
                             </validator>
                         </options>
                     </param>
                 </when>
                 <when value="history">
-                    <param
-                        format="fasta"
-                        label="Select the reference genome"
-                        name="genome"
-                        type="data"
-                        optional="true">
+                    <param name="genome" type="data" format="fasta" optional="true" label="Select the reference genome">
                     </param>
                 </when>
                 <when value="uri">
-                    <param
-                        label="URI pointing to tabix compressed fasta"
-                        name="uri"
-                        type="text">
+                    <param name="uri" type="text" label="URI pointing to tabix compressed fasta">
                     </param>
-                    <param
-                        label="Reference dbkey for tracks with this genome, such as hg38 or SacCer4"
-                        name="refname"
-                        type="text">
+                    <param name="refname" type="text" label="Reference dbkey for tracks with this genome, such as hg38 or SacCer4">
                     </param>
                 </when>
             </conditional>
-
             <repeat name="track_groups" title="Track Group">
-                <param label="Track Category"
-                    name="category"
-                    type="text"
-                    value="Default"
-                    help="Organise your tracks into Categories for a nicer end-user experience. You can use #date# and it will be replaced with the current date in 'yyyy-mm-dd' format,
-                which is very useful for repeatedly updating a JBrowse instance when member databases / underlying tool versions are updated."
-                    optional="False" />
+                <param name="category" type="text" value="Default" optional="False" label="Track Category" help="Organise your tracks into Categories for a nicer end-user experience. You can use #date# and it will be replaced with the current date in 'yyyy-mm-dd' format,                 which is very useful for repeatedly updating a JBrowse instance when member databases / underlying tool versions are updated."/>
                 <repeat name="data_tracks" title="Annotation Track">
                     <conditional name="data_format" label="Track Data Selection Options">
-                        <param type="select" label="Track Type" name="data_format_select">
+                        <param name="data_format_select" type="select" label="Track Type">
                             <option value="bam">BAM track. Recommend convert to faster BED unless
                                 mapping annotation needed</option>
                             <option value="bed">BED track</option>
@@ -389,114 +372,79 @@
                             <option value="vcf">VCF SNP track</option>
                         </param>
                         <when value="blastxml">
-                            <expand macro="input_conditional" label="BlastXML Track Data"
-                                format="blastxml" />
-                            <param label="Features used in Blast Search"
-                                help="in GFF3. This is used  so we know where to map features. E.g. where results of which CDS Protein32 match up to. The query IDs in your blast results should MATCH some feature
-                            IDs in your GFF3 file. This is an optional field and is most useful if using JBrowse to display protein blast results on a DNA genome. blastn results don't need this,
-                            blastp results on a protein sequence don't need this."
-                                format="gff3"
-                                name="blast_parent"
-                                optional="true"
-                                type="data" />
-                            <param label="Minimum Gap Size"
-                                help="before a new match_part feature is created"
-                                name="min_gap"
-                                type="integer"
-                                value="10"
-                                min="2" />
-                            <param label="Is this a protein blast search?"
-                                type="boolean"
-                                name="is_protein"
-                                truevalue="true"
-                                falsevalue="false" />
-                            <expand macro="track_styling_vgp" />
-                            <expand macro="track_visibility" />
+                            <expand macro="input_conditional" label="BlastXML Track Data" format="blastxml"/>
+                            <param name="blast_parent" type="data" format="gff3" optional="true" label="Features used in Blast Search" help="in GFF3. This is used  so we know where to map features. E.g. where results of which CDS Protein32 match up to. The query IDs in your blast results should MATCH some feature                             IDs in your GFF3 file. This is an optional field and is most useful if using JBrowse to display protein blast results on a DNA genome. blastn results don't need this,                             blastp results on a protein sequence don't need this."/>
+                            <param name="min_gap" type="integer" min="2" value="10" label="Minimum Gap Size" help="before a new match_part feature is created"/>
+                            <param name="is_protein" type="boolean" truevalue="true" falsevalue="false" label="Is this a protein blast search?"/>
+                            <expand macro="track_styling_vgp"/>
+                            <expand macro="track_visibility"/>
                         </when>
                         <when value="vcf">
-                            <expand macro="input_conditional" label="SNP Track Data"
-                                format="vcf,vcf_bgzip" />
-                            <expand macro="track_styling_vcf" />
-                            <expand macro="track_visibility" />
+                            <expand macro="input_conditional" label="SNP Track Data" format="vcf,vcf_bgzip"/>
+                            <expand macro="track_styling_vcf"/>
+                            <expand macro="track_visibility"/>
                         </when>
                         <when value="gff">
-                            <expand macro="input_conditional" label="GFF/GFF3 Track Data"
-                                format="gff,gff3" />
+                            <expand macro="input_conditional" label="GFF/GFF3 Track Data" format="gff,gff3"/>
                             <conditional name="match_part" label="match/match_part data">
-                                <param help="Match part data selection "
-                                    label="This is match/match_part data" name="match_part_select"
-                                    type="select">
+                                <param name="match_part_select" type="select" label="This is match/match_part data" help="Match part data selection ">
                                     <option selected="True" value="false">Not match/match part data</option>
                                     <option value="true">Match/match part data</option>
                                 </param>
                                 <when value="true">
-                                    <param label="Match Part Feature Type"
-                                        name="name"
-                                        type="text"
-                                        value="match"
-                                        help="Match_parts have options for the parent feature type, such as cDNA_match, match, translated_nucleotide_match, etc.
-                                    Please select the appropriate one here. You can leave empty to try autodetection (only works with CanvasFeatures track type)."
-                                        optional="True" />
+                                    <param name="name" type="text" value="match" optional="True" label="Match Part Feature Type" help="Match_parts have options for the parent feature type, such as cDNA_match, match, translated_nucleotide_match, etc.                                     Please select the appropriate one here. You can leave empty to try autodetection (only works with CanvasFeatures track type)."/>
                                 </when>
-                                <when value="false" />
+                                <when value="false"/>
                             </conditional>
-                            <expand macro="track_styling_vgp" />
-                            <expand macro="track_visibility" />
+                            <expand macro="track_styling_vgp"/>
+                            <expand macro="track_visibility"/>
                         </when>
                         <when value="bam">
-                            <expand macro="input_conditional" label="BAM Track Data" format="bam" />
-                            <expand macro="track_visibility" />
+                            <expand macro="input_conditional" label="BAM Track Data" format="bam"/>
+                            <expand macro="track_visibility"/>
                         </when>
                         <when value="bed">
-                            <expand macro="input_conditional" label="BED Track Data" format="bed" />
-                            <expand macro="track_styling_vgp" />
-                            <expand macro="track_visibility" />
+                            <expand macro="input_conditional" label="BED Track Data" format="bed"/>
+                            <expand macro="track_styling_vgp"/>
+                            <expand macro="track_visibility"/>
                         </when>
                         <when value="cram">
-                            <expand macro="input_conditional" label="CRAM Track Data" format="cram" />
-                            <expand macro="track_visibility" />
+                            <expand macro="input_conditional" label="CRAM Track Data" format="cram"/>
+                            <expand macro="track_visibility"/>
                         </when>
                         <when value="maf">
-                            <expand macro="input_conditional" label="MAF Track Data" format="maf" />
-                            <expand macro="track_styling_vgp" />
-                            <expand macro="track_visibility" />
+                            <expand macro="input_conditional" label="MAF Track Data" format="maf"/>
+                            <expand macro="track_styling_vgp"/>
+                            <expand macro="track_visibility"/>
                         </when>
                         <when value="bigwig">
-                            <expand macro="input_conditional" label="BigWig Track Data"
-                                format="bigwig" />
-                            <expand macro="track_visibility" />
+                            <expand macro="input_conditional" label="BigWig Track Data" format="bigwig"/>
+                            <expand macro="track_visibility"/>
                         </when>
                         <when value="paf">
-                            <expand macro="input_conditional"
-                                label="PAF format synteny mapping data" format="paf"
-                                help="PAF made with mashmap or minimap2 mapping the real reference as a query on the comparison genomes as references" />
-                            <expand macro="pafref_conditional" label="Comparison genome sequence(s)"
-                                format="fasta"
-                                help="Paf from these as the reference(s), using the common reference as the reads to map" />
-                            <expand macro="track_visibility" />
+                            <expand macro="input_conditional" label="PAF format synteny mapping data" format="paf" help="PAF made with mashmap or minimap2 mapping the real reference as a query on the comparison genomes as references"/>
+                            <expand macro="pafref_conditional" label="Comparison genome sequence(s)" format="fasta" help="Paf from these as the reference(s), using the common reference as the reads to map"/>
+                            <expand macro="track_visibility"/>
                         </when>
                         <when value="hic">
-                            <expand macro="input_conditional" label="Binary Juicebox HiC data"
-                                format="hic,juicebox_hic" />
-                            <expand macro="track_visibility" />
+                            <expand macro="input_conditional" label="Binary Juicebox HiC data" format="hic,juicebox_hic"/>
+                            <expand macro="track_visibility"/>
                         </when>
                         <when value="cool">
-                            <expand macro="input_conditional"
-                                label="HiC data in cool/mcool/scool format"
-                                format="cool,mcool,scool" />
-                            <expand macro="track_visibility" />
+                            <expand macro="input_conditional" label="HiC data in cool/mcool/scool format" format="cool,mcool,scool"/>
+                            <expand macro="track_visibility"/>
                         </when>
                     </conditional>
                 </repeat>
             </repeat>
         </repeat>
-        <expand macro="general_options" />
-        <param type="hidden" name="uglyTestingHack" value="" />
+        <expand macro="general_options"/>
+        <param name="uglyTestingHack" type="hidden" value=""/>
     </inputs>
     <outputs>
         <data format="html" name="output" label="JBrowse2: ${jbgen.session_name}">
             <change_format>
-                <when input="zipOut" value="true" format="zip" />
+                <when input="zipOut" value="true" format="zip"/>
             </change_format>
         </data>
     </outputs>
@@ -504,99 +452,90 @@
         <test>
             <repeat name="assemblies">
                 <conditional name="reference_genome">
-                    <param name="genome_type_select" value="history" />
-                    <param name="genome"
-                        location="https://galaxy.genomicsvl-students.cloud.edu.au/jbrowse/merlin/Merlin" />
-                    <param name="genome.ext" value="fasta" />
+                    <param name="genome_type_select" value="history"/>
+                    <param name="genome" location="https://usegalaxy.eu/static/share/ebp/jbrowse2/test-data/Merlin"/>
+                    <param name="genome.ext" value="fasta"/>
                 </conditional>
                 <repeat name="track_groups">
-                    <param name="category" value="Assembly properties" />
+                    <param name="category" value="Assembly properties"/>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="gff" />
+                            <param name="data_format_select" value="gff"/>
                             <conditional name="useuri">
-                                <param name="insource" value="history" />
-                                <param name="annotation"
-                                    location="https://galaxy.genomicsvl-students.cloud.edu.au/jbrowse/merlin/merlin.gff3" />
+                                <param name="insource" value="history"/>
+                                <param name="annotation" location="https://usegalaxy.eu/static/share/ebp/jbrowse2/test-data/merlin.gff3"/>
                             </conditional>
                         </conditional>
                     </repeat>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="bigwig" />
+                            <param name="data_format_select" value="bigwig"/>
                             <conditional name="useuri">
-                                <param name="insource" value="history" />
-                                <param name="annotation"
-                                    location="https://galaxy.genomicsvl-students.cloud.edu.au/jbrowse/merlin/merlin.bw" />
+                                <param name="insource" value="history"/>
+                                <param name="annotation" location="https://usegalaxy.eu/static/share/ebp/jbrowse2/test-data/merlin.bw"/>
                             </conditional>
                         </conditional>
                     </repeat>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="bed" />
+                            <param name="data_format_select" value="bed"/>
                             <conditional name="useuri">
-                                <param name="insource" value="history" />
-                                <param name="annotation"
-                                    location="https://galaxy.genomicsvl-students.cloud.edu.au/jbrowse/merlin/test-6.bed" />
+                                <param name="insource" value="history"/>
+                                <param name="annotation" location="https://usegalaxy.eu/static/share/ebp/jbrowse2/test-data/test-6.bed"/>
                             </conditional>
                         </conditional>
                     </repeat>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="vcf" />
+                            <param name="data_format_select" value="vcf"/>
                             <conditional name="useuri">
-                                <param name="insource" value="history" />
-                                <param name="annotation"
-                                    location="https://galaxy.genomicsvl-students.cloud.edu.au/jbrowse/merlin/merlin.vcf" />
+                                <param name="insource" value="history"/>
+                                <param name="annotation" location="https://usegalaxy.eu/static/share/ebp/jbrowse2/test-data/merlin.vcf"/>
                             </conditional>
                         </conditional>
                     </repeat>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="cram" />
+                            <param name="data_format_select" value="cram"/>
                             <conditional name="useuri">
-                                <param name="insource" value="history" />
-                                <param name="annotation"
-                                    location="https://galaxy.genomicsvl-students.cloud.edu.au/jbrowse/merlin/merlin.cram" />
+                                <param name="insource" value="history"/>
+                                <param name="annotation" location="https://usegalaxy.eu/static/share/ebp/jbrowse2/test-data/merlin.cram"/>
                             </conditional>
                         </conditional>
                     </repeat>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="bam" />
+                            <param name="data_format_select" value="bam"/>
                             <conditional name="useuri">
-                                <param name="insource" value="history" />
-                                <param name="annotation"
-                                    location="https://galaxy.genomicsvl-students.cloud.edu.au/jbrowse/merlin/merlin-sample.bam" />
+                                <param name="insource" value="history"/>
+                                <param name="annotation" location="https://usegalaxy.eu/static/share/ebp/jbrowse2/test-data/merlin-sample.bam"/>
                             </conditional>
                         </conditional>
                     </repeat>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="maf" />
+                            <param name="data_format_select" value="maf"/>
                             <conditional name="useuri">
-                                <param name="insource" value="history" />
-                                <param name="annotation"
-                                    location="https://galaxy.genomicsvl-students.cloud.edu.au/jbrowse/merlin/merlinlastz.maf" />
+                                <param name="insource" value="history"/>
+                                <param name="annotation" location="https://usegalaxy.eu/static/share/ebp/jbrowse2/test-data/merlinlastz.maf"/>
                             </conditional>
                         </conditional>
                     </repeat>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="blastxml" />
+                            <param name="data_format_select" value="blastxml"/>
                             <conditional name="useuri">
-                                <param name="insource" value="history" />
-                                <param name="annotation"
-                                    location="https://galaxy.genomicsvl-students.cloud.edu.au/jbrowse/merlin/merlin.blastxml" />
+                                <param name="insource" value="history"/>
+                                <param name="annotation" location="https://usegalaxy.eu/static/share/ebp/jbrowse2/test-data/merlin.blastxml"/>
                             </conditional>
                         </conditional>
                     </repeat>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="bam" />
+                            <param name="data_format_select" value="bam"/>
                             <conditional name="useuri">
-                                <param name="insource" value="history" />
-                                <param name="annotation" value="" />
+                                <param name="insource" value="history"/>
+                                <param name="annotation" value=""/>
                             </conditional>
                         </conditional>
                     </repeat>
@@ -604,20 +543,18 @@
             </repeat>
             <repeat name="assemblies">
                 <conditional name="reference_genome">
-                    <param name="genome_type_select" value="history" />
-                    <param name="genome"
-                        location="https://galaxy.genomicsvl-students.cloud.edu.au/jbrowse/merlin/dm3.fa" />
-                    <param name="genome.ext" value="fasta" />
+                    <param name="genome_type_select" value="history"/>
+                    <param name="genome" location="https://usegalaxy.eu/static/share/ebp/jbrowse2/test-data/dm3.fa"/>
+                    <param name="genome.ext" value="fasta"/>
                 </conditional>
                 <repeat name="track_groups">
-                    <param name="category" value="Assembly properties" />
+                    <param name="category" value="Assembly properties"/>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="cool" />
+                            <param name="data_format_select" value="cool"/>
                             <conditional name="useuri">
-                                <param name="insource" value="history" />
-                                <param name="annotation"
-                                    location="https://galaxy.genomicsvl-students.cloud.edu.au/jbrowse/merlin/dm3test.cool" />
+                                <param name="insource" value="history"/>
+                                <param name="annotation" location="https://usegalaxy.eu/static/share/ebp/jbrowse2/test-data/dm3test.cool"/>
                             </conditional>
                         </conditional>
                     </repeat>
@@ -625,65 +562,56 @@
             </repeat>
             <repeat name="assemblies">
                 <conditional name="reference_genome">
-                    <param name="genome_type_select" value="history" />
-                    <param name="genome"
-                        location="https://galaxy.genomicsvl-students.cloud.edu.au/jbrowse/merlin/Ppersica1.fa" />
-                    <param name="genome.ext" value="fasta" />
+                    <param name="genome_type_select" value="history"/>
+                    <param name="genome" location="https://usegalaxy.eu/static/share/ebp/jbrowse2/test-data/Ppersica1.fa"/>
+                    <param name="genome.ext" value="fasta"/>
                 </conditional>
                 <repeat name="track_groups">
-                    <param name="category" value="Assembly properties" />
+                    <param name="category" value="Assembly properties"/>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="paf" />
+                            <param name="data_format_select" value="paf"/>
                             <conditional name="useuri">
-                                <param name="insource" value="history" />
-                                <param name="annotation"
-                                    location="https://galaxy.genomicsvl-students.cloud.edu.au/jbrowse/merlin/peach-grape-map.paf" />
+                                <param name="insource" value="history"/>
+                                <param name="annotation" location="https://usegalaxy.eu/static/share/ebp/jbrowse2/test-data/peach-grape-map.paf"/>
                             </conditional>
                             <conditional name="pafuseuri">
-                                <param name="insource" value="history" />
-                                <param name="annotation"
-                                    location="https://galaxy.genomicsvl-students.cloud.edu.au/jbrowse/merlin/Vvinifera1.fa" />
+                                <param name="insource" value="history"/>
+                                <param name="annotation" location="https://usegalaxy.eu/static/share/ebp/jbrowse2/test-data/Vvinifera1.fa"/>
                             </conditional>
                         </conditional>
                     </repeat>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="paf" />
+                            <param name="data_format_select" value="paf"/>
                             <conditional name="useuri">
-                                <param name="insource" value="history" />
-                                <param name="annotation"
-                                    location="https://galaxy.genomicsvl-students.cloud.edu.au/jbrowse/merlin/arabgrapepeach.paf" />
+                                <param name="insource" value="history"/>
+                                <param name="annotation" location="https://usegalaxy.eu/static/share/ebp/jbrowse2/test-data/arabgrapepeach.paf"/>
                             </conditional>
                             <conditional name="pafuseuri">
-                                <param name="insource" value="uri" />
+                                <param name="insource" value="uri"/>
                                 <repeat name="refuri">
-                                    <param name="annotation"
-                                        value="https://galaxy.genomicsvl-students.cloud.edu.au/jbrowse/merlin/arabidopsis.fa.gz" />
-                                    <param name="annoname" value="arabidopsis.URI" />
+                                    <param name="annotation" value="https://usegalaxy.eu/static/share/ebp/jbrowse2/test-data/arabidopsis.fa.gz"/>
+                                    <param name="annoname" value="arabidopsis.URI"/>
                                 </repeat>
                                 <repeat name="refuri">
-                                    <param name="annotation"
-                                        value="https://galaxy.genomicsvl-students.cloud.edu.au/jbrowse/merlin/Vvinifera1.fa.gz" />
-                                    <param name="annoname" value="Vvinifera1.URI" />
+                                    <param name="annotation" value="https://usegalaxy.eu/static/share/ebp/jbrowse2/test-data/Vvinifera1.fa.gz"/>
+                                    <param name="annoname" value="Vvinifera1.URI"/>
                                 </repeat>
                             </conditional>
                         </conditional>
                     </repeat>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="paf" />
+                            <param name="data_format_select" value="paf"/>
                             <conditional name="useuri">
-                                <param name="insource" value="history" />
-                                <param name="annotation"
-                                    location="https://galaxy.genomicsvl-students.cloud.edu.au/jbrowse/merlin/arabgrapepeach.paf" />
+                                <param name="insource" value="history"/>
+                                <param name="annotation" location="https://usegalaxy.eu/static/share/ebp/jbrowse2/test-data/arabgrapepeach.paf"/>
                             </conditional>
                             <conditional name="pafuseuri">
-                                <param name="insource" value="history" />
-                                <param name="annotation"
-                                    location="https://galaxy.genomicsvl-students.cloud.edu.au/jbrowse/merlin/arabidopsis.fa" />
-                                <param name="annotation"
-                                    location="https://galaxy.genomicsvl-students.cloud.edu.au/jbrowse/merlin/Vvinifera1.fa" />
+                                <param name="insource" value="history"/>
+                                <param name="annotation" location="https://usegalaxy.eu/static/share/ebp/jbrowse2/test-data/arabidopsis.fa"/>
+                                <param name="annotation" location="https://usegalaxy.eu/static/share/ebp/jbrowse2/test-data/Vvinifera1.fa"/>
                             </conditional>
                         </conditional>
                     </repeat>
@@ -691,72 +619,69 @@
             </repeat>
             <repeat name="assemblies">
                 <conditional name="reference_genome">
-                    <param name="genome_type_select" value="uri" />
-                    <param name="uri"
-                        value="https://s3.amazonaws.com/jbrowse.org/genomes/GRCh38/fasta/GRCh38.fa.gz" />
-                    <param name="refname" value="hg38" />
+                    <param name="genome_type_select" value="uri"/>
+                    <param name="uri" value="https://s3.amazonaws.com/jbrowse.org/genomes/GRCh38/fasta/GRCh38.fa.gz"/>
+                    <param name="refname" value="hg38"/>
                 </conditional>
                 <repeat name="track_groups">
-                    <param name="category" value="Assembly properties" />
+                    <param name="category" value="Assembly properties"/>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="hic" />
+                            <param name="data_format_select" value="hic"/>
                             <conditional name="useuri">
-                                <param name="insource" value="uri" />
-                                <param name="annouri"
-                                    value="https://s3.amazonaws.com/igv.broadinstitute.org/data/hic/intra_nofrag_30.hic" />
-                                <param name="annoname" value="humanhic" />
+                                <param name="insource" value="uri"/>
+                                <param name="annouri" value="https://s3.amazonaws.com/igv.broadinstitute.org/data/hic/intra_nofrag_30.hic"/>
+                                <param name="annoname" value="humanhic"/>
                             </conditional>
                         </conditional>
                     </repeat>
                 </repeat>
             </repeat>
             <section name="jbgen">
-                <param name="zipOut" value="true" />
-                <param name="session_name" value="New test session" />
+                <param name="zipOut" value="true"/>
+                <param name="session_name" value="New test session"/>
             </section>
-            <output name="output" file="jbrowse2_result02.zip" ftype="zip" compare="sim_size">
+            <!-- use the following line to generate a ZIP file to inspect it -->
+            <!--output name="output" file="jbrowse2_result02.zip" ftype="zip" compare="sim_size"-->
+            <output name="output" ftype="zip">
                 <assert_contents>
-                    <has_archive_member path=".*" n="637" delta="10" />
-                    <has_archive_member path="index.html" />
-                    <has_archive_member
-                        path="static/media/roboto-latin-400-normal.3f2b9a42f643e62a49b7.woff" />
+                    <has_archive_member path=".*" n="637" delta="10"/>
+                    <has_archive_member path="index.html"/>
+                    <has_archive_member path="static/media/roboto-latin-400-normal.3f2b9a42f643e62a49b7.woff"/>
                     <has_archive_member path="manifest.json">
-                        <has_text text="favicon.ico" />
-                        <has_text text="background_color" />
+                        <has_text text="favicon.ico"/>
+                        <has_text text="background_color"/>
                     </has_archive_member>
                     <has_archive_member path="galaxy.xml">
-                        <is_valid_xml />
-                        <xml_element path="./metadata/general/session_name" n="1">
-                            <has_text_matching expression="New test session" />
-                            <not_has_text text="Newton" />
-                        </xml_element>
+                        <is_valid_xml/>
+                        <has_n_elements_with_path path="./metadata/general/session_name" n="1"/>
+                        <element_text_is path="./metadata/general/session_name" text="New test session"/>
                     </has_archive_member>
-                    <has_archive_member path="merlin.gff3_0.gz" />
-                    <has_archive_member path="merlin.gff3_0.gz.tbi" />
-                    <has_archive_member path="merlin.bw_1" />
-                    <has_archive_member path="test-6.bed_2.gz" />
-                    <has_archive_member path="merlin.vcf_3" />
-                    <has_archive_member path="merlin.vcf_3.tbi" />
-                    <has_archive_member path="merlin.cram_4" />
-                    <has_archive_member path="merlin.cram_4.crai" />
-                    <has_archive_member path="merlin-sample.bam_5" />
-                    <has_archive_member path="merlin-sample.bam_5.bai" />
-                    <has_archive_member path="merlinlastz.maf_6.sorted.bed.gz.tbi" />
-                    <has_archive_member path="merlin.blastxml_7.gz" />
-                    <has_archive_member path="dm3test.cool_9.hic" />
-                    <has_archive_member path="peach-grape-map.paf_10" />
-                    <has_archive_member path="arabgrapepeach.paf_11" />
-                    <has_archive_member path="Merlin.fa.gz.fai" />
-                    <has_archive_member path="dm3.fa.fa.gz.fai" />
-                    <has_archive_member path="Ppersica1.fa.fa.gz" />
-                    <has_archive_member path="Ppersica1.fa.fa.gz.fai" />
-                    <has_archive_member path="Ppersica1.fa.fa.gz.gzi" />
-                    <has_archive_member path="Vvinifera1.fa.fa.gz.fai" />
-                    <has_archive_member path="Vvinifera1.fa.fa.gz" />
-                    <has_archive_member path="Vvinifera1.fa.fa.gz.gzi" />
+                    <has_archive_member path="merlin.gff3_0.gz"/>
+                    <has_archive_member path="merlin.gff3_0.gz.tbi"/>
+                    <has_archive_member path="merlin.bw_1"/>
+                    <has_archive_member path="test-6.bed_2.gz"/>
+                    <has_archive_member path="merlin.vcf_3"/>
+                    <has_archive_member path="merlin.vcf_3.tbi"/>
+                    <has_archive_member path="merlin.cram_4"/>
+                    <has_archive_member path="merlin.cram_4.crai"/>
+                    <has_archive_member path="merlin-sample.bam_5"/>
+                    <has_archive_member path="merlin-sample.bam_5.bai"/>
+                    <has_archive_member path="merlinlastz.maf_6.sorted.bed.gz.tbi"/>
+                    <has_archive_member path="merlin.blastxml_7.gz"/>
+                    <has_archive_member path="dm3test.cool_9.hic"/>
+                    <has_archive_member path="peach-grape-map.paf_10"/>
+                    <has_archive_member path="arabgrapepeach.paf_11"/>
+                    <has_archive_member path="Merlin.fa.gz.fai"/>
+                    <has_archive_member path="dm3.fa.fa.gz.fai"/>
+                    <has_archive_member path="Ppersica1.fa.fa.gz"/>
+                    <has_archive_member path="Ppersica1.fa.fa.gz.fai"/>
+                    <has_archive_member path="Ppersica1.fa.fa.gz.gzi"/>
+                    <has_archive_member path="Vvinifera1.fa.fa.gz.fai"/>
+                    <has_archive_member path="Vvinifera1.fa.fa.gz"/>
+                    <has_archive_member path="Vvinifera1.fa.fa.gz.gzi"/>
                     <has_archive_member path="config.json">
-                        <has_json_property_with_text property="name" text="Merlin" />
+                        <has_json_property_with_text property="name" text="Merlin"/>
                     </has_archive_member>
                 </assert_contents>
             </output>
@@ -764,39 +689,38 @@
         <test>
             <param name="autoCollection">
                 <collection type="list" name="merlintest">
-                    <element name="merlin.fa" value="merlin.fa" />
-                    <element name="merlin.bw" value="bw/merlin.bw" />
-                    <element name="test-6.bed" value="bed/test-6.bed" />
+                    <element name="merlin.fa" value="merlin.fa"/>
+                    <element name="merlin.bw" value="bw/merlin.bw"/>
+                    <element name="test-6.bed" value="bed/test-6.bed"/>
                 </collection>
             </param>
             <section name="jbgen">
-                <param name="zipOut" value="true" />
-                <param name="session_name" value="Collection test" />
-                <param name="ucol|formcoll" value="collect" />
+                <param name="zipOut" value="true"/>
+                <param name="session_name" value="Collection test"/>
+                <param name="ucol|formcoll" value="collect"/>
             </section>
-            <output name="output" file="jbrowse2_result01.zip" ftype="zip" compare="sim_size">
+            <!-- use the following line to generate a ZIP file to inspect it -->
+            <!--output name="output" file="jbrowse2_result01.zip" ftype="zip" compare="sim_size"-->
+            <output name="output" ftype="zip">
                 <assert_contents>
-                    <has_archive_member path=".*" n="611" delta="10" />
-                    <has_archive_member path="index.html" />
-                    <has_archive_member
-                        path="static/media/roboto-latin-400-normal.3f2b9a42f643e62a49b7.woff" />
+                    <has_archive_member path=".*" n="611" delta="10"/>
+                    <has_archive_member path="index.html"/>
+                    <has_archive_member path="static/media/roboto-latin-400-normal.3f2b9a42f643e62a49b7.woff"/>
                     <has_archive_member path="manifest.json">
-                        <has_text text="favicon.ico" />
-                        <has_text text="background_color" />
+                        <has_text text="favicon.ico"/>
+                        <has_text text="background_color"/>
                     </has_archive_member>
                     <has_archive_member path="galaxy.xml">
-                        <is_valid_xml />
-                        <xml_element path="./metadata/general/session_name" n="1">
-                            <has_text_matching expression="Collection test" />
-                            <not_has_text text="Newton" />
-                        </xml_element>
+                        <is_valid_xml/>
+                        <has_n_elements_with_path path="./metadata/general/session_name" n="1"/>
+                        <element_text_is path="./metadata/general/session_name" text="Collection test"/>
                     </has_archive_member>
-                    <has_archive_member path="jb2_webserver.py" />
+                    <has_archive_member path="jb2_webserver.py"/>
                     <has_archive_member path="merlin.fa.fa.gz.gzi"/>
                     <has_archive_member path="merlin.fa.fa.gz"/>
                     <has_archive_member path="merlin.fa.fa.gz.fai"/>
-                    <has_archive_member path="merlin.bw" />
-                    <has_archive_member path="index.html" />
+                    <has_archive_member path="merlin.bw"/>
+                    <has_archive_member path="index.html"/>
                     <has_archive_member path="test-6.bed.gz"/>
                     <has_archive_member path="test-6.bed.gz.tbi"/>
                 </assert_contents>
@@ -805,174 +729,174 @@
         <test>
             <repeat name="assemblies">
                 <conditional name="reference_genome">
-                    <param name="genome_type_select" value="history" />
-                    <param name="genome" value="merlin.fa" />
-                    <param name="genome.ext" value="fasta" />
-                    <param name="genome.name" value="Merlin" />
+                    <param name="genome_type_select" value="history"/>
+                    <param name="genome" value="merlin.fa"/>
+                    <param name="genome.ext" value="fasta"/>
+                    <param name="genome.name" value="Merlin"/>
                 </conditional>
                 <repeat name="track_groups">
-                    <param name="category" value="Default" />
+                    <param name="category" value="Default"/>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="bigwig" />
+                            <param name="data_format_select" value="bigwig"/>
                             <conditional name="useuri">
-                                <param name="annotation" value="bw/merlin.bw" />
-                                <param name="insource" value="history" />
+                                <param name="annotation" value="bw/merlin.bw"/>
+                                <param name="insource" value="history"/>
                             </conditional>
                         </conditional>
                     </repeat>
                 </repeat>
             </repeat>
-            <param name="uglyTestingHack" value="enabled" />
+            <param name="uglyTestingHack" value="enabled"/>
             <output name="output">
                 <assert_contents>
-                    <has_text text="genome path="></has_text>
-                    <has_text text="label="></has_text>
-                    <has_text text="format="></has_text>
-                    <has_text text="metadata"></has_text>
-                    <has_text text="useuri="></has_text>
-                    <has_text text="trackFile path="></has_text>
-                    <has_text text="ext=&quot;bigwig&quot;"></has_text>
-                    <has_text text="format=&quot;bigwig&quot;"></has_text>
+                    <has_text text="genome path="/>
+                    <has_text text="label="/>
+                    <has_text text="format="/>
+                    <has_text text="metadata"/>
+                    <has_text text="useuri="/>
+                    <has_text text="trackFile path="/>
+                    <has_text text="ext=&quot;bigwig&quot;"/>
+                    <has_text text="format=&quot;bigwig&quot;"/>
                 </assert_contents>
             </output>
         </test>
         <test>
             <repeat name="assemblies">
                 <conditional name="reference_genome">
-                    <param name="genome_type_select" value="history" />
-                    <param name="genome" value="merlin.fa" />
-                    <param name="genome.ext" value="fasta" />
-                    <param name="genome.name" value="Merlin" />
+                    <param name="genome_type_select" value="history"/>
+                    <param name="genome" value="merlin.fa"/>
+                    <param name="genome.ext" value="fasta"/>
+                    <param name="genome.name" value="Merlin"/>
                 </conditional>
                 <repeat name="track_groups">
-                    <param name="category" value="Default" />
+                    <param name="category" value="Default"/>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="vcf" />
+                            <param name="data_format_select" value="vcf"/>
                             <conditional name="useuri">
-                                <param name="insource" value="history" />
-                                <param name="annotation" value="vcf/merlin.vcf" />
+                                <param name="insource" value="history"/>
+                                <param name="annotation" value="vcf/merlin.vcf"/>
                             </conditional>
                         </conditional>
                     </repeat>
                 </repeat>
             </repeat>
-            <param name="uglyTestingHack" value="enabled" />
+            <param name="uglyTestingHack" value="enabled"/>
             <output name="output">
                 <assert_contents>
-                    <has_text text="genome path="></has_text>
-                    <has_text text="label="></has_text>
-                    <has_text text="format="></has_text>
-                    <has_text text="metadata"></has_text>
-                    <has_text text="useuri="></has_text>
-                    <has_text text="trackFile path="></has_text>
-                    <has_text text="ext=&quot;vcf&quot; label=&quot;merlin.vcf&quot;"></has_text>
+                    <has_text text="genome path="/>
+                    <has_text text="label="/>
+                    <has_text text="format="/>
+                    <has_text text="metadata"/>
+                    <has_text text="useuri="/>
+                    <has_text text="trackFile path="/>
+                    <has_text text="ext=&quot;vcf&quot; label=&quot;merlin.vcf&quot;"/>
                 </assert_contents>
             </output>
         </test>
         <test>
             <repeat name="assemblies">
                 <conditional name="reference_genome">
-                    <param name="genome_type_select" value="history" />
-                    <param name="genome" value="merlin.fa" />
-                    <param name="genome.ext" value="fasta" />
-                    <param name="genome.name" value="Merlin" />
+                    <param name="genome_type_select" value="history"/>
+                    <param name="genome" value="merlin.fa"/>
+                    <param name="genome.ext" value="fasta"/>
+                    <param name="genome.name" value="Merlin"/>
                 </conditional>
             </repeat>
-            <param name="uglyTestingHack" value="enabled" />
+            <param name="uglyTestingHack" value="enabled"/>
             <output name="output">
                 <assert_contents>
-                    <has_text text="genome path="></has_text>
-                    <has_text text="label="></has_text>
-                    <has_text text="useuri="></has_text>
-                    <has_text text="metadata"></has_text>
+                    <has_text text="genome path="/>
+                    <has_text text="label="/>
+                    <has_text text="useuri="/>
+                    <has_text text="metadata"/>
                 </assert_contents>
             </output>
         </test>
         <test>
             <repeat name="assemblies">
                 <conditional name="reference_genome">
-                    <param name="genome_type_select" value="history" />
-                    <param name="genome" value="merlin.fa" />
-                    <param name="genome.ext" value="fasta" />
-                    <param name="genome.name" value="Merlin" />
+                    <param name="genome_type_select" value="history"/>
+                    <param name="genome" value="merlin.fa"/>
+                    <param name="genome.ext" value="fasta"/>
+                    <param name="genome.name" value="Merlin"/>
                 </conditional>
                 <repeat name="track_groups">
-                    <param name="category" value="Default" />
+                    <param name="category" value="Default"/>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="vcf" />
+                            <param name="data_format_select" value="vcf"/>
                             <conditional name="useuri">
-                                <param name="insource" value="history" />
-                                <param name="annotation" value="vcf/merlin.vcf" />
+                                <param name="insource" value="history"/>
+                                <param name="annotation" value="vcf/merlin.vcf"/>
                             </conditional>
                         </conditional>
                     </repeat>
                 </repeat>
             </repeat>
-            <param name="uglyTestingHack" value="enabled" />
+            <param name="uglyTestingHack" value="enabled"/>
             <output name="output">
                 <assert_contents>
-                    <has_text text="genome path="></has_text>
-                    <has_text text="label="></has_text>
-                    <has_text text="format="></has_text>
-                    <has_text text="metadata"></has_text>
-                    <has_text text="useuri="></has_text>
-                    <has_text text="trackFile path="></has_text>
-                    <has_text text="ext=&quot;vcf&quot; label=&quot;merlin.vcf&quot;"></has_text>
+                    <has_text text="genome path="/>
+                    <has_text text="label="/>
+                    <has_text text="format="/>
+                    <has_text text="metadata"/>
+                    <has_text text="useuri="/>
+                    <has_text text="trackFile path="/>
+                    <has_text text="ext=&quot;vcf&quot; label=&quot;merlin.vcf&quot;"/>
                 </assert_contents>
             </output>
         </test>
         <test>
             <repeat name="assemblies">
                 <conditional name="reference_genome">
-                    <param name="genome_type_select" value="history" />
-                    <param name="genome" value="merlin.fa" />
-                    <param name="genome.ext" value="fasta" />
-                    <param name="genome.name" value="Merlin" />
+                    <param name="genome_type_select" value="history"/>
+                    <param name="genome" value="merlin.fa"/>
+                    <param name="genome.ext" value="fasta"/>
+                    <param name="genome.name" value="Merlin"/>
                 </conditional>
                 <repeat name="track_groups">
-                    <param name="category" value="Default" />
+                    <param name="category" value="Default"/>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="gff" />
+                            <param name="data_format_select" value="gff"/>
                             <conditional name="useuri">
-                                <param name="insource" value="history" />
-                                <param name="annotation" value="gff3/A.gff" />
+                                <param name="insource" value="history"/>
+                                <param name="annotation" value="gff3/A.gff"/>
                             </conditional>
                         </conditional>
                         <conditional name="match_part">
-                            <param name="match_part_select" value="false" />
+                            <param name="match_part_select" value="false"/>
                         </conditional>
                         <section name="jbcolor_scale">
                             <conditional name="color_score">
-                                <param name="color_score_select" value="none" />
+                                <param name="color_score_select" value="none"/>
                             </conditional>
                             <conditional name="color">
-                                <param name="color_select" value="automatic" />
+                                <param name="color_select" value="automatic"/>
                             </conditional>
                         </section>
                     </repeat>
                 </repeat>
                 <repeat name="track_groups">
-                    <param name="category" value="Ignore Scale" />
+                    <param name="category" value="Ignore Scale"/>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="gff" />
+                            <param name="data_format_select" value="gff"/>
                             <conditional name="useuri">
-                                <param name="insource" value="history" />
-                                <param name="annotation" value="gff3/1.gff" />
+                                <param name="insource" value="history"/>
+                                <param name="annotation" value="gff3/1.gff"/>
                             </conditional>
                             <conditional name="match_part">
-                                <param name="match_part_select" value="false" />
+                                <param name="match_part_select" value="false"/>
                             </conditional>
                             <section name="jbcolor_scale">
                                 <conditional name="color_score">
-                                    <param name="color_score_select" value="none" />
+                                    <param name="color_score_select" value="none"/>
                                     <conditional name="color">
-                                        <param name="color_select" value="manual" />
-                                        <param name="style_color" value="#ff00ff" />
+                                        <param name="color_select" value="manual"/>
+                                        <param name="style_color" value="#ff00ff"/>
                                     </conditional>
                                 </conditional>
                             </section>
@@ -980,28 +904,28 @@
                     </repeat>
                 </repeat>
                 <repeat name="track_groups">
-                    <param name="category" value="Scaled Colour" />
+                    <param name="category" value="Scaled Colour"/>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="gff" />
+                            <param name="data_format_select" value="gff"/>
                             <conditional name="useuri">
-                                <param name="insource" value="history" />
-                                <param name="annotation" value="gff3/C.gff" />
+                                <param name="insource" value="history"/>
+                                <param name="annotation" value="gff3/C.gff"/>
                             </conditional>
                             <conditional name="match_part">
-                                <param name="match_part_select" value="false" />
+                                <param name="match_part_select" value="false"/>
                             </conditional>
                             <section name="jbcolor_scale">
                                 <conditional name="color_score">
-                                    <param name="color_score_select" value="score" />
-                                    <param name="score_scaling" value="linear" />
+                                    <param name="color_score_select" value="score"/>
+                                    <param name="score_scaling" value="linear"/>
                                     <conditional name="score_scales">
-                                        <param name="scale_select" value="automatic" />
+                                        <param name="scale_select" value="automatic"/>
                                     </conditional>
                                     <conditional name="color_scheme">
-                                        <param name="score_scheme" value="opacity" />
+                                        <param name="score_scheme" value="opacity"/>
                                         <conditional name="color">
-                                            <param name="color_select" value="automatic" />
+                                            <param name="color_select" value="automatic"/>
                                         </conditional>
                                     </conditional>
                                 </conditional>
@@ -1010,26 +934,26 @@
                     </repeat>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="gff" />
+                            <param name="data_format_select" value="gff"/>
                             <conditional name="useuri">
-                                <param name="annotation" value="gff3/B.gff" />
-                                <param name="insource" value="history" />
+                                <param name="annotation" value="gff3/B.gff"/>
+                                <param name="insource" value="history"/>
                             </conditional>
                             <conditional name="match_part">
-                                <param name="match_part_select" value="false" />
+                                <param name="match_part_select" value="false"/>
                             </conditional>
                             <section name="jbcolor_scale">
                                 <conditional name="color_score">
-                                    <param name="color_score_select" value="score" />
-                                    <param name="score_scaling" value="linear" />
+                                    <param name="color_score_select" value="score"/>
+                                    <param name="score_scaling" value="linear"/>
                                     <conditional name="score_scales">
-                                        <param name="scale_select" value="automatic" />
+                                        <param name="scale_select" value="automatic"/>
                                     </conditional>
                                     <conditional name="color_scheme">
-                                        <param name="score_scheme" value="opacity" />
+                                        <param name="score_scheme" value="opacity"/>
                                         <conditional name="color">
-                                            <param name="color_select" value="manual" />
-                                            <param name="style_color" value="#0000ff" />
+                                            <param name="color_select" value="manual"/>
+                                            <param name="style_color" value="#0000ff"/>
                                         </conditional>
                                     </conditional>
                                 </conditional>
@@ -1038,27 +962,27 @@
                     </repeat>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="gff" />
+                            <param name="data_format_select" value="gff"/>
                             <conditional name="useuri">
-                                <param name="annotation" value="gff3/A.gff" />
-                                <param name="insource" value="history" />
+                                <param name="annotation" value="gff3/A.gff"/>
+                                <param name="insource" value="history"/>
                             </conditional>
                             <conditional name="match_part">
-                                <param name="match_part_select" value="false" />
+                                <param name="match_part_select" value="false"/>
                             </conditional>
                             <section name="jbcolor_scale">
                                 <conditional name="color_score">
-                                    <param name="color_score_select" value="score" />
-                                    <param name="score_scaling" value="linear" />
+                                    <param name="color_score_select" value="score"/>
+                                    <param name="score_scaling" value="linear"/>
                                     <conditional name="score_scales">
-                                        <param name="scale_select" value="manual" />
-                                        <param name="minimum" value="0" />
-                                        <param name="maximum" value="1000" />
+                                        <param name="scale_select" value="manual"/>
+                                        <param name="minimum" value="0"/>
+                                        <param name="maximum" value="1000"/>
                                     </conditional>
                                     <conditional name="color_scheme">
-                                        <param name="score_scheme" value="opacity" />
+                                        <param name="score_scheme" value="opacity"/>
                                         <conditional name="color">
-                                            <param name="color_select" value="automatic" />
+                                            <param name="color_select" value="automatic"/>
                                         </conditional>
                                     </conditional>
                                 </conditional>
@@ -1067,28 +991,28 @@
                     </repeat>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="gff" />
+                            <param name="data_format_select" value="gff"/>
                             <conditional name="useuri">
-                                <param name="annotation" value="gff3/1.gff" />
-                                <param name="insource" value="history" />
+                                <param name="annotation" value="gff3/1.gff"/>
+                                <param name="insource" value="history"/>
                             </conditional>
                             <conditional name="match_part">
-                                <param name="match_part_select" value="false" />
+                                <param name="match_part_select" value="false"/>
                             </conditional>
                             <section name="jbcolor_scale">
                                 <conditional name="color_score">
-                                    <param name="color_score_select" value="score" />
-                                    <param name="score_scaling" value="linear" />
+                                    <param name="color_score_select" value="score"/>
+                                    <param name="score_scaling" value="linear"/>
                                     <conditional name="score_scales">
-                                        <param name="scale_select" value="manual" />
-                                        <param name="minimum" value="0" />
-                                        <param name="maximum" value="1000" />
+                                        <param name="scale_select" value="manual"/>
+                                        <param name="minimum" value="0"/>
+                                        <param name="maximum" value="1000"/>
                                     </conditional>
                                     <conditional name="color_scheme">
-                                        <param name="score_scheme" value="opacity" />
+                                        <param name="score_scheme" value="opacity"/>
                                         <conditional name="color">
-                                            <param name="color_select" value="manual" />
-                                            <param name="style_color" value="#ff0000" />
+                                            <param name="color_select" value="manual"/>
+                                            <param name="style_color" value="#ff0000"/>
                                         </conditional>
                                     </conditional>
                                 </conditional>
@@ -1097,66 +1021,64 @@
                     </repeat>
                 </repeat>
                 <repeat name="track_groups">
-                    <param name="category" value="Realistic" />
+                    <param name="category" value="Realistic"/>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="gff" />
+                            <param name="data_format_select" value="gff"/>
                             <conditional name="useuri">
-                                <param name="annotation" value="gff3/interpro.gff" />
-                                <param name="insource" value="history" />
+                                <param name="annotation" value="gff3/interpro.gff"/>
+                                <param name="insource" value="history"/>
                             </conditional>
                             <conditional name="match_part">
-                                <param name="match_part_select" value="false" />
+                                <param name="match_part_select" value="false"/>
                             </conditional>
                             <section name="jbcolor_scale">
                                 <conditional name="color_score">
-                                    <param name="color_score_select" value="none" />
+                                    <param name="color_score_select" value="none"/>
                                 </conditional>
                                 <conditional name="color">
-                                    <param name="color_select" value="automatic" />
+                                    <param name="color_select" value="automatic"/>
                                 </conditional>
                             </section>
                         </conditional>
                     </repeat>
                     <repeat name="data_tracks">
                         <conditional name="data_format">
-                            <param name="data_format_select" value="gff" />
+                            <param name="data_format_select" value="gff"/>
                             <conditional name="useuri">
-                                <param name="annotation" value="gff3/2.gff" />
-                                <param name="insource" value="history" />
+                                <param name="annotation" value="gff3/2.gff"/>
+                                <param name="insource" value="history"/>
                             </conditional>
                             <conditional name="match_part">
-                                <param name="match_part_select" value="true" />
-                                <param name="name" value="cDNA_match" />
+                                <param name="match_part_select" value="true"/>
+                                <param name="name" value="cDNA_match"/>
                             </conditional>
                             <section name="jbcolor_scale">
                                 <conditional name="color_score">
-                                    <param name="color_score_select" value="none" />
+                                    <param name="color_score_select" value="none"/>
                                 </conditional>
                                 <conditional name="color">
-                                    <param name="color_select" value="automatic" />
+                                    <param name="color_select" value="automatic"/>
                                 </conditional>
                             </section>
                         </conditional>
                     </repeat>
                 </repeat>
             </repeat>
-
-            <param name="uglyTestingHack" value="enabled" />
+            <param name="uglyTestingHack" value="enabled"/>
             <output name="output">
                 <assert_contents>
-                    <has_text text="Ignore Scale" />
-                    <has_text text="A.gff" />
-                    <has_text text="B.gff" />
-                    <has_text text="C.gff" />
-                    <has_text text="interpro.gff" />
-                    <has_text text="Scaled Colour" />
-                    <has_text text="1.gff" />
-                    <has_text text="2.gff" />
+                    <has_text text="Ignore Scale"/>
+                    <has_text text="A.gff"/>
+                    <has_text text="B.gff"/>
+                    <has_text text="C.gff"/>
+                    <has_text text="interpro.gff"/>
+                    <has_text text="Scaled Colour"/>
+                    <has_text text="1.gff"/>
+                    <has_text text="2.gff"/>
                 </assert_contents>
             </output>
         </test>
-
         <!-- TODO add a synteny test -->
         <!-- TODO add a bam and a cram test -->
         <!-- TODO add an hic test -->
@@ -1275,7 +1197,7 @@
 they should adjust feature locations by 3x.
 
 
-@ATTRIBUTION@
 ]]></help>
-    <expand macro="citations" />
-</tool>
\ No newline at end of file
+    <expand macro="citations"/>
+    <expand macro="creators"/>
+</tool>