view sedmat.xml @ 0:d50f079096ee

Push to main toolshed
author pieter.lukasse@wur.nl
date Wed, 08 Jan 2014 11:39:16 +0100
parents
children d1edc7971d48
line wrap: on
line source

<tool name="SedMat" id="sedmat1" version="1.0.2">
	<description>Matches MS and MS/MS results</description>
	<!-- 
	   For remote debugging start you listener on port 8000 and use the following as command interpreter:
	       java -jar -Xdebug -Xrunjdwp:transport=dt_socket,address=D0100564.wurnet.nl:8000 
	    -->
	<command interpreter="java -jar ">
	    SedMat_cli.jar 
	    -pl $inputMS 
	    -plInputFormat apml 
	    -ppids $fileType.inputFormatType.ppidsFile 
	    -ppidsFileGrouping $fileType.type 
	    -ppidsInputFormat $fileType.inputFormatType.ppidsInputFormat
	    -ppidsFileDescription $fileType.inputFormatType.ppidsFile.name  
	    #if $fileType.inputFormatType.ppidsInputFormat == "mzid"
			-spectraDataFile $fileType.inputFormatType.spectraDataFile
		#end if 
	    -out $outputData 
	    -outUnmatchedMS2 $outUnmatchedMS2
	    -mtol $mtol 
	    -rttol $rttol 
	    -rtShiftDetectionWindow $rtShiftDetectionWindow
	    -matchOnSameSourceOnly $matchOnSameSourceOnly
	    -chargeStatesToGenerate $chargeStatesToGenerate
	    -outReport $htmlReportFile
	    -outReportPicturesPath $htmlReportFile.files_path
        #if $troubleshoot1.troubleshootPeakLocations == True
        	-troubleshootPeakLocations YES
        	-mStart $troubleshoot1.mStart
        	-mEnd $troubleshoot1.mEnd
        	-rtStart $troubleshoot1.rtStart
        	-rtEnd $troubleshoot1.rtEnd
        	-filterSourceName $troubleshoot1.filterSourceName
        #end if
        #if $matchOnNamingConvention.match == True
        	-matchOnNamingConvention YES
        	-namingConventionCodesForMatching $matchOnNamingConvention.namingConventionCodesForMatching
        #end if
        	    
	</command>
	
	<inputs>
	 	
  		<param name="inputMS" type="data" format="apml" label="MS data (APML format)" />
	 	<!-- possible option <validator type="metadata" check="base_name" message="Metadata missing, click the pencil icon in the history item and set base_name."/> -->

	 	<conditional name="fileType">
		    <param name="type" type="select" label="Peptide identification file grouping type">
		      <option value="single" selected="true">single-File</option>
		      <option value="fileSet">fileSet</option>
		    </param>
		    <when value="single">
		      <conditional name="inputFormatType">
		      	<param name="ppidsInputFormat" type="select" label="MS/MS input format">
			    	<option value="mzid" selected="true">mzIdentML on mzML</option>
			    	<option value="apml">APML</option>
				</param>
				<when value="mzid">
		      		<param name="spectraDataFile" type="data" format="mzml" label="MS/MS spectra file (mzml)"/>
		      		<param name="ppidsFile" type="data" format="mzid" label="MS/MS peptide identifications file (mzidentml)"/>
		      	</when>
		      	<when value="apml">
		      		<param name="ppidsFile" type="data" format="apml" label="MS/MS peptide identifications file (apml)">
		      			<!-- TODO - find out how to use
		      			<validator type="expression" message="You already selected this file as the MS data file.">value.id == inputMS,{"inputMS":$inputMS},{}</validator>-->
		      		</param>
		      	</when>
		      </conditional>
		    </when>
		    <when value="fileSet">
		      <conditional name="inputFormatType">
		      	<param name="ppidsInputFormat" type="select" label="inputFormat">
			    	<option value="mzid" selected="true">mzIdentML on mzML</option>
				</param>
				<when value="mzid">
		      		<param name="spectraDataFile" type="data" format="prims.fileset.zip" label="MS/MS spectra fileSet (N mzml files)"/>
		      		<param name="ppidsFile" type="data" format="prims.fileset.zip" label="MS/MS peptide identifications fileSet (N mzidentml files)"/>
		      	</when>
		      </conditional>
		    </when>
		</conditional>
		<param name="mtol" type="integer" size="10" value="50" label="m/z tolerance (ppm) " />
		<param name="rttol" type="integer" size="10" value="150" label="Rention time tolerance (seconds) " />
		<param name="rtShiftDetectionWindow" type="integer" size="10" value="20" label="Rention time shift detection window (seconds) " help="Size of the window to use for average rt shift calculations"/>

		<param name="matchOnSameSourceOnly" type="boolean" checked="false" label="Match peaks from same source only" help="If you want this, you might have to inform how to match the source files"/>
     	<conditional name="matchOnNamingConvention">
     		<param name="match" type="boolean" truevalue="Yes" falsevalue="No" checked="false" label="Match using naming convention" help="Use a list of codes that occur in the file names and that link them together."/>
     		<when value="Yes">
     			<param name="namingConventionCodesForMatching" type="text" size="100" value="" label="List of codes in naming convention" help="Add the CSV list of codes that occur in the file names and that link them together. E.g. '_F1,_F2,_F3,etc.'"/>
     		</when>
     	</conditional>	 

 		<param name="chargeStatesToGenerate" type="select" display="checkboxes" multiple="true" label="Generate extra charge states" help="The selected charge states will be generated for each MS2 feature ">
	      	<option value="1" selected="true">1</option>
	      	<option value="2" selected="true">2</option>
	      	<option value="3" selected="true">3</option>
	      	<option value="4" selected="true">4</option>
	      	<option value="5">5</option>
		</param>

   		<param name="summaryReport" type="boolean" checked="true" label="Generate summary report" help="NB: this will increase the processing time"/>
     	
     	<conditional name="troubleshoot1">
     		<param name="troubleshootPeakLocations" type="boolean" truevalue="Yes" falsevalue="No" checked="false" label="Troubleshoot ms1/ms2 peak locations" help="Small trial run to check if the MS and MS/MS peak lists in their current states can easily be matched "/>
     		<when value="Yes">
     			<param name="mStart" optional="false" type="integer" size="10" value="100" label="Set m/z start " />
     			<param name="mEnd" optional="false" type="integer" size="10" value="1000" label="Set m/z end " />
				<param name="rtStart" optional="false" type="integer" size="10" value="10" label="Set rention time start (minutes) " />
				<param name="rtEnd" optional="false" type="integer" size="10" value="20" label="Set rention time end (minutes) " />
				<param name="filterSourceName" type="text" size="100" value="" label="Restrict matching to a specific subset of the files " help="Part of a file name that occurs in both a ms1 and ms2 file (e.g. 'RibO_1_msE1')"/>
     		</when>
     	</conditional>
     	
	</inputs>
	<outputs>
	  <data name="outputData" format="apml" label="${inputMS.metadata.base_name} - ${tool.name} on ${on_string}: APML" metadata_source="inputMS"></data>
	  <data name="outUnmatchedMS2" format="csv" label="${inputMS.metadata.base_name} - ${tool.name} on ${on_string}: unmatched MS2 features CSV" metadata_source="inputMS"></data>
	  <data name="htmlReportFile" format="html" label="${tool.name} on ${on_string} - HTML report">
	 	<!-- If the expression is false, the file is not created -->
	  	<filter>( summaryReport == True )</filter>
	  </data>
	</outputs>
	<tests>
	  <!--  find out how to use -->
	  <test>
	  </test>
	</tests>
  <help>
  
.. class:: infomark
  
This tool matches MS and MS/MS results. SEDMAT stands for "Single Experiment Data Matching Tool".
It can match peaks found in the MS spectra with the peptides found using the MS/MS spectra.
The result is the list of MS peaks annotated with peptides and proteins.

-----

**Output example**

This tools returns APML output, a Cytoscape network (.xgmml) of the matches and Retention Time plots (.pdf). 

  </help>
</tool>