document: as more and more genomes are automatically sequenced , comprehensive protein annotation is a needed step after gene identification . even in good annotated genomes ( human , mouse ) about 30% of all proteins are not functionally identified ( 13 ) , and thus often a similarity search will not be sufficient . here , we present a suite of protein tasks , protsweep , domainsweep and 2dsweep , which perform analysis from sequence similarity to small domains and structural elements . 
   this includes similarity searches against protein sequence databases and specialized motif collections , prediction of secondary structural elements , attributing each sequence to known super - families , protein localization prediction , physicochemical protein characteristics and domain functional assignation . 
   our strategy for assigning relevant functional roles is based on the joint use of both global ( homology similarity ) and local ( domain and motif ) sequence similarities ( 4 ) . 
   several query sequences can be uploaded by the usual  copy & paste procedure into the input box using fasta format . 
   if more than one sequence is to be queried , a multiple fasta file can be used . 
   then the user will be redirected to an application page , and the runbutton can start the task . 
   additionally , there is a link to an online help , indicated with a  ? 
   , with the following topics : short description , programs employed , algorithm , output , additional options and acknowledgments . 
   results can be received by selecting the tab  go to results page. the results are provided as html for visual inspection or can be downloaded as xml for storage in private databases . in case of error when clicking on the application name in the results manager page , a log - file is displayed where more human readable error messages can be found . 
   standard protein databases used by the tasks like uniprot / swissprot , uniprot / trembl and refseq are automatically updated whenever new versions become available . concerning ensembl , 
   the situation is more complex . due to possible inconsistencies between the different ensembl api versions , which are used in the tasks , 
   it is not possible to automatically update the ensembl data and this needs to be done by hand . 
   the different databases and the way they were used in these pipelines are described in table 1 . 
   table 1databases used in the different pipelines , and the programs and parameters used to search themserverdatabaseslinksprogramparametersprotsweepuniprot / swissprothttp://www.ebi.ac.uk / swissprotblastp - nofilter -exp = 10.0uniprot / tremblhttp://www.ncbi.nlm.nih.gov / refseq / blastp - nofilter -exp = 10.0refseqftp://ftp.ebi.ac.uk / pub / databases / trembl / sptrembl / blastp - nofilter -exp = 10.0ensemblhttp://www.ensembl.org / blastp - nofilter -exp = 10.02dsweepdssphttp://www.sander.ebi.ac.uk / dssp / blastp - exp = 0.001 -extension = 10 - nogappedalignnrpep ( non - redundant ncbi protein database)ftp://ftp.ncbi.nih.gov / blast / db / fastapsiblast - b20000 -a5 -j2 -e0.001uniprot / swissprot + uniprot / trembl + updateshttp://www.expasy.ch / sprot / sprot - top.html 
   http://www.ebi.ac.uk/swissprotmsfgenerator-exp = 0.001 -overlap = 75 -customrange = 5 custompercentage =  80,60,50,45,40,35domainsweepprositeftp://ftp.expasy.ch / databases / prositemotifs & pfscandefaultpfamhmmhttp://www.sanger.ac.uk / software / pfam / hmmscan - lib = pfam.hmm -dprintsftp.bioinf.man.ac.ukhmmscan - lib = prints.hmm -dsmarthttp://smart.embl - heidelberg.de / hmmscan - lib = smart.hmm -dtigrfamshttp://www.tigr.org / tigrfams / index.shtml / hmmscan - lib = tigrfams.hmm -dscophttp://scop.mrc - lmb.cam.ac.uk / scopscopscandefaultblocksftp://ftp.ncbi.nih.gov / repository / blocks / unixblockssearcher - cutoff = 0.01 dinterprohttp://www.ebi.ac.uk / interpro / srs queriesprodomhttp://www.toulouse.inra.fr / prodom.htmlprodomblastdefault databases used in the different pipelines , and the programs and parameters used to search them 
   standard protein databases used by the tasks like uniprot / swissprot , uniprot / trembl and refseq are automatically updated whenever new versions become available . concerning ensembl , the situation is more complex . due to possible inconsistencies between the different ensembl api versions , which are used in the tasks , 
   it is not possible to automatically update the ensembl data and this needs to be done by hand . 
   the different databases and the way they were used in these pipelines are described in table 1 . 
   table 1databases used in the different pipelines , and the programs and parameters used to search themserverdatabaseslinksprogramparametersprotsweepuniprot / swissprothttp://www.ebi.ac.uk / swissprotblastp - nofilter -exp = 10.0uniprot / tremblhttp://www.ncbi.nlm.nih.gov / refseq / blastp - nofilter -exp = 10.0refseqftp://ftp.ebi.ac.uk / pub / databases / trembl / sptrembl / blastp - nofilter -exp = 10.0ensemblhttp://www.ensembl.org / blastp - nofilter -exp = 10.02dsweepdssphttp://www.sander.ebi.ac.uk / dssp / blastp - exp = 0.001 -extension = 10 - nogappedalignnrpep ( non - redundant ncbi protein database)ftp://ftp.ncbi.nih.gov / blast / db / fastapsiblast - b20000 -a5 -j2 -e0.001uniprot / swissprot + uniprot / trembl + updateshttp://www.expasy.ch / sprot / sprot - top.html 
   http://www.ebi.ac.uk/swissprotmsfgenerator-exp = 0.001 -overlap = 75 -customrange = 5 custompercentage =  80,60,50,45,40,35domainsweepprositeftp://ftp.expasy.ch / databases / prositemotifs & pfscandefaultpfamhmmhttp://www.sanger.ac.uk / software / pfam / hmmscan - lib = pfam.hmm -dprintsftp.bioinf.man.ac.ukhmmscan - lib = prints.hmm -dsmarthttp://smart.embl - heidelberg.de / hmmscan - lib = smart.hmm -dtigrfamshttp://www.tigr.org / tigrfams / index.shtml / hmmscan - lib = tigrfams.hmm 
   -dscophttp://scop.mrc - lmb.cam.ac.uk / scopscopscandefaultblocksftp://ftp.ncbi.nih.gov / repository / blocks / unixblockssearcher - cutoff = 0.01 dinterprohttp://www.ebi.ac.uk / interpro / srs queriesprodomhttp://www.toulouse.inra.fr / prodom.htmlprodomblastdefault databases used in the different pipelines , and the programs and parameters used to search them 
   protsweep is an approach to the functional characterization of unknown proteins based on a cascade of similarity searches . 
   it is well known that protein databases do not completely overlap and differ in their annotation quality ( 5 ) . 
   this task takes into account the significant differences among databases ( supplementary table 1 ) to improve the quality of the protein characterization . 
   it selects the order in which the databases have to be searched and combines the annotation found depending on the results . 
   protsweep classifies proteins into the following categories : identical , homolog , similar , weakly similar and putative proteins . 
   the query protein starts the blast ( 6 ) cascade against swissprot ( 7 ) first ( figure 2 ) . 
   we do take into account three parameters to classify the blast hits : ( i ) percentage of identity , ( ii ) 
   spercent. the two last parameters are related to the length of the total alignment , being 
   qpercent the percentage of the query sequence length covered in the alignment with the database hit and 
   spercent the percentage of the hit ( subject ) sequence length covered by the alignment ( figure 2 ) . depending on the classification of the blast hits according to these parameters and the hit protein annotation 
   if the hit has 100%  qpercent and  spercent and more than 98% identity , it is considered an identical protein and the swissprot i d will be searched in ensembl ( 8) . 
   if it is successful , all information from both databases will be combined ( supplementary table 2 ) and stored in the xml output . 
   if the i d can not be found in ensembl then a blast search is performed with the query protein against ensembl . 
   the best ensembl hit is selected and compared against the swissprot hit using the smith 
   if the identity between sequences is greater than 98% , then the information from both sources and the blast alignment will be added to the final output , if the identity is less , only swissprot annotation and the alignments will be added to the xml . 
   if the  qpercent and  spercent is between 80% and 98% and the identity is between 85% and 98% , the hit is classified as homologous and follows the same strategy with ensembl as already described ( figure 2 ) . in case , 
   spercent are greater than 85% , then the blast cascade continues with sptrembl and refseqprot . in the case that no identical or homologous hits can be found in any of the databases , the best similar hit among the three databases 
   is selected and classified as similar , weakly similar or putative ( figure 2 ) . 
   if the protein is characterized , information concerning the coding gene , about the splicing variants and orthologous genes is also provided . 
   depending on the degree of homology , protein function , transcript of origin , genomic localization , and go annotation or partial similarities will also be shown . 
   hypothetical proteins will only be presented in the result when no other information about identical or homologous proteins can be found in any of the databases ( supplementary figure 1 ) . 
   the web output of protsweep ( supplementary figure 1 ) is divided in five sections : ( i ) general information , ( ii ) identified protein and transcripts , ( iii ) features and functions , ( iv ) genomic localisation and ( v ) homology to other organisms / genes . the information provided in each of these sections is provided in figure 2 and supplementary table 2 . 
   the user has immediate access to all complete application outputs and database entries via hyperlinks . at the bottom of the html output 
   there is a link to the explanatory legend as well as to the xml output containing all the generated information . 
   domainsweep identifies the domain architecture within a protein sequence and therefore aids in finding correct functional assignments for uncharacterized protein sequences ( figure 3 ) . 
   it employs different database search methods to scan a number of protein / domain family databases . among these models , in increasing complexity , 
   are : prodom ( 10 ) , automatically generated protein family consensus sequences , prosite ( 11 ) regular - expression patterns , blocks ( 12 ) , ungapped position - specific scoring matrices of sequence segments , prints ( 13 ) sequence motifs , prosite profiles ( 7 ) , gapped position - specific scoring matrices and hidden markov models like pfam ( 14 ) , smart ( 15 ) , tigrfams ( 16 ) and scop ( 17 ) . 
   each database covers a slightly different , but overlapping set of protein families / domains . 
   each model has its own diagnostic strengths and weaknesses and for each of these protein / domain family databases used we have established different thresholds . 
   for example , in the case of the database pfam - a , we compare the input sequence against the hidden markov model profile of each pfam protein family . in principle , it is possible to decide the significance of a match upon its e - value . 
   however , there are a few complications such as that there is no analytical results available for accurately determining e - values for gapped alignments , especially profile hmm alignments . 
   we use as threshold the trusted cut - off value ( tc ) existing for each pfam family . 
   this value is the lowest score for sequences included in the family ( e.g. in the full alignment ) . 
   therefore , we consider a hit very significant if scores better than the trusted cut - off and at the same time has a significant e - value . in the case of scop , 
   we use the scop filtering mechanism to look for consistency in the hmmscan output , and filtering out inconsistent hits . in the case of smart 
   we use only the e - value . for each of the protein / domain databases used 
   afterwards domainsweep takes all true positive hits of all individual database searches for further data interpretation . 
   domain hits are listed as  significant : 
   if two or more hits belong to the same interpro family . 
   the task compares all true positive hits of the different protein family databases grouping together those hits , which are members of the same interpro family / domain.if the motif shows the same order as described in prints or blocks . 
   both databases characterize a protein family with a group of highly conserved motifs / segments in a well - defined order . 
   the task compares the order of the identified true positive hits with the order described in the corresponding prints or blocks entry . only hits in correct order 
   the task compares all true positive hits of the different protein family databases grouping together those hits , which are members of the same interpro family / domain . if the motif shows the same order as described in prints or blocks . 
   both databases characterize a protein family with a group of highly conserved motifs / segments in a well - defined order . 
   the task compares the order of the identified true positive hits with the order described in the corresponding prints or blocks entry 
   it is clear that any automatically produced sequence analysis implies a reasonable compromise between sensitivity and selectivity , and that no ideal recognition threshold exists that would allow for perfect separation of true and false similarities . 
   our thresholds tend to be rather conservative and stringent and thus the possibility of extending false positives is very limited . 
   the output in the web consists of two groups of graphs , those corresponding to the significant and putative hits , and one table output containing all reported protein domains ( supplementary figure 2 ) . 
   putative hit a cartoon of the sequence with the domain corresponding to the match , the hit i d , description , begin , end and gene ontology ( go ) annotation . 
   the user has immediate access to all complete application outputs and database entries ( via hyperlinks ) by clicking on the corresponding part of the picture . at the bottom of each graph 
   the table output contains all hits , ids , descriptions and links to the original output . 
   the xml output containing all the generated information is available via hyperlink at the bottom of the task output . 
   2dsweep identifies the structural domains in the protein and therefore aids in finding structural elements . 
   it reports on predictions for alpha - helix , beta - strand , coiled - coil and helix - turn - helix motifs , transmembrane regions , signal sequences , hydrophobicity , antigenicity , protease cleavage sites and more . 
   when predicting the secondary structure of a protein , it is useful to exploit the features of several available prediction algorithms rather than to rely on a single program . unfortunately , combining prediction methods on a large scale is complicated by the fact that prediction programs have very different input requirements and output formats . 
   some of them perform much better when they have a multiple sequence alignment covering different degrees of similarity as input instead of a single sequence . 
   we have developed msfgenerator , a program , which creates a multiple sequence alignment for a single protein sequence according to user , defined rules ( supplementary data msf ) . 
   it performs a blast search against a non - redundant protein database following different strategies that will generate different kind of alignments ( supplementary data msf , figure 4 ) . 
   the output of msfgenerator is an alignment in msf format ( multiple sequence file ) . 
   the generated msf will be used as input for four different structure prediction programs : psipred ( 18 ) , jnet ( 19 ) , prof ( 20 ) , and dsc ( 21 ) . 
   psipred is a two - stage neural network that bases its prediction on position specific scoring matrices , jnet is a neural network method that works by utilizing an alignment as input , alongside psiblast ( 22 ) and hmm profiles . 
   dsc is based on decomposing secondary structure prediction into basic concepts and then uses simple and linear statistical methods to combine them . 
   since dsc is known to perform worse than the other prediction methods employed in 2dsweep , the usage of dsc is optional . 
   figure 4.2dsweep flowchart . as a second concept , 2dsweep searches for dssp ( definition of secondary structure of the protein , ( 23 ) annotation for the input protein . 
   found it extracts secondary structure elements ( if any ) from the structure definition of the dssp database . 
   if there is more than one element covering the same sequence region , 2dsweep uses a simple majority vote to determine the structure at each position . 
   the result of this procedure is shown together with the prediction of the different secondary structure prediction tools . 
   first , the distribution of small , charged and hydrophilic amino acids are shown and probable antigenic regions are indicated . furthermore , the task searches for transmembrane helices and intervening loop regions using four different methods : tmhmm ( 24 ) , das ( 25 ) , tmap ( 26 ) and tmpred . in eukaryotic protein sequences 
   finally , information is given about molecular weight , isoelectric point , the distribution of protease cleavage - sites , and the possible sub - cellular localization of the protein . 
   the web output of 2dsweep ( supplementary figure 3 ) is divided in five sections : ( i ) general information , ( ii ) secondary structure , ( iii ) features and ( iv ) cleavage sites . 
   the information provided in each of these sections is shown in figure 4 and supplementary table 3 . 
   the complete results can be viewed by clicking on the corresponding part of the picture . at the bottom of each graph 
   there is a link to the corresponding explanatory legend . as in the other tasks the xml output containing all the generated information is available via a hyperlink at the bottom of the task output 
   these servers have been implemented using the w3h task framework ( 27 ) , which allows the execution of compound jobs using work and data flow descriptions in a heterogeneous bioinformatics environment using meta - data information . 
   the system regulates the dataflow by specifying dependency rules between the used applications in the meta - data , which allows the design of high complexity bioinformatics tasks , and stores the results of the different applications together with the new results computed during the process . 
   the final output of the task is an xml file which contains all relevant information generated . 
   the xml information is transformed by means of w2h 's ( 28 ) post - processing mechanism into an html page for the task report using the extensible style - sheet language transformations ( xslt ; http://www.w3.org/tr/xslt for facilitating a final visual inspection of the results . 
   furthermore , the xml output can be also required and used for further analysis ( i.e. direct integration in user 's databases , additional pipeline analysis ) . 
   all public databases used by these servers are installed under the sequence retrieval system ( srs ) at the dkfz ( 29 ) . 
   the dkfz srs server contains more than 500 databases that are automatically updated whenever new releases become available ; this means that the webservers will be using the very last version of each database . 
   therefore , as new and improved algorithms and methodologies are developed , they are incorporated into the protein analysis process without having to redesign the entire task . 
   it is also possible to incorporate specific sets of databases as they become available , and to implement arbitrary configuration parameters . 
   the development of the three pipelines presented here , has been user - driven from the beginning . 
   their functionalities are continually being updated and extended in response to requests and suggestions emerging from our core users like lifedb ( 30,31 ) , where these servers are actively used in their protein analysis and annotation . 
   we are currently developing checks especially through the application of filtering strategies and algorithms that will take into account the relationships between domain structure and homology searches . at the moment 
   we are starting to develop a filtering system for the homology searches results taking into account the different quality of annotation in different protein databases with the idea to assign confidence levels and cross - checking results between tasks . 
   we are additionally working on the implementation of directed text mining using the keywords of the proteins description . 
   
summary: the wealth of transcript information that has been made publicly available in recent years has led to large pools of individual web sites offering access to bioinformatics software . however , finding out which services exist , what they can or can not do , how to use them and how to feed results from one service to the next one in the right format can be very time and resource consuming , especially for non-experts.automating this task , we present a suite of protein annotation pipelines ( tasks ) developed at the german cancer research centre ( dkfz ) oriented to protein annotation by homology ( protsweep ) , by domain analysis ( domainsweep ) , and by secondary structure elements ( 2dsweep ) . 
   the aim of these tasks is to perform an exhaustive structural and functional analysis employing a wide variety of methods in combination with the most updated public databases . 
   the three servers are available for academic users at the husar open server http://genius.embnet.dkfz-heidelberg.de/menu/biounit/open-husar/