view gmql_operators_select.xml @ 0:a80c93182db3 draft default tip

planemo upload for repository https://github.com/lu-brn/gmql-galaxy commit 953ee36ceda5814dc9baa03427bc0eb4ee2e93bd-dirty
author geco-team
date Tue, 26 Jun 2018 09:08:06 -0400
parents
children
line wrap: on
line source

<macros>
    <import>gmql_queries_macros.xml</import>
    <xml name="select">
        <conditional name="input">
            <param name="input_type" type="select" display="radio" label="Dataset over which SELECT samples"
                   help="It can be a dataset in the user space or the result of a MATERIALIZE operation still to be executed.">
                <option value="i_ds">User Dataset</option>
                <option value="i_var">Materializing result</option>
            </param>
            <when value="i_ds">
                <param name="gmql_datasets" type="data" format="gmql_repository" label="Working Datasets" />
                <param name="input_ds" type="select" label="Select Dataset" refresh_on_change="True">
                    <options from_dataset="gmql_datasets">
                        <column name="value" index="0"/>
                    </options>
                </param>
                <expand macro="predicates">
                    <expand macro="advanced_mode">
                        <expand macro="meta_block" optional="true" vartype="select"/>
                        <repeat name="add_meta_blocks" title="Additional Conditions Block" default="0" min="0"
                                help="Compose different blocks to obtain more complex conditions">
                            <expand macro="meta_block" vartype="select">
                                <expand macro="block_logCon"/>
                            </expand>
                        </repeat>
                    </expand>
                </expand>
            </when>
            <when value="i_var">
                <expand macro="input_var" name="input_var" label="Variable name" optional="false"/>
                <expand macro="predicates">
                    <expand macro="advanced_mode">
                        <expand macro="meta_block" optional="true" vartype="text"/>
                        <repeat name="add_meta_blocks" title="Additional Conditions Block" default="0" min="0"
                                help="Compose different blocks to obtain more complex conditions">
                            <expand macro="meta_block" vartype="text">
                                <expand macro="block_logCon"/>
                            </expand>
                        </repeat>
                    </expand>
                </expand>
            </when>
        </conditional>
        <expand macro="output_var" />
        <expand macro="materialize_stm" />
    </xml>
    <xml name="predicates">
        <section name="metadata_predicates" title="Conditions on metadata" expanded="false"
                 help="Selection based on the existence and values of certain metadata attributes in each sample.">
            <yield/>
        </section>
        <section name="region_predicates" title="Conditions on region fields" expanded="false"
                 help="Selection based on the characteristics of the genomic regions of each sample.">
            <expand macro="advanced_mode">
            <expand macro="region_block" optional="true"/>
            <repeat name="add_region_blocks" title="Additional Conditions Block" default="0" min="0"
                    help="Compose different blocks to obtain more complex conditions">
                <expand macro="region_block">
                    <expand macro="block_logCon"/>
                </expand>
            </repeat>
            </expand>
            </section>
        <section name="semijoin_predicate" title="Conditions in relation of an external datasets" expanded="false"
                 help="Selection based on the existence of certain metadata attributes
                                   and the matching of their values with those associated with at least one sample in an
                                   external dataset D_EXT">
            <expand macro="semijoin"/>
        </section>
    </xml>
    <xml name="advanced_mode">
        <conditional name="conditions">
            <param name="ad_flag" type="select" display="radio"
                   label="Build up conditions step by step or use advance mode to directly type
                                      the logical formula.">
                <option value="steps">Step by step</option>
                <option value="string">Advanced mode</option>
            </param>
            <when value="string">
                <param name="conditions_string" type="text" label="Conditions" area="true"
                       help="For details on the format check the GMQL Manual" />
            </when>
            <when value="steps">
                <yield />
            </when>
        </conditional>
    </xml>
    <xml name="meta_block" token_optional="optional" token_vartype="vartype">
        <yield />
        <expand macro="metadata_predicate" optional="@OPTIONAL@" vartype="@VARTYPE@"/>
        <repeat name="pm_additional" title="Additional Condition"
                min="0" default="0">
            <expand macro="metadata_predicate" vartype="@VARTYPE@">
                <expand macro="logCon"/>
            </expand>
        </repeat>
    </xml>
    <xml name="metadata_predicate" token_optional="optional" token_vartype="vartype">
        <yield />
        <param name="negate" type="boolean" label="Negative Condition" optional="@OPTIONAL@"/>
        <param name="attribute" type="@VARTYPE@" label="Metadata Attribute Name" optional="@OPTIONAL@"
               refresh_on_change="True"
               dynamic_options="get_metadata_attr(user=authToken.file_name,ds=input_ds, ds_list=gmql_datasets.file_name)" />
        <expand macro="condition" optional="@OPTIONAL@" />
        <param name="value" type="select" label="Value whom to confront the metadata attribute with" optional="@OPTIONAL@"
               dynamic_options="get_metadata_values(user=authToken.file_name, ds=input_ds, ds_list=gmql_datasets.file_name, att=attribute)" />
    </xml>
    <xml name="region_block" token_optional="optional">
        <yield />
        <expand macro="region_predicate" optional="@OPTIONAL@"/>
        <repeat name="pr_additional" title="Additional Condition"
                min="0" default="0">
            <expand macro="region_predicate">
                <expand macro="logCon"/>
            </expand>
        </repeat>
    </xml>
    <xml name="region_predicate" token_optional="optional">
        <yield />
        <param name="negate" type="boolean" label="Negative Condition" optional="@OPTIONAL@" />
        <param name="attribute" type="text" label="Region Attribute Name" optional="@OPTIONAL@" >
            <expand macro="region_attribute" />
        </param>
        <expand macro="condition" optional="@OPTIONAL@" />
        <param name="value" type="text" label="Value whom to confront the region attribute with" optional="@OPTIONAL@" >
            <expand macro="region_value"/>
        </param>
        <param name="is_meta_value" type="boolean" label="Is it the confront value a metadata field?" optional="@OPTIONAL@"
               help="The use of metadata attributes in predicates on region attributes is enabled." />
    </xml>
    <xml name="semijoin">
        <repeat name="sj_attributes" title="Metadata Attributes to match in DS_EXT" min="0" default="0">
            <expand macro="metajoin_attribute" name="sj_att" />
        </repeat>
        <param name="condition" type="select" label="Condition">
            <option value="IN">IN</option>
            <option value="NOT_IN">NOT IN</option>
        </param>
        <expand macro="input_var" name="ds_ext" label="DS_EXT" optional="true" />
    </xml>
    <xml name="region_attribute">
        <expand macro="text_val" />
        <option value="chr">chr</option>
        <option value="left">left</option>
        <option value="right">right</option>
        <option value="strand">strand</option>
        <option value="region_field">region_field</option>
    </xml>
    <xml name="region_value">
        <validator type="regex" message="Valid characters are letters, digits, '.', +, -, and the wildcard symbol '*'">[+\-\*]|([\d]+\.)?[\d]+|[\w]+$</validator>
        <option value="*">any value</option>
        <option value="string">string</option>
        <option value="1">1</option>
        <option value="0.0">0.0</option>
        <option value="+">+</option>
        <option value="-">-</option>
    </xml>
    <xml name="condition" token_optional="optional">
        <param name="condition" type="select" label="Condition" optional="@OPTIONAL@">
            <option value="eq"><![CDATA[ == ]]></option>
            <option value="gt"><![CDATA[ > ]]></option>
            <option value="lt"><![CDATA[ < ]]></option>
            <option value="get"><![CDATA[ >= ]]></option>
            <option value="let"><![CDATA[ <= ]]></option>
        </param>
    </xml>
</macros>