view macros.xml @ 98:b1260bca5fdc draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/jbrowse2 commit 44d8fc559ecf5463a8f753561976fa26686c96f6
author bgruening
date Wed, 05 Jun 2024 10:00:07 +0000
parents 74074746ccd8
children 990291e918c7
line wrap: on
line source

<macros>
    <token name="@TOOL_VERSION@">2.11.1</token>
    <xml name="edamInc">
        <edam_topics>
            <edam_topic>topic_3307</edam_topic>
            <edam_topic>topic_0092</edam_topic>
        </edam_topics>
        <edam_operations>
            <edam_operation>operation_0573</edam_operation>
            <edam_operation>operation_0564</edam_operation>
        </edam_operations>
    </xml>
    <xml name="requirements">
        <requirements>
            <requirement type="package" version="@TOOL_VERSION@">jbrowse2</requirement>
            <requirement type="package" version="1.82">biopython</requirement>
            <requirement type="package" version="0.7.1">bcbio-gff</requirement>
            <requirement type="package" version="1.19">samtools</requirement>
            <requirement type="package" version="6.0.1">pyyaml</requirement>
            <requirement type="package" version="1.11">tabix</requirement>
            <requirement type="package" version="4.6.0">findutils</requirement>
            <requirement type="package" version="0.0.12-0">hictk</requirement>
            <requirement type="package" version="3.0">zip</requirement>
            <yield/>
        </requirements>
    </xml>
    <token name="@DATA_DIR@">\$GALAXY_JBROWSE_SHARED_DIR</token>
    <token name="@VERSION_SUFFIX@">0</token>
    <xml name="creators">
        <creator>
            <person givenName="Helena" familyName="Rasche" url="https://github.com/hexylena"/>
            <person givenName="Anthony" familyName="Bretaudeau" url="https://github.com/abretaud"/>
            <person givenName="Ross" familyName="Lazarus" url="https://github.com/fubar2/"/>
        </creator>
    </xml>
    <xml name="genome_selector" token_help="" token_label="Fasta sequences" token_optional="False">
        <conditional name="reference_genome">
            <param name="genome_type_select" type="select" label="Reference genome to display" help="Built-in references">
                <option selected="True" value="indexed">Use a built-in genome</option>
                <option value="history">Use a genome from history</option>
            </param>
            <when value="indexed">
                <param name="genomes" type="select" optional="@OPTIONAL@" label="@LABEL@" help="@HELP@">
                    <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"/>
                    </options>
                </param>
            </when>
            <when value="history">
                <param name="genomes" type="data" format="fasta" optional="@OPTIONAL@" label="@LABEL@" help="@HELP@" multiple="True"/>
            </when>
        </conditional>
    </xml>
    <xml name="auto_manual_tk" token_cond_label="Color" token_cond_name="color" token_select_label="Color Specification" token_select_name="color_select" token_automatic_label="Automatically selected" token_manual_label="Manual Color Selection">
        <conditional name="@COND_NAME@" label="@COND_LABEL@">
            <param name="@SELECT_NAME@" type="select" label="@SELECT_LABEL@">
                <option value="automatic" selected="true">@AUTOMATIC_LABEL@</option>
                <option value="manual">@MANUAL_LABEL@</option>
            </param>
            <when value="automatic">
            </when>
            <when value="manual">
                <yield/>
            </when>
        </conditional>
    </xml>
    <xml name="jb_color" token_label="JBrowse style.color" token_name="style_color" token_value="goldenrod" token_help="Basic color of features. Most glyphs interpret this as the fill color of the rectangle they draw. Color syntax is the same as that used for CSS">
        <param name="@NAME@" type="color" value="@VALUE@" label="@LABEL@" help="@HELP@">
            <sanitizer>
                <valid initial="string.letters,string.digits">
                    <add value="#"/>
                </valid>
            </sanitizer>
        </param>
    </xml>
    <xml name="auto_color" token_cond_label="Color" token_cond_name="color" token_select_label="Color Selection" token_select_name="color_select" token_automatic_label="Automatically selected" token_manual_label="Manual Color Selection">
        <expand macro="auto_manual_tk" cond_label="@COND_LABEL@" cond_name="@COND_NAME@" select_label="@SELECT_LABEL@" select_name="@SELECT_NAME@" automatic_label="@AUTOMATIC_LABEL@" manual_label="@MANUAL_LABEL@">
            <expand macro="jb_color"/>
            <yield/>
        </expand>
    </xml>
    <xml name="brewer_scheme">
        <param name="brewer_scheme" type="select" label="Brewer color Scheme">
            <option value="BrBg">BrBg: Brown - Blue Green</option>
            <option value="PiYg">PiYg: Pink - Yellow Green</option>
            <option value="PRGn">PRGn: Purple Red - Green</option>
            <option value="PuOr">PuOr: Purple - Orange</option>
            <option value="RdBu" selected="true">RdBu: Red - Blue</option>
            <option value="RdGy">RdGy: Red - Gray</option>
            <option value="RdYlBu">RdYlBu: Red - Yellow - Blue</option>
            <option value="RdYlGn">RdYlBu: Red - Yellow - Green</option>
            <option value="Spectral">Spectral</option>
        </param>
    </xml>
    <xml name="general_options">
        <section name="jbgen" title="General JBrowse Options [Advanced]" expanded="false">
            <conditional name="ucol">
                <param name="formcoll" type="select" label="Convert a collection of track files rather than filling in the tool form" help="A collection of bam/vcf and other track types will be converted into a JBrowse2 automatically">
                    <option value="form" selected="true">Fill in the tool form to specify tracks for the output JBrowse2</option>
                    <option value="collect">Convert a collection of suitable track files</option>
                </param>
                <when value="collect">
                    <param name="autoCollection" type="data_collection" label="Collection of bed, bam and other track files"/>
                </when>
                <when value="form"/>
            </conditional>
            <param name="zipOut" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Create a zip archive for downloading rather than viewing" help="Default is to make an interactive browser appear when the 'eye' icon is activated"/>
            <param name="defaultLocation" type="text" value="" label="Subset to display to new users" help="Initial subset to be shown for users who have never visited the browser before. Example: 'ctgA:1234..5678"/>
            <param name="session_name" type="text" value="New JBrowse2 session" label="Session name" help="Displayed at the top of the window"/>
            <param name="enableAnalytics" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Enable analytics" help="Will send usage data to Google Analytics, see https://github.com/GMOD/jbrowse-components/issues/1166"/>
            <param name="primary_color" type="color" value="#0D233F" label="Primary color">
                <sanitizer>
                    <valid initial="string.ascii_letters,string.digits">
                        <add value="#"/>
                    </valid>
                </sanitizer>
            </param>
            <param name="secondary_color" type="color" value="#721E63" label="Secondary color">
                <sanitizer>
                    <valid initial="string.ascii_letters,string.digits">
                        <add value="#"/>
                    </valid>
                </sanitizer>
            </param>
            <param name="tertiary_color" type="color" value="#135560" label="Tertiary color">
                <sanitizer>
                    <valid initial="string.ascii_letters,string.digits">
                        <add value="#"/>
                    </valid>
                </sanitizer>
            </param>
            <param name="quaternary_color" type="color" value="#FFB11D" label="Quaternary color">
                <sanitizer>
                    <valid initial="string.ascii_letters,string.digits">
                        <add value="#"/>
                    </valid>
                </sanitizer>
            </param>
            <param name="font_size" type="integer" value="10" label="Font size"/>
        </section>
    </xml>
    <xml name="color_selection_minmax">
        <section name="jbcolor" title="JBrowse Color Options [Advanced]" expanded="false">
            <!-- Abuse auto/manual for bicolor pivot. Means we'll have to handle the
            auto case as well, but may be safe to just say "brewer colors? Pff,
            red/blue" -->
            <expand macro="auto_manual_tk" token_cond_label="Color" token_cond_name="color" token_select_label="Color Selection" token_select_name="color_select" token_automatic_label="Automatically selected" token_manual_label="Manual Color Selection">
                <expand macro="jb_color" label="JBrowse style.pos_color" name="style_pos_color" value="blue" help="CSS color, default 'blue'. When drawing bicolor plots, the fill color to use for values that are above the pivot point."/>
                <expand macro="jb_color" label="JBrowse style.neg_color" name="style_neg_color" value="red" help=" CSS color, default 'red'. When drawing bicolor plots, the fill color to use for values that are below the pivot point."/>
            </expand>
            <conditional name="bicolor_pivot" label="Bicolor Pivot">
                <param name="bicolor_pivot_select" type="select" label="Bicolor Pivot">
                    <option value="zero" selected="true">Zero</option>
                    <option value="mean">Mean</option>
                    <option value="custom">Custom Value</option>
                </param>
                <when value="zero"/>
                <when value="mean"/>
                <when value="custom">
                    <param name="pivot_point" type="float" value="0.0" label="JBrowse style.bicolor_pivot" help="Where to change from pos_color to neg_color when drawing bicolor plots."/>
                </when>
            </conditional>
        </section>
    </xml>
    <xml name="color_selection" token_scaling_lin_select="true" token_scaling_log_select="false">
        <section name="jbcolor_scale" title="JBrowse Feature Score Scaling &amp; Coloring Options [Advanced]" expanded="false">
            <conditional name="color_score" label="JBrowse style.color &amp; Score relationship">
                <param name="color_score_select" type="select" label="Color Score Algorithm" help="How to color the features. If it is based on score, then features with a score attribute anywhere in their hierachy will have their color affected by the score. If you choose to ignore the score, then you'll be able to select a single solid color for every feature in the track">
                    <option value="score">Based on score</option>
                    <option value="none" selected="true">Ignore score</option>
                </param>
                <when value="none">
                    <!-- When no scaling is done, no scores available, then just let the
                    user choose a base color for the track -->
                    <expand macro="auto_color"/>
                </when>
                <when value="score">
                    <!-- Scaling -->
                    <param name="score_scaling" type="select" label="JBrowse style.color function's score scaling" help="How should the colors be distributed across the values? For blast results which distributes scores on the scale of approximately [1e-500, 10], it makes sense to request a logarithmic scaling of the color values. Logarithmic is indeed the default for blast. However other analysis methods may produce scores on ranges such as [0, 100] where a linear scale would be more appropriate for color distribution.">
                        <option value="linear" selected="@SCALING_LIN_SELECT@">Linear scaling</option>
                        <option value="logarithmic" selected="false">Logarithmic scaling</option>
                        <option value="blast" selected="@SCALING_LOG_SELECT@">Blast scaling</option>
                    </param>
                    <!-- Scaling Bounds -->
                    <conditional name="score_scales" label="Minimum/Maximum values for track scores">
                        <param name="scale_select" type="select" label="How should minimum and maximum values be determined for the scores of the features">
                            <option value="automatic" selected="true">Automatically determined</option>
                            <option value="manual">Manually specify minimum and maximum expected scores for the feature track</option>
                        </param>
                        <when value="automatic"/>
                        <when value="manual">
                            <param name="minimum" type="integer" value="0" label="Minimum expected score"/>
                            <param name="maximum" type="integer" value="100" label="Maximum expected score"/>
                        </when>
                    </conditional>
                    <!-- Scale color -->
                    <conditional name="color_scheme" label="Color Scheme for scored features">
                        <param name="score_scheme" type="select" label="JBrowse style.color function's color scheme for scored values">
                            <option value="opacity">Opacity (high scores = 1.0 opacity)</option>
                            <!--<option value="brewer">Brewer Color Schemes</option>-->
                        </param>
                        <when value="opacity">
                            <!-- Single color selection mode -->
                            <expand macro="auto_color"/>
                        </when>
                        <!--<when value="brewer">-->
                        <!--[> Brewer continuum selection <]-->
                        <!--<expand macro="brewer_scheme" />-->
                        <!--</when>-->
                    </conditional>
                </when>
            </conditional>
        </section>
    </xml>
    <xml name="track_visibility">
        <param name="track_visibility" type="select" label="Track Visibility">
            <option value="default_off">Off when browser opens</option>
            <option value="default_on" selected="true">On when browser opens</option>
        </param>
    </xml>
    <xml name="track_styling_linear">
        <param name="show_labels" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Show labels"/>
        <param name="show_descriptions" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Show descriptions"/>
        <param name="display_mode" type="select" label="Display mode">
            <option value="normal" selected="true">normal</option>
            <option value="compact">compact</option>
            <option value="reducedRepresentation">reducedRepresentation</option>
            <option value="collapse">collapse</option>
        </param>
        <param name="max_height" type="integer" value="600" label="Max height" help="Maximum height that the track is permitted to reach in pixels."/>
    </xml>
    <xml name="track_styling_vgp">
        <section name="jbstyle" title="JBrowse Styling Options [Advanced]" expanded="false">
            <param name="show_labels" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Show labels"/>
            <param name="show_descriptions" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Show descriptions"/>
            <param name="display" type="select" label="Display style" help="How the track will be displayed by default">
                <option value="LinearBasicDisplay" selected="true">LinearBasicDisplay</option>
                <option value="LinearPileupDisplay">LinearPileupDisplay - good for dense tracks at scale</option>
                <option value="LinearArcDisplay">LinearArcDisplay</option>
            </param>
        </section>
    </xml>
    <xml name="track_styling_feature">
        <section name="jbstyle" title="JBrowse Styling Options [Advanced]" expanded="false">
            <conditional name="track_style">
                <param name="display" type="select" label="Display style" help="How the track will be displayed by default">
                    <option value="LinearBasicDisplay" selected="true">LinearBasicDisplay</option>
                    <option value="LinearPileupDisplay">LinearPileupDisplay - good for dense tracks at scale</option>
                    <option value="LinearArcDisplay">LinearArcDisplay</option>
                </param>
                <when value="LinearPileupDisplay">
                    <expand macro="track_styling_linear"/>
                </when>
                <when value="LinearBasicDisplay">
                    <expand macro="track_styling_linear"/>
                    <!-- examples: https://github.com/GMOD/jbrowse-components/discussions/2729
                        and https://github.com/GMOD/jbrowse-components/blob/main/plugins/svg/src/SvgFeatureRenderer/configSchema.ts#L41  -->
                    <param name="label" type="text" value="jexl:get(feature,'name') || get(feature,'id')" label="Features label" help="See https://jbrowse.org/jb2/docs/config_guide/#configuration-callbacks for syntax">
                        <sanitizer>
                            <valid initial="default">
                                <add value="|"/>
                                <add value="{"/>
                                <add value="}"/>
                                <add value="!"/>
                                <add value="?"/>
                                <add value="+"/>
                                <add value="="/>
                                <add value="'"/>
                            </valid>
                        </sanitizer>
                    </param>
                    <param name="description" type="text" value="jexl:get(feature,'note') || get(feature,'description')" label="Features description" help="See https://jbrowse.org/jb2/docs/config_guide/#configuration-callbacks for syntax">
                        <sanitizer>
                            <valid initial="default">
                                <add value="|"/>
                                <add value="{"/>
                                <add value="}"/>
                                <add value="!"/>
                                <add value="?"/>
                                <add value="+"/>
                                <add value="="/>
                                <add value="'"/>
                            </valid>
                        </sanitizer>
                    </param>
                </when>
                <when value="LinearArcDisplay"/>
            </conditional>
        </section>
    </xml>
    <xml name="track_styling_xam">
        <section name="jbstyle" title="JBrowse Styling Options [Advanced]" expanded="false">
            <conditional name="track_style">
                <param name="display" type="select" label="Display style" help="How the track will be displayed by default">
                    <option value="LinearAlignmentsDisplay" selected="true">LinearAlignmentsDisplay</option>
                    <option value="LinearPileupDisplay">LinearPileupDisplay</option>
                    <option value="LinearSNPCoverageDisplay">LinearSNPCoverageDisplay</option>
                    <option value="LinearReadArcsDisplay">LinearReadArcsDisplay</option>
                    <option value="LinearReadCloudDisplay">LinearReadCloudDisplay</option>
                </param>
                <!-- TODO check if possible to handle more options than just the display style-->
                <when value="LinearAlignmentsDisplay"/>
                <when value="LinearPileupDisplay"/>
                <when value="LinearSNPCoverageDisplay">
                    <param name="displayCrossHatches" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Draw cross hatches"/>
                    <param name="minScore" type="integer" value="" optional="true" label="Min score"/>
                    <param name="maxScore" type="integer" value="" optional="true" label="Max score"/>
                </when>
                <when value="LinearReadArcsDisplay"/>
                <when value="LinearReadCloudDisplay"/>
            </conditional>
        </section>
    </xml>
    <xml name="track_styling_vcf">
        <section name="jbstyle" title="JBrowse Styling Options [Advanced]" expanded="false">
            <conditional name="track_style">
                <param name="display" type="select" label="Display style" help="How the track will be displayed by default">
                    <option value="LinearVariantDisplay" selected="true">LinearVariantDisplay</option>
                    <option value="LinearPairedArcDisplay">LinearPairedArcDisplay</option>
                </param>
                <when value="LinearVariantDisplay">
                    <expand macro="track_styling_linear"/>
                </when>
                <when value="LinearPairedArcDisplay"/>
            </conditional>
        </section>
    </xml>
    <xml name="track_styling_bigwig">
        <section name="jbstyle" title="JBrowse Styling Options [Advanced]" expanded="false">
            <conditional name="track_style">
                <param name="display" type="select" label="Display style" help="How the track will be displayed by default">
                    <option value="LinearWiggleDisplay" selected="true">LinearWiggleDisplay</option>
                </param>
                <when value="LinearWiggleDisplay">
                    <param name="autoscale" type="select" label="Autoscale type">
                        <option value="local" selected="true">Local</option>
                        <option value="global">Global</option>
                        <option value="globalsd">Global ± 3σ</option>
                        <option value="localsd">Local ± 3σ</option>
                    </param>
                    <param name="resolution" type="integer" value="1" label="Resolution"/>
                    <param name="summaryScoreMode" type="select" label="Autoscale type">
                        <option value="max">Max</option>
                        <option value="min">Min</option>
                        <option value="avg">Avg</option>
                        <option value="whiskers" selected="true">Whiskers (combines all three)</option>
                    </param>
                    <param name="filled" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Fill in histogram"/>
                    <param name="scaleType" type="select" label="Autoscale type">
                        <option value="linear" selected="true">Linear</option>
                        <option value="log">Log</option>
                    </param>
                    <param name="displayCrossHatches" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Draw cross hatches"/>
                    <param name="minScore" type="integer" value="" optional="true" label="Min score"/>
                    <param name="maxScore" type="integer" value="" optional="true" label="Max score"/>
                </when>
            </conditional>
        </section>
    </xml>
    <xml name="track_menu">
        <section name="jbmenu" title="JBrowse Contextual Menu options [Advanced]" expanded="false">
            <repeat name="track_menu" title="Track Menu">
                <param name="menu_action" type="select" label="Menu action" help="Action performed when user clicks on the menu">
                    <option value="iframeDialog" selected="true">iframeDialog: causes the given url to be opened in a popup dialog box within JBrowse, in an iframe element.</option>
                    <option value="newWindow">newWindow: causes the given url to be opened in a new browser window.</option>
                    <option value="navigateTo">navigateTo: opens the given url in the same browser window, navigating the user away from JBrowse.</option>
                </param>
                <param name="menu_label" type="text" label="Menu label" help="Will be displayed in the contextual menu on each feature ({name}, {id}, {type}, {start}, {end}, {strand} variables will be interpreted)">
                    <expand macro="menu_sanitize"/>
                </param>
                <param name="menu_title" type="text" label="Menu title" help="Will be displayed in the popup title bar if displayed ({id}, {type}, {start}, {end}, {strand} variables will be interpreted)">
                    <expand macro="menu_sanitize"/>
                </param>
                <param name="menu_url" type="text" label="Menu url" help="Destination URL ({name}, {id}, {type}, {start}, {end}, {strand} variables will be interpreted)">
                    <expand macro="menu_sanitize"/>
                </param>
                <param name="menu_icon" type="select" label="Menu icon" help="Icon to display next to menu label">
                    <option value="dijitIconBookmark" selected="true">Bookmark</option>
                    <option value="dijitIconSave">Save</option>
                    <option value="dijitIconPrint">Print</option>
                    <option value="dijitIconCut">Cut</option>
                    <option value="dijitIconCopy">Copy</option>
                    <option value="dijitIconClear">Clear</option>
                    <option value="dijitIconDelete">Delete</option>
                    <option value="dijitIconUndo">Undo</option>
                    <option value="dijitIconEdit">Edit</option>
                    <option value="dijitIconNewTask">New Task</option>
                    <option value="dijitIconEditTask">Edit Task</option>
                    <option value="dijitIconEditProperty">Edit Property</option>
                    <option value="dijitIconTask">Task</option>
                    <option value="dijitIconFilter">Filter</option>
                    <option value="dijitIconConfigure">Configure</option>
                    <option value="dijitIconSearch">Search</option>
                    <option value="dijitIconApplication">Application</option>
                    <option value="dijitIconChart">Chart</option>
                    <option value="dijitIconConnector">Connector</option>
                    <option value="dijitIconDatabase">Database</option>
                    <option value="dijitIconDocuments">Documents</option>
                    <option value="dijitIconMail">Mail</option>
                    <option value="dijitLeaf">Leaf</option>
                    <option value="dijitIconFile">File</option>
                    <option value="dijitIconFunction">Function</option>
                    <option value="dijitIconKey">Key</option>
                    <option value="dijitIconPackage">Package</option>
                    <option value="dijitIconSample">Sample</option>
                    <option value="dijitIconTable">Table</option>
                    <option value="dijitIconUsers">Users</option>
                    <option value="dijitIconFolderClosed">Folder Closed</option>
                    <option value="dijitIconFolderOpen">Folder Open</option>
                    <option value="dijitIconError">Error</option>
                </param>
            </repeat>
        </section>
    </xml>
    <xml name="menu_sanitize">
        <sanitizer>
            <valid>
                <add value="{"/>
                <add value="}"/>
                <add value="!"/>
                <add value="?"/>
                <add value="&amp;"/>
                <add value="+"/>
                <add value="="/>
                <add value="'"/>
                <add value="&quot;"/>
            </valid>
        </sanitizer>
    </xml>
    <xml name="input_conditional" token_label="Track Data" token_format="data">
        <conditional name="useuri">
            <param name="insource" type="select" label="Define track data as a history file or an internet URI" help="A public URI implies that all the associated tabix files are also in place. They are created for history files">
                <option value="history" selected="true">Track data from a history file</option>
                <option value="uri">Tabix data URI - index files must be available at corresponding URI</option>
            </param>
            <when value="history">
                <param name="annotation" type="data" format="@FORMAT@" optional="true" label="@LABEL@" multiple="True"/>
            </when>
            <when value="uri">
                <param name="annouri" type="text" label="@LABEL@"/>
                <param name="annoname" type="text" label="Short name for track display">
                    <sanitizer invalid_char="_">
                        <valid initial="string.printable">
                            <remove value="'"/>
                        </valid>
                    </sanitizer>
                </param>
            </when>
        </conditional>
    </xml>
    <xml name="pafref_conditional" token_label="Track Data" token_format="data">
        <conditional name="pafuseuri">
            <param name="insource" type="select" label="PAF reference data from a history file or an internet URI?" help="Multiple references can be used for mashmap PAF. A URI source requires all the associated tabix index files to be in place.">
                <option value="history" selected="true">PAF reference comparison genome from a history file</option>
                <option value="uri">PAF reference comparison genome tabix .gz URI with index files at the corresponding URIs</option>
            </param>
            <when value="history">
                <param name="annotation" type="data" format="@FORMAT@" label="@LABEL@" help="Add all PAF reference comparison genomes used to make the PAF" multiple="true"/>
            </when>
            <when value="uri">
                <repeat name="refuri" title="PAF reference comparison genome URI" min="1">
                    <param name="annotation" type="text" label="@LABEL@"/>
                    <param name="annoname" type="text" label="Short name for this reference" help="Short names take less track space">
                        <sanitizer invalid_char="_">
                            <valid initial="string.printable">
                                <remove value="'"/>
                            </valid>
                        </sanitizer>
                    </param>
                </repeat>
            </when>
        </conditional>
    </xml>
    <xml name="citations">
        <citations>
            <citation type="doi">10.1186/s13059-016-0924-1</citation>
            <citation type="doi">10.1101/gr.094607.109</citation>
        </citations>
    </xml>
</macros>