spacer
spacer

Differences

This shows you the differences between two versions of the page.

services:archive:pfa:iprscan_soap [2013/08/05 10:17]
services:archive:pfa:iprscan_soap [2014/04/09 09:54] (current)
hpm (81.132.126.93) Archived documentation for InterProScan 4.x (SOAP)
Line 1: Line 1:
 +====== InterProScan 4.x (SOAP) ======
 +===== Please Note =====
 +
 +The InterProScan 4.x web services were **retired** on Wednesday 9th April 2014.
 +
 +With the release of InterPro 44.0 and the accompanying release of InterProScan 5 (5-44.0), InterProScan 4.x was frozen at the last release (InterProScan 4.8 with InterPro 43.1). All users are encouraged to migrate to the InterProScan 5 Web Services:
 +
 +  * [[:services:pfa:iprscan5_rest|InterProScan 5 (REST)]]
 +  * [[:services:pfa:iprscan5_soap|InterProScan 5 (SOAP)]]
 +
 +===== Description =====
 +
 +InterProScan ((Quevillon E., Silventoinen V., Pillai S., Harte N., Mulder N., Apweiler R. and Lopez R. (2005)\\
 +**InterProScan: protein domains identifier.**\\
 +Nucleic Acids Res. 33:W116-20\\
 +PubMed: [[http://europepmc.org/abstract/MED/15980438|15980438]]\\
 +DOI: [[http://dx.doi.org/10.1093/nar/gki442|10.1093/nar/gki442]]\\
 +)) ((Zdobnov E.M. and Apweiler R. (2001)\\
 +**InterProScan--an integration platform for the signature-recognition methods in InterPro.**\\
 +Bioinformatics 17(9):847-848\\
 +PubMed: [[http://europepmc.org/abstract/MED/11590104|11590104]]\\
 +DOI: [[http://dx.doi.org/10.1093/bioinformatics/17.9.847|10.1093/bioinformatics/17.9.847]]
 +)) is a tool that combines different protein signature recognition methods into one resource.
 +
 +**Note**: this service uses InterProScan 4.x, for details about the currently available versions of InterProScan please see: [[ftp://ftp.ebi.ac.uk/pub/software/unix/iprscan/index.html]].
 +
 +For more information see:
 +  * Web form: [[http://www.ebi.ac.uk/Tools/pfa/iprscan/]]
 +  * [[.:iprscan_rest|REST service]]
 +  * InterProScan 4.x package:
 +    * [[ftp://ftp.ebi.ac.uk/pub/software/unix/iprscan/4/README.html|README]]
 +    * [[ftp://ftp.ebi.ac.uk/pub/software/unix/iprscan/4/FAQs.html|FAQ]]
 +
 +Web service registry entries:
 +  * [[http://www.biocatalogue.org/services/2753|BioCatalogue]]
 +  * [[http://health2api.com/?p=9505|Health 2.0 API]]
 +  * [[http://www.programmableweb.com/api/ebi-interproscan|ProgrammableWeb.com]]
 +
 +===== Important ====
 +
 +We kindly ask all users of EMBL-EBI Web Services to submit tool jobs in batches of up to 30 at a time and to not submit more until the results and processing has completed for these. This enables users as well as the service maintainers to deal more easily with local and remote network outages as well as scheduled or unscheduled downtime.
 +
 +Service provision happens on a fair-share basis. Overzealous usage of a particular resource will be dealt with in accordance to the [[http://www.ebi.ac.uk/about/terms-of-use|EMBL-EBI's Terms of Use]].
 +
 +If you are planning on systematically processing many sequences using this service please see [[:help:interproscan|InterProScan Web Service FAQ]].
 +
 +==== Nucleotide Sequences ====
 +
 +To process nucleotide sequences using InterProScan 4.x:
 +
 +  - **Translate your nucleotide sequence**. The standalone version of InterProScan 4.x uses a basic ORF finding process to predict possible proteins for a nucleotide sequence. This uses [[http://emboss.open-bio.org/rel/rel6/apps/sixpack.html|EMBOSS sixpack]] to perform the translation and filter the resulting open reading frame (ORF) sequences by length. Alternative tools such as [[http://emboss.open-bio.org/rel/rel6/apps/transeq.html|EMBOSS transeq]] are also available, but may require an additional filtering process to limit the ORF sequences to those above a certain length. These tools are available as part of the [[http://emboss.open-bio.org/|EMBOSS]] package, and via the [[:about:webservices#sequence_translation|Sequence Translation web services]]. For organisms where transcripts are spliced before translation, the use of more sophisticated gene prediction software is recommended to obtain probable protein sequences for the genes found.
 +  - **Filter ORFs by sequence length**. Short sequences (<80 aa) are unlikely to have any signature matches, so unless there is additional evidence that the sequence occurs, short sequences can be discarded. The [[http://emboss.open-bio.org/|EMBOSS]] programs [[http://emboss.open-bio.org/rel/rel6/apps/getorf.html|getorf]] and [[http://emboss.open-bio.org/rel/rel6/apps/sixpack.html|sixpack]] provide options to do length filtering when performing the translation.
 +  - **Significant hits from sequence similarity searches**. The signatures used by InterProScan are based on known protein sequences so a filtering step by performing a BLAST or FASTA sequence similarity search with the ORF translations against the [[http://www.uniprot.org/help/uniprotkb|UniProtKB]] or [[http://www.uniprot.org/help/uniparc|UniParc]] protein sequence databases and only keeping sequences which have hits with E-values <0.001. In the case where an exact match is found to the sequence (using a sequence similarity search or services such as [[http://www.ebi.ac.uk/Tools/picr/|PICR]] or [[http://www.ebi.ac.uk/Tools/so/seqcksum/|SeqCksum]]), you can go directly to the InterPro Matches databases to get the signature matches for the sequence (available in [[http://www.ebi.ac.uk/Tools/dbfetch/|dbfetch]] and [[:services:dbfetch|WSDbfetch]] as [[http://www.ebi.ac.uk/Tools/dbfetch/dbfetch/dbfetch.databases#iprmc|IPRMC]] or [[http://www.ebi.ac.uk/Tools/dbfetch/dbfetch/dbfetch.databases#iprmcuniparc|IPRMC UniParc]], in the [[http://www.ebi.ac.uk/interpro/biomart/martview/|InterPro BioMart]] or on the [[ftp://ftp.ebi.ac.uk/pub/databases/interpro/|InterPro FTP site]]).
 +
 +**Note**: the standalone version of InterProScan 4.x can perform the translation and ORF length filtering as part of the submission and is recommended if you need to perform large numbers of analysis and have access to the required resources. See [[ftp://ftp.ebi.ac.uk/pub/software/unix/iprscan/4/README.html|InterProScan 4.x Readme]] for details.
 +
 +===== Clients =====
 +
 +Sample clients are provided for a number of programming languages. For details of how to use these clients, download the client and run the program without any arguments.
 +
 +^ Language ^ Download ^ Requirements ^
 +^ C# | .NET Executable: ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/csharp/bin/IPRScanCliClient.exe|IPRScanCliClient.exe]]''; Source: ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/csharp/EBIWS2_CSharp/EbiWS/AbstractWsClient.cs|AbstractWsClient.cs]]'', ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/csharp/EBIWS2_CSharp/EbiWS/IPRScanClient.cs|IPRScanClient.cs]]'', ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/csharp/EBIWS2_CSharp/IPRScanCliClient/IPRScanCliClient.cs|IPRScanCliClient.cs]]'' | A .NET runtime environment. If building from source development tools are also required. See the [[tutorials:06_Programming:dot_net|.NET tutorial]] for details. |
 +^ Java | Executable jar: ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/java/jar/IPRScan_Axis1.jar|IPRScan_Axis1.jar]]''; Source: ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/java/src/uk/ac/ebi/webservices/AbstractWsToolClient.java|AbstractWsToolClient.java]]'', ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/java/src/uk/ac/ebi/webservices/axis1/IPRScanClient.java|IPRScanClient.java]]'' | [[http://ws.apache.org/axis/|Axis 1.4]]; All dependencies, including [[http://ws.apache.org/axis/|Axis 1.4]] and [[http://commons.apache.org/cli/|Commons-CLI]], are available in ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/java/jar/ebiws-lib.zip|ebiws-lib.zip]]''. |
 +^  | Executable jar: ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/java/jar/IPRScan_JAXWS.jar|IPRScan_JAXWS.jar]]''; Source: ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/java/src/uk/ac/ebi/webservices/AbstractWsToolClient.java|AbstractWsToolClient.java]]'', ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/java/src/uk/ac/ebi/webservices/jaxws/IPRScanClient.java|IPRScanClient.java]]'' | [[https://jax-ws.dev.java.net/|JAX-WS]]; Various dependencies including [[http://commons.apache.org/cli/|Commons-CLI]], are available in ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/java/jar/ebiws-lib.zip|ebiws-lib.zip]]''. |
 +^ Perl | ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/perl/soaplite/iprscan_soaplite.pl|iprscan_soaplite.pl]]'' | [[http://search.cpan.org/perldoc?SOAP::Lite|SOAP::Lite]] |
 +^ | ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/perl/xmlcompile/iprscan_xmlcompile.pl|iprscan_xmlcompile.pl]]'' | [[http://search.cpan.org/perldoc?XML::Compile::SOAP|XML::Compile::SOAP]] |
 +^ PHP | ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/php/php_soap/iprscan_lib_php_soap.php|iprscan_lib_php_soap.php]]'', ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/php/php_soap/iprscan_cli_php_soap.php|iprscan_cli_php_soap.php]]'', ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/php/php_soap/iprscan_web_php_soap.php|iprscan_web_php_soap.php]]'' | [[:tutorials:06_Programming:PHP:SOAP:PHP-SOAP]] |
 +^ Python | ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/python/soappy/iprscan_soappy.py|iprscan_soappy.py]]'' | [[http://pywebsvcs.sourceforge.net/|SOAPpy]] |
 +^  | ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/python/suds/iprscan_suds.py|iprscan_suds.py]]'' | [[https://fedorahosted.org/suds|suds]] |
 +^ Ruby | ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/ruby/soap4r/iprscan_soap4r.rb|iprscan_soap4r.rb]]'' | [[http://dev.ctor.org/soap4r|soap4r]] |
 +^ Taverna 1.x | [[http://www.myexperiment.org/workflows/1697.html|InterProScan (SOAP)]] | [[http://www.taverna.org.uk/|Taverna]] 1.x |
 +^ Taverna 2.x | [[http://www.myexperiment.org/workflows/1696.html|InterProScan (SOAP)]] | [[http://www.taverna.org.uk/|Taverna]] 2.x |
 +^ VB.NET | Source: ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/vb.net/EBIWS2_VB/EbiWS/AbstractWsClient.vb|AbstractWsClient.vb]]'', ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/vb.net/EBIWS2_VB/EbiWS/IPRScanClient.vb|IPRScanClient.vb]]'', ''[[http://www.ebi.ac.uk/Tools/webservices/download_clients/vb.net/EBIWS2_VB/IPRScanCliClient/IPRScanCliClient.vb|IPRScanCliClient.vb]]'' | A .NET runtime with development tools to build from source, see the [[tutorials:06_Programming:dot_net|.NET tutorial]] for details. For a .NET executable see the C# client above. |
 +
 +For further details of these tool-kits and workflow platforms see our [[:tutorials:00_Contents|Guide to Web Services]].
 +
 +==== Workflows ====
 +
 +In addition to these sample clients users have submitted workflows using these services to the [[http://www.myexperiment.org/|myExperiment]] workflow repository. See [[http://www.myexperiment.org/workflows?filter=WSDL_ENDPOINT%28"http%3A%2F%2Fwww.ebi.ac.uk%2FTools%2Fservices%2Fsoap%2Fiprscan%3Fwsdl"%29|workflows using the InterProScan (SOAP) Web Service]] for a list.
 +
 +===== WSDL =====
 +
 +The [[http://www.w3.org/TR/wsdl|WSDL]] for the InterProScan SOAP service: http://www.ebi.ac.uk/Tools/services/soap/iprscan?wsdl
 +
 +The [[http://mango.ctegd.uga.edu/jkissingLab/|Kissinger Research Group, University of Georgia]] provide a SAWSDL for the InterProScan (SOAP) web service, which is annotated using [[https://code.google.com/p/obi-webservice/|OBIws]]: [[http://mango.ctegd.uga.edu/jkissingLab/SWS/Wsannotation/resources/iprscan.sawsdl]]
 +
 +===== Operations =====
 +
 +==== getParameters() ====
 +
 +Get a list of the parameter names.
 +
 +Arguments: //none//
 +
 +Returns: a list of strings giving the names of the parameters.
 +
 +==== getParameterDetails(parameterId) ====
 +
 +Get details of a specific parameter.
 +
 +Arguments:
 +  * ''parameterId'': identifier/name of the parameter to fetch details of.
 +
 +Returns: a [[#wsParameterDetails]] describing the parameter and its values.
 +
 +==== run(email, title, params) ====
 +
 +Submit a job to the service.
 +
 +Arguments:
 +  * ''email'': (**required**) user e-mail address. See [[help:faq#why_do_you_need_my_e-mail_address|Why do you need my e-mail address?]]
 +  * ''title'': job title. Default: "".
 +  * ''params'': (**required**) parameters for the tool. These are described by the [[#InputParameters]] data structure.
 +
 +Returns: a string containing the job identifier (''jobId'').
 +
 +==== getStatus(jobId) ====
 +
 +Get the status of a submitted job.
 +
 +Arguments:
 +  * ''jobId'': (**required**) job identifier.
 +
 +Returns: a string containing the status.
 +
 +The values for the status are:
 +  * ''RUNNING'': the job is currently being processed.
 +  * ''FINISHED'': job has finished, and the results can then be retrieved.
 +  * ''ERROR'': an error occurred attempting to get the job status.
 +  * ''FAILURE'': the job failed.
 +  * ''NOT_FOUND'': the job cannot be found.
 +Further details can be found in [[:tutorials:01_intro#jdispatcher|Synchronous and Asynchronous Access: JDispatcher]].
 +
 +==== getResultTypes(jobId) ====
 +
 +Get the available result types for a finished job.
 +
 +Arguments:
 +  * ''jobId'': (**required**) job identifier.
 +
 +Returns: a list of [[#wsResultType]] data structures describing the available result types.
 +
 +==== getResult(jobId, type, parameters) ====
 +
 +Get the result of a job of the specified type.
 +
 +Arguments:
 +  * ''jobId'': (**required**) job identifier.
 +  * ''type'': (**required**) string specifying the result type to fetch. See [[#getResultTypes(jobId)]] for details of the available types.
 +  * ''parameters'': optional list of [[#wsRawOutputParameter]] used to provide additional parameters for derived result types.
 +
 +Returns: the result data for the specified type, base64 encoded. Depending on the SOAP library and programming language used the result may be returned in decoded form. For some result types (e.g. images) this will be binary data rather than a text string.
 +
 +===== Data Types =====
 +
 +==== InputParameters ====
 +
 +The input parameters for the job:
 +
 +^ Attribute        ^ Type    ^ Description ^
 +| ''appl''        | list    | Signature method applications to run. |
 +| ''goterms''    | boolean | Enable/disable inclusion of Gene Ontology (GO) terms in result. |
 +| ''nocrc''      | boolean | Enable/disable sequence CRC look-up in InterPro Matches. |
 +| ''sequence''    | string  | Protein sequence to analyse. The use of fasta formatted sequence is recommended. |
 +
 +More detailed information about each parameter, including valid values  can be obtained using the [[#getParameterDetails(parameterId)]] operation.
 +
 +==== wsParameterDetails ====
 +
 +Descriptive information about a tool parameter. Returned by [[#getParameterDetails(parameterId)]].
 +
 +^ Attribute      ^ Type  ^ Description ^
 +| ''name''        | string | Name of the parameter. |
 +| ''description'' | string | Description of the parameter, suitable for use in option help interfaces. |
 +| ''type''        | string | Data type of the parameter. |
 +| ''values''      | list of [[#wsParameterValue]] | List of valid values for the option. |
 +
 +==== wsParameterValue ====
 +
 +Description of a tool parameter value. Used in [[#wsParameterDetails]].
 +
 +^ Attribute      ^ Type    ^ Description ^
 +| ''label''        | string  | Display name of the value, for use in interfaces. |
 +| ''value''        | string  | String representation of the value to be passed to the tool parameter. |
 +| ''defaultValue'' | boolean | Flag indicating if this value is the default. |
 +| ''properties''  | list of [[#wsProperty]] | List of key/value pairs providing further information. |
 +
 +==== wsProperty ====
 +
 +Properties of a tool parameter value. Used in [[#wsParameterValue]].
 +
 +^ Attribute ^ Type  ^ Description ^
 +| ''key''  | string | |
 +| ''value'' | string | |
 +
 +==== wsRawOutputParameter ====
 +
 +Additional parameters passed when requesting a result. See [[#getResult(jobId, type, parameters)]].
 +
 +^ Attribute ^ Type          ^ Description ^
 +| ''name''  | string        | |
 +| ''value'' | list of string | |
 +
 +==== wsResultType ====
 +
 +Description of a result type. Returned by [[#getResultTypes(jobId)]].
 +
 +^ Attribute      ^ Type  ^ Description ^
 +| ''identifier''  | string | Identifier for the result type. Passed as ''type'' to [[#getResult(jobId, type, parameters)]]. |
 +| ''label''      | string | Display name for use in user interfaces. |
 +| ''description'' | string | Description of the result type, for use in help interfaces. |
 +| ''mediaType''  | string | MIME type of the returned data. |
 +| ''fileSuffix''  | string | Suggested suffix for file name, if writing data to disk. |
 
spacer
spacer