view rest_tool.xml @ 8:3c1e862e8cd6 draft

Uploaded
author bernhardlutz
date Fri, 02 May 2014 05:40:28 -0400
parents 9ee84d9fd3a7
children 80bf0039c0dc
line wrap: on
line source

<tool id="rest_tool" name="Fetch Data from pubchem" version="0.1.0">
    <description>Fetch pubchem data</description>
    <version_command>echo "0.1.0"</version_command>
    <requirements>
        <requirement type="set_environment">REST_TOOL_SCRIPT_PATH</requirement>
    </requirements>
    <macros>
        <import>rest_tool_macros.xml</import>
        <import>rest_tool_macro_advanced.xml</import>
    </macros>
    <command interpreter="python">
       #if $choose_action.action == 'specific_data':
        rest_tool.py
            #if $choose_action.field_or_file.field_or_file_select == 'field':
            --id $choose_action.field_or_file.id_value
            #else:
            --id-file $choose_action.field_or_file.id_value
            #end if
            --type $choose_action.choose_acs.input_type
            
            #if $choose_action.choose_acs.input_type == 'assay':
            --operation $choose_action.choose_acs.operation_assay.operation_assay
                #if $choose_action.choose_acs.operation_assay.operation_assay == 'property':
                    --property-value $choose_action.choose_acs.operation_assay.property_assay
                #elif $choose_action.choose_acs.operation_assay.operation_assay == 'aids' or $choose_action.choose_acs.operation_assay.operation_assay == 'cids' or $choose_action.choose_acs.operation_assay.operation_assay == 'sids':
                    --id-type $choose_action.choose_acs.operation_assay.ids_type_assay
                #end if
            #elif $choose_action.choose_acs.input_type == 'compound':
            --operation $choose_action.choose_acs.operation_compound.operation_compound
                #if $choose_action.choose_acs.operation_compound.operation_compound == 'property':
                    --property-value $choose_action.choose_acs.operation_compound.property_compound
                #elif $choose_action.choose_acs.operation_compound.operation_compound == 'aids' or $choose_action.choose_acs.operation_compound.operation_compound == 'cids' or $choose_action.choose_acs.operation_compound.operation_compound == 'sids':
                    --id-type $choose_action.choose_acs.operation_compound.ids_type_compound
                #end if
            #else:
            --operation $choose_action.choose_acs.operation_substance.operation_substance
                #if $choose_action.choose_acs.operation_substance.operation_substance == 'property':
                    --property-value $choose_action.choose_acs.operation_substance.property_substance
                #elif $choose_action.choose_acs.operation_substance.operation_substance == 'aids' or $choose_action.choose_acs.operation_substance.operation_substance == 'cids' or $choose_action.choose_acs.operation_substance.operation_substance == 'sids':
                    --id-type $choose_action.choose_acs.operation_substance.ids_type_substance
                #end if
            #end if
            --outfile $output
        #elif $choose_action.action == 'compounds_for_assay':
            rest_tool_comp_for_assay.py
            #if $choose_action.field_or_file.field_or_file_select == 'field':
            --aid $choose_action.field_or_file.id_value
            #else:
            --aid-file $choose_action.field_or_file.id_value
            #end if
            --outfile $output
        #elif $choose_action.action == 'assays_by_activity_or_target':
            rest_tool_assay_by_activity_or_target.py
            #if $choose_action.activity_or_target.activity_or_target == 'activity':
                --activity $choose_action.activity_or_target.activity
            #else:
                --target $choose_action.activity_or_target.target_id
                --target-type $choose_action.activity_or_target.target_identifier_type
            #end if
            --outfile $output
        #elif $choose_action.action == 'advanced':
            rest_tool_advanced.py
                --outfile $output
                --type $choose_action.input_type.input_type_select
                --id-type $choose_action.input_type.namespace_id.namespace_id_select
                #if $choose_action.input_type.input_type_select == 'assay':
                    #if $choose_action.input_type.namespace_id.namespace_id_select == 'aid':
                        --id-type-ff $choose_action.input_type.namespace_id.field_or_file.field_or_file_select
                        --id-value $choose_action.input_type.namespace_id.field_or_file.id_value
                    #elif $choose_action.input_type.namespace_id.namespace_id_select == 'target':
                        --id-value $choose_action.input_type.namespace_id.target_select
                    #elif $choose_action.input_type.namespace_id.namespace_id_select == 'type':
                        --id-value $choose_action.input_type.namespace_id.type_select
                    #elif $choose_action.input_type.namespace_id.namespace_id_select == 'activity':
                        --id-value $choose_action.input_type.namespace_id.activity_select
                    #end if
                    
                    --operation $choose_action.input_type.operation_assay.operation_assay_select
                    
                    #if $choose_action.input_type.operation_assay.operation_assay_select == 'property':
                        --operation-value $choose_action.input_type.operation_assay.operation_assay_select.property_assay
                    #elif $choose_action.input_type.operation_assay.operation_assay_select == 'target':
                        --operation-value $choose_action.input_type.operation_assay.operation_assay_select.target_assay
                    #elif $choose_action.input_type.operation_assay.operation_assay_select == 'aids' or $choose_action.input_type.operation_assay.operation_assay_select == 'cids' or $choose_action.input_type.operation_assay.operation_assay_select == 'sids':
                        --ids-operation-type $choose_action.input_type.operation_assay.ids_type_assay
                    #end if
                #elif $choose_action.input_type.input_type_select == 'compound':
                    #if $choose_action.input_type.namespace_id.namespace_id_select == 'cid' or $choose_action.input_type.namespace_id.namespace_id_select == 'name' or $choose_action.input_type.namespace_id.namespace_id_select == 'smiles' or $choose_action.input_type.namespace_id.namespace_id_select == 'inchi' or $choose_action.input_type.namespace_id.namespace_id_select == 'inchikey' or $choose_action.input_type.namespace_id.namespace_id_select == 'sdf':
                        --id-type-ff $choose_action.input_type.namespace_id.field_or_file.field_or_file_select
                        --id-value $choose_action.input_type.namespace_id.field_or_file.id_value 
                    #elif $choose_action.input_type.namespace_id.namespace_id_select == 'xref':
                        --xref $choose_action.input_type.namespace_id.xref_select
                        --xref-value $choose_action.input_type.namespace_id.xref_value
                    #end if
                    
                    --operation $choose_action.input_type.operation_compound.operation_compound_select
                    #if $choose_action.input_type.operation_compound.operation_compound_select == 'property':
                        --operation-value $choose_action.input_type.operation_compound.property_compound
                    #elif $choose_action.input_type.operation_compound.operation_compound_select == 'xrefs':
                        --operation-value $choose_action.input_type.operation_compound.xref_compound
                    #elif $choose_action.input_type.operation_compound.operation_compound_select == 'aids' or $choose_action.input_type.operation_compound.operation_compound_select == 'cids' or $choose_action.input_type.operation_compound.operation_compound_select == 'sids':
                        --ids-operation-type $choose_action.input_type.operation_compound.ids_type_compound
                    #end if
                    
                #elif $choose_action.input_type.input_type_select == 'substance':
                    #if $choose_action.input_type.namespace_id.namespace_id_select == 'sid' or $choose_action.input_type.namespace_id.namespace_id_select == 'name':
                            --id-type-ff $choose_action.input_type.namespace_id.field_or_file.field_or_file_select
                            --id-value $choose_action.input_type.namespace_id.field_or_file.id_value
                    #elif $choose_action.input_type.namespace_id.namespace_id_select == 'xrefs':
                        --xref $choose_action.input_type.namespace_id.xref_select
                        --xref-value $choose_action.input_type.namespace_id.xref_value
                    #end if
                    --operation $choose_action.input_type.operation_substance.operation_substance_select
                     #if $choose_action.input_type.operation_substance.operation_substance_select == 'property':
                        --operation-value $choose_action.input_type.operation_substance.operation_substance_select.property_substance
                    #elif $choose_action.input_type.operation_substance.operation_substance_select == 'xref':
                        --operation-value $choose_action.input_type.operation_substance.xref_substance
                    #elif $choose_action.input_type.operation_substance.operation_substance_select == 'aids' or $choose_action.input_type.operation_substance.operation_substance_select == 'cids' or $choose_action.input_type.operation_substance.operation_substance_select == 'sids':
                        --ids-operation-type $choose_action.input_type.operation_substance.ids_type_substance
                    #end if
                #end if
        #end if
    </command>

    <inputs>
        <conditional name="choose_action">
            <param name="action" multiple="false" type="select" label="Choose action">
                <option value="specific_data">Get Data for specific Assay/Compound/Substance</option>
                <option value="compounds_for_assay">Get all compound IDs given BioAssay IDs</option>
                <option value="assays_by_activity_or_target">Get BioAssay IDs given activity/target</option>
                <option value="advanced" selected="True">Advanced</option>
            </param>
            <when value="search">
                    <param name="input_type_search" multiple="false" type="select" label="Search for">
                        <expand macro="acs_options" />
                    </param>
                    <param name="input_type" multiple="false" type="select" label="Search By">
                        <option value="name">Name</option>
                    </param>
                    <param format="txt" name="search_name" type="text" label="Enter the Name" />
            </when>
            <when value="specific_data">
                <expand macro="field_or_file" />
                <conditional name="choose_acs">
                    <param name="input_type" multiple="false" type="select" label="Input Type">
                        <expand macro="acs_options" />
                    </param>
        
                    <when value="assay">
                        <expand macro="conditional_operation_assay" />
                    </when>
                    <when value="compound">
                        <expand macro="conditional_operation_compound" />
                    </when>
                    <when value="substance">
                        <expand macro="conditional_operation_substance" />
                    </when>
                </conditional>
            </when>
            <!-- second option -->
            <when value="compounds_for_assay">
                <expand macro="field_or_file" />
            </when>
            <!-- third option -->
            <when value="assays_by_activity_or_target">
                <conditional name="activity_or_target">
                    <param name="activity_or_target" multiple="false" type="select" label="Look for">
                        <option value="target">Target</option>
                        <option value="activity">Activity</option>
                    </param>
                    <when value="activity">
                        <param format="txt" name="activity" type="text" label="Enter the activity" />
                    </when>
            
                    <when value="target">
                        <param name="target_identifier_type" multiple="false" type="select" label="Choose target identifier">
                            <option value="gi">GI</option>
                            <option value="geneid">Gene ID</option>
                            <option value="genesymbol">Gene Symbol</option>
                        </param>
                        <param format="txt" name="target_id" type="text" label="Enter the target" />
                    </when>
                </conditional>
            </when>
            <when value="advanced">
                <expand macro="advanced2" />
            </when>
        </conditional>
    </inputs>
    <outputs>
        <data format="csv" name="output" />
    </outputs>
    <tests>
    </tests>
    <help>
**What it does**

This tool fetches data from pubchem. The outputformat will be if possible csv > txt > xml
    </help>
</tool>