functional genomics research has expanded enormously 
 in the last decade and particularly the plant biology research community has 
 extensively included functional genomics approaches in their recent research 
 proposals .
the number of affymetrix plant genechips , for example , has doubled 
 in the last two years   and extensive international genomics consortia exist 
 for major crops ( see last pag conference reports for an updated impression on 
 current plant genomics , http://www.intl-pag.org ) .
not less importantly , many middle - sized 
 research groups are also setting up plant est projects and producing custom 
 microarray platforms .
this massive generation of plant sequence data and 
 rapid spread of functional genomics technologies among plant research labs has 
 created a strong demand for bioinformatics resources adapted to vegetative 
 species .
functional annotation of novel plant dna sequences is probably one of 
 the top requirements in plant functional genomics as this holds , to a great 
 extent , the key to the biological interpretation of experimental results . 

controlled vocabularies have imposed along the way as the strategy of choice 
 for the effective annotation of the function of gene products .
the use of 
 controlled vocabularies greatly facilitates the exchange of biological 
 knowledge and the benefit from computational resources that manage this 
 knowledge .
the gene ontology ( go , http://www.geneontology.org ) 
  is probably the most extensive scheme today for the description of gene 
 product functions but also other systems such as enzyme codes , kegg 
 pathways , funcat , or cog   are widely used within 
 molecular databases .
many bioinformatics tools and 
 methods have been developed to assist in the assignment of functional terms to 
 gene products ( reviewed in ) .
fewer resources , however , are available when 
 it comes to the large - scale functional annotation of novel sequence data of 
 nonmodel species , as would be specifically required in many plant functional 
 genomics projects .
web - based tools for the functional annotation of new 
 sequences include autofact , goanna / agbase , goanno , goblet , 
 gofigure + godel , gopet , gotcha , ht - go - fat 
 ( liru.ars.usda.gov/ht-go-fat.htm ) , interproscan , jafa , ontoblast , 
 and pfp .
a few relevant examples are 
 estexplorer , estima , estree . or juice ( see   for a survey in est 
 analysis ) .
these resources are valuable 
 tools for the assignment of functional terms to uncharacterized sequences but 
 usually lack high - throughput and data mining capabilities , in the first case , 
 or provide automatic solutions without much user interactivity , in the second . in this 
 paper , we describe the blast2go ( b2 g , www.blast2go.org ) application for the 
 functional annotation , management , and data mining of novel sequence data 
 through the use of common controlled vocabulary schemas .
the philosophy behind 
 b2 g development was the creation of an extensive , user - friendly , and 
 research - oriented framework for large - scale function assignments .
the main 
 application domain of the tool is the functional genomics of nonmodel organisms 
 and it is primarily intended to support research in experimental labs where 
 bioinformatics support may not be strong . since its release in september 2005 
 , more than 100 labs worldwide have become b2 g users and the application 
 has been referenced in over thirty peer - reviewed publications 
 ( www.blast2go.org/citations ) . although b2 g has a broad species application 
 scope , the project originated in a crop genomics research environment and there 
 is quite some accumulated experience in the use of b2 g in plants , which 
 includes maize , tobacco , citrus , soybean , grape , or tomato .
projects range from 
 functional assignments of ests [ 2124 ] to go term annotation of custom or 
 commercial plant microarrays [ 25 , 26 ] , functional profiling studies [ 2729 ] , and 
 functional characterization of specific plant gene families [ 30 , 31 ] . in the following sections we will explain more 
 extensively the concepts behind blast2go .
we will describe in detail main 
 functionalities of the application and show a use case that illustrates the 
 applicability of b2 g to plant functional genomics research .
four main driving concepts form the foundation of 
 the blast2go software : biology orientation , high - throughput , annotation 
 flexibility , and data - mining capability .
the target users of 
 blast2go are biology researchers working on functional genomics projects in 
 labs where strong bioinformatics support is not necessarily present .
therefore , 
 the application has been conceived to be easy to install , to have minimal setup 
 and maintenance requirements , and to offer an intuitive user interface .
b2 g has 
 been implemented as a multiplatform java desktop application made accessible by 
 java webstart technology .
this solution employs the higher versatility of a 
 locally running application while assuring automatic updates provided that an 
 internet connection is available .
this implementation has proven to work very 
 efficiently in the fast transfer to users of new functionalities and for bug 
 fixes .
furthermore , access to data in 
 b2 g is reinforced by graphical parameters that on one hand allow the easy 
 identification and selection of sequences at various stages of the annotation 
 process and , on the other hand , permit the joint visualization of annotation 
 results and highlighting of most relevant features .
blast2go strives to 
 be the application of choice for the annotation of novel sequences in 
 functional genomics projects where thousands of fragments need to be 
 characterized . in principle , b2 g accepts any amount of records within the 
 memory resources of the user 's work station .
typical data files of 20 to 30 
 thousand sequences can be easily annotated on a 2 giga ram pc ( larger projects 
 may use the graphical interface free version of blast2go ) . during the 
 annotation process , intermediate results can be accessed and modified by the 
 user if desired .
functional 
 annotation in blast2go is based on homology transfer . within this framework , 

the actual annotation procedure is configurable and permits the design of 
 different annotation strategies .
blast2go annotation parameters include the 
 choice of search database , the strength and number of blast results , the 
 extension of the query - hit match , the quality of the transferred annotations , 
 and the inclusion of motif annotation .
vocabularies supported by b2 g are gene 
 ontology terms , enzyme codes ( ec ) , interpro ids , and kegg pathways .
the application includes a wide range 
 of statistical and graphical functions for the evaluation of the annotation 
 procedure and the final results . especially , ( relative ) abundance of functional 
 terms can be easily assessed and visualized . the first release of b2 g covered basic application 
 functionalities : high - throughput blast against ncbi or local databases , 
 mapping , annotation , and gene set enrichment analysis ; scalar vector graphics ( svg ) 
 combined graphs and basic distributions charts .
enhanced modules for massive 
 blast , modification of annotation intensity , curation , additional vocabularies , 
 high - performing customizable graphs and pathway charts , data mining and 
 sequence handling , as well as a wide array of input and output formats have 
 been incorporated into the blast2go suite .
functional assignments proceed through an elaborate annotation procedure 
 that comprises a central strategy plus refinement functions .
next , 
 visualization and data mining engines permit exploiting the annotation results 
 to gain functional knowledge .
the blast2go annotation procedure consists of three 
 main steps : blast to find homologous sequences , mapping to collect go terms 
 associated to blast hits , and annotation to assign trustworthy information to 
 query sequences .
once go terms have been gathered , additional functionalities 
 enable processing and modification of annotation results .
the first step in 
 b2 g is to find sequences similar to a query set by blast .
b2 g accepts 
 nucleotide and protein sequences in fasta format and supports the four basic blast programs ( blastx , 
 blastp , blastn , and tblastx ) .
homology searches can be launched against public 
 databases such as ( the ) ncbi nr using a query - friendly version of blast 
 ( qblast ) .
this is the default option and in this case , no additional 
 installations are needed .
alternatively , blast can be run locally against a 
 proprietary fasta - formatted database , which requires a working www - blast 
 installation .
the make filtered blast - go - bd function in the tools menu allows 
 the creation of customized databases containing only go - annotated entries , 
 which can be used in combination with the local blast option .
other 
 configurable parameters at the blast step are the expectation value ( e - value ) 
 threshold , the number of retrieved hits , and the minimal alignment length ( hsp length ) 
 which permits the exclusion of hits with short , low e - value matches from the 
 sources of functional terms .
annotation , however , will ultimately be based on 
 sequence similarity levels as similarity percentages are independent of 
 database size and more intuitive than e - values .
blast2go parses blast results 
 and presents the information for each sequence in table format .
query sequence 
 descriptions are obtained by applying a language processing algorithm to hit 
 descriptions , which extracts informative names and avoids low - content terms 
 such as  hypothetical protein  or  expressed protein  .
mapping is the 
 process of retrieving go terms associated to the hits obtained after a blast search . 

( 1 ) blast result accessions are 
 used to retrieve gene names ( symbols ) making use of two mapping files provided 
 by ncbi ( geneinfo , gene2accession ) .
identified gene names are searched in the species - specific 
 entries of the gene product table of the go database .
( 2 ) blast result gi identifiers 
 are used to retrieve uniprot ids making use of a mapping file from pir 
 ( non - redundant reference protein database ) including psd , uniprot , swiss - prot , 
 trembl , refseq , genpept , and pdb .
( 3 ) blast result accessions are searched 
 directly in the dbxref table of the go database .
this is the process 
 of assigning functional terms to query sequences from the pool of go terms 
 gathered in the mapping step .
mapping from go terms to enzyme codes permits the subsequent 
 recovery of enzyme codes and kegg pathway annotations .
the b2 g annotation 
 algorithm takes into consideration the similarity between query and hit 
 sequences , the quality of the source of go assignments , and the structure of 
 the go dag . for each query sequence and each candidate go term , an annotation 
 score ( as )
is computed ( see figure 2 ) . the as is composed of two terms .
the 
 first , direct term ( dt ) , represents the highest similarity value among the hit 
 sequences bearing this go term , weighted by a factor corresponding to its evidence 
 code ( ec ) .
a go term ec is present for every annotation in the go database to 
 indicate the procedure of functional assignment .
ecs vary from experimental 
 evidence , such as inferred by direct assay ( ida ) to unsupervised assignments 
 such as inferred by electronic annotation ( iea ) .
the second term ( at ) of the annotation rule 
 introduces the possibility of abstraction into the annotation algorithm . 

abstraction is defined as the annotation to a parent node when several child 
 nodes are present in the go candidate pool .
this term multiplies the number of 
 total gos unified at the node by a user - defined factor or go weight ( gow ) that 
 controls the possibility and strength of abstraction . when all ecw 's are set to 
 1 ( no ec control ) and the gow is set to 0 ( no abstraction is possible ) , the 
 annotation score of a given go term equals the highest similarity value among 
 the blast hits annotated with that term .
if the ecw is smaller than one , the dt 
 decreases and higher query - hit similarities are required to surpass the 
 annotation threshold .
if the gow is not equal to zero , the at becomes 
 contributing and the annotation of a parent node is possible if multiple child 
 nodes coexist that do not reach the annotation cutoff .
default values of b2 g 
 annotation parameters were chosen to optimize the ratio between annotation 
 coverage and annotation accuracy .
finally , the ar selects the lowest terms 
 per branch that exceed a user - defined threshold .
the annotation step in b2 g can be further adjusted 
 by setting additional filters to the hit sequences considered as annotation 
 source .
a lower limit can be set at the e - value parameter to ensure a minimum 
 confidence at the level of homology .
filter has been implemented to assure 
 that a given percentage of the hit sequence is actually spanned by the query . 

this parameter is of importance to prevent potential function transfer from 
 nonmatching sequence regions of modular proteins .
additionally , the minimal hsp 
 length required at the blast step permits control of the length of the matching 
 region .
blast2go includes different functionalities to 
 complete and modify the annotations obtained through the above - defined 
 procedure .
are generated from the direct mapping of go terms to 
 their enzyme code equivalents .
the user , identified by his / her email address , 
 has the possibility of selecting different databases available at the 
 interproebi web server .
b2 g launches sequence queries in batch , and 
 recovers , parses , and uploads interpro results .
furthermore , interpro ids can 
 be mapped to go terms and merged with blast - derived go annotations to provide 
 one integrated annotation result . in this process
, b2 g ensures that only the 
 lowest term per branch remains in the final annotation set , removing possible 
 parent - child relationships originating from the merging action . 
 
firstly , the annex function allows annotation augmentation through the 
 second layer concept developed by the norwegian university of science and 
 technology ( http://www.goat.no , ) .
basically , the second layer database is 
 a collection of manually curated univocal relationships between go terms from 
 the different go categories that permits the inference of biological process 
 and cellular component terms from molecular function annotations .
up to 15% of 
 annotation increase and around 30% of go term confirmations are obtained 
 through the annex dataset .
goslim consists of a subset of the gene ontology vocabulary 
 encompassing key ontological terms and a mapping function between the full go 
 and the goslim .
different goslim mappings are available , adapted to specific 
 biological domains . at present ,
goslim mappings for plant , yeast , from goa and 
 tair , as well as a 
 generic one are available from the go through blast2go .
thirdly , the manual 
 curation function means that the user has the possibility of editing annotation 
 results and manually modifying go terms and sequence descriptors .
one aspect of the uniqueness of the blast2go 
 software is the availability of a wide array of functions to monitor , evaluate , 
 and visualize the annotation process and results .
the purpose of these 
 functions is to help understand how functional annotation proceeds and to 
 optimize performance .
distribution plots for 
 e - value and similarity within blast results give an idea of the degree of 
 homology that query sequences have in the searched database . 
 
once mapping has been completed , the user can check the distribution of evidence codes in the 
 recovered go terms and the original database sources of annotations .
for 
 example , when a good overall level of sequence similarity is obtained for the 
 dataset , the default annotation cutoff value could be raised to improve 
 annotation accuracy .
similarly , if evidence code charts indicate a low 
 representation of experimentally derived gos , the user might choose to increase 
 the weight given to electronic annotations .
after the final annotation step , 
 new charts show the distribution of annotated sequences , the number of gos per 
 sequence , the number of sequences per go , and the distribution of annotations 
 per go level , which jointly provide a general overview of the performance of 
 the annotation procedure . sequence coloring .
the visual approach 
 of b2 g is further represented by the color code given to annotated sequences . 
 during the annotation process , the background color of active sequences changes 
 according to their analysis status .
nonblasted sequences are displayed in white 
 and change to light red once a positive blast result is obtained .
finally , manually curated sequences can 
 be labeled and colored purple ( see figure 3(a ) ) .
sequence coloring is a simple 
 and effective way of identifying sequences that have reached differential 
 stages during the annotation process .
for example , sequences that stayed dark red after blast ( no 
 positive result ) can be selected to be launched to interproscan .
sequences that 
 remained green ( mapping code ) after the annotation step can be selected and 
 reannotated with more permissive parameters .
a core functionality 
 of blast2go is the joint visualization of groups of go terms within the 
 structure of the go dag .
the combined 
 graph function is typically used to study the collective biological meaning of 
 a set of sequences .
combined graphs are a good alternative to enrichment 
 analysis ( see below ) where no reference set is to be considered or the number 
 of involved sequences is low .
b2 g includes several parameters to make these combined 
 graphs easy to analyze and navigate .
firstly , the zwf format , a powerful 
 scalable vector graphics engine , has been adopted to make zooming and browsing 
 through the dag fast and light .
secondly , annotation - rich areas of the 
 generated dag can be readily spotted by a node - coloring function .
b2 g colors 
 nodes either by the number of sequences gathered at that term ( additive 
 function ) or by a node information score ( exponential function , gosseq ) that considers the 
 places of direct annotation .
this b2 g score takes into account the amount of 
 sequences collected at a given term but penalizes by the distance to the node 
 of actual annotation .
the b2 g score has shown to be a useful parameter for 
 the identification of  hot  terms within a specific dag ( see figure 3(b ) ; 
 conesa , unpublished ) .
thirdly , the extension and density of the plotted dag can 
 be modulated by a node filter function .
when the number of sequences involved 
 in the combined graph is large , the resulting dag can be too big to be 
 practical . b2 g permits filtering out of low informative terms by imposing a 
 threshold on the number of annotated sequences or b2 g scores for a node to be 
 displayed . in this case , the number of omitted nodes is given for each branch , 
 which is an indication of the level of local compression applied to that 
 branch . enrichment analysis .
a typical data 
 mining approach applied in functional genomics research is the identification 
 of functional classes that statistically differ between two lists of terms . for 
 example
, one might want to know the functional categories that are over- or 
 underrepresented in the set of differentially expressed genes of a microarray 
 experiment , or it could be of interest to find which functions are distinctly 
 represented between different libraries of an est collection .
blast2go has 
 integrated the gossip   package for statistical assessment of differences in 
 go term abundance between two sets of sequences .
this package employs the 
 fisher 's exact test and corrects for multiple testing . for this analysis
, the 
 involved sequences with their annotations must be loaded in the application . 

b2 g returns the go terms under- or overrepresented at a specified significance value . 

results are given as a plain table and graphically as a bar chart and as a dag 
 with nodes colored by their significance value .
next to the annotation and data mining functions , 
 blast2go comprises a number of additional functionalities to handle data . in 
 this section ,
typically , b2 g inputs are fasta - formatted 
 sequences and returns a tab - delimited file with go annotations . other supported 
 output formats are gostats and gospring .
this option permits skipping the first step of the b2 g annotation 
 procedure when a blast result is already present .
similarly , when accession ids 
 or gene symbols are known for the query sequences , these can be directly 
 uploaded in b2 g and the application will query the b2 g database for their 
 annotations .
moreover , the main sequence table ( see figure 3 ) can be saved to a 
 file at any moment to store intermediate results .
finally , graph and enrichment 
 analysis results are presented both graphically and as text files .
the  true path 
 rule  defined by the gene ontology consortium for the go dag assures that 
 all the terms in the pathway from a term up to the root must always be true for 
 a given gene product .
the b2 g annotation validation function applies this 
 property to annotation results by removing any parent term that has a child 
 within the sequence annotation set .
b2 g always executes validation after any 
 modification has been made to the existing annotation , for example , after 
 interpro merging , annex augmentation , or manual curation .
b2 g computes the number of identical nodes , more general and more 
 specific terms within the same branch , and terms located to different branches 
 or different go main categories .
comparison is directional ; this means that the 
 active annotation file is contrasted to a reference or external one .
each go 
 term is compared to all terms in the reference set and the best matching 
 comparison result is recorded .
the annotation accuracy of blast2go has been 
 evaluated by comparing b2 g go annotation results to the existing annotation in 
 a set of manually annotated arabidopsis proteins that had been previously 
 removed from the nr database .
this evaluation indicated that using b2 g default 
 parameters , nearly 70% of identical branch recovery was achievable , which is at 
 the top end of the methods that are based on homology search .
more recent 
 evaluations have shown that blast2go annotation behavior is consistent across 
 species and datasets .
in general , the blast step has shown to be decisive in 
 the annotation coverage .
for a great deal of sequences with a positive blast 
 result , functional 
 information is available in the go database and the final annotation success is 
 related to the length and quality of the query sequence and the strictness of 
 annotation parameters . typically and using default parameters , around 5060% 
 of annotation success is common for est datasets and slightly higher values are 
 obtained for full - length proteins ( table 1 ) . on average ,
between 3 and 6 go terms are assigned 
 per sequence at a mean go level very close to 5 .
interpro , annex , and gow 
 annotation parameters significantly increase annotation intensity  around 15%and validate 
 annotation results .
furthermore , default annotation options tend to provide 
 coherent results and resemble the functional assignment obtained by a human 
 computational reviewed analysis . in this section
, we present a typical use case of 
 blast2go to illustrate the major application features described in the previous 
 sections .
sequence data and a 
 detailed annotation sheet for the soybean genome array are provided at the 
 blast2go site ( http://blast2go.bioinfo.cipf.es/b2gdata/soybean ) . 

blastsequence data in fasta format were uploaded into the 
 application from the menu file  open file . after selecting the blast menu , a 
 dialog opens where we can indicate the parameters for the blast step . in our 
 case ,
the easiest option is to select the nr protein database and perform blast 
 remotely on the ncbi server through qblast .
additional blast parameters are 
 kept at default values : e - value threshold of 1e-3 and a recovery of 20 hits per 
 sequence .
these permissive values are chosen to retrieve a large amount of 
 information at this first time - consuming step .
furthermore , we set the hsp filter to 33 to 
 avoid hits where the length of the matching region is smaller than 100 
 nucleotides . after launching ,
blast sequences turn red as results arrive , up to 
 a total of 22,788 .
once blast is completed , we can visualize different charts 
 ( similarity , e - value , and species distributions , see supplementary 
 material available online at 
 doi:10.1155/2008/619832 ) 
 to get an impression of the quality of the query sequences and the blast procedure . 

for example , statistics  blast statistics  similarity distribution chart ( see figure 4 ) shows that most sequences have 
 blast similarity values of 5060% or higher .
this information is useful for 
 choosing the annotation cutoff parameter at the annotation step , and suggests 
 that taking a value of 60 would be adequate .
furthermore , the species distribution 
 chart ( see figure 5 ) shows a great majority of arabidopsis sequences within the 
 blast hits , followed by cotton , medicago , glycine , and nicotiana .
sequence data in fasta format were uploaded into the 
 application from the menu file  open file . after selecting the blast menu , a 
 dialog opens where we can indicate the parameters for the blast step . in our 
 case ,
the easiest option is to select the nr protein database and perform blast 
 remotely on the ncbi server through qblast .
additional blast parameters are 
 kept at default values : e - value threshold of 1e-3 and a recovery of 20 hits per 
 sequence .
these permissive values are chosen to retrieve a large amount of 
 information at this first time - consuming step .
furthermore , we set the hsp filter to 33 to 
 avoid hits where the length of the matching region is smaller than 100 
 nucleotides . after launching ,
blast sequences turn red as results arrive , up to 
 a total of 22,788 .
once blast is completed , we can visualize different charts 
 ( similarity , e - value , and species distributions , see supplementary 
 material available online at 
 doi:10.1155/2008/619832 ) 
 to get an impression of the quality of the query sequences and the blast procedure . 

for example , statistics  blast statistics  similarity distribution chart ( see figure 4 ) shows that most sequences have 
 blast similarity values of 5060% or higher .
this information is useful for 
 choosing the annotation cutoff parameter at the annotation step , and suggests 
 that taking a value of 60 would be adequate .
furthermore , the species distribution 
 chart ( see figure 5 ) shows a great majority of arabidopsis sequences within the 
 blast hits , followed by cotton , medicago , glycine , and nicotiana . 

go terms could be found for 21,079 sequences 
 ( 56% ) . mapping charts ( menu statistics  mapping statistics ) permit the 
 evaluation of mapping results . the evidence code distribution chart ( see figure 6 ) shows an overrepresentation of electronic annotations , although other 
 nonautomatic codes , such as review by computational analysis ( rca ) , inferred by 
 mutant phenotype ( imp ) , or inferred by direct assay ( ida ) are also well 
 represented .
this suggests that an annotation strategy that promotes nonelectronic 
 ecs would be meaningful as it would benefit from the high - quality go terms 
 without totally excluding electronic annotations .
therefore , the default ec 
 weights ( menu annotation  set evidence code weights ) that adjust 
 proportionally to the reliability of the source annotation will be maintained 
 at the annotation step .
go terms could be found for 21,079 sequences 
 ( 56% ) . mapping charts ( menu statistics  mapping statistics ) permit the 
 evaluation of mapping results .
the evidence code distribution chart ( see figure 6 ) shows an overrepresentation of electronic annotations , although other 
 nonautomatic codes , such as review by computational analysis ( rca ) , inferred by 
 mutant phenotype ( imp ) , or inferred by direct assay ( ida ) are also well 
 represented .
this suggests that an annotation strategy that promotes nonelectronic 
 ecs would be meaningful as it would benefit from the high - quality go terms 
 without totally excluding electronic annotations .
therefore , the default ec 
 weights ( menu annotation  set evidence code weights ) that adjust 
 proportionally to the reliability of the source annotation will be maintained 
 at the annotation step . 

annotationtaking into consideration the charts generated by 
 the previous steps , we have chosen an annotation configuration with an e - value 
 filter of 1e-6 , default gradual ec weights , a go weight of 15 , and an 
 annotation cutoff of 60 .
this implies that only sequences with a blast e - value 
 lower than 1e-6 will be considered in the annotation formula , that the query - hit 
 similarity value adjusted by the ec weight of the go term should be at least 
 60 , and that abstraction is strongly promoted .
this annotation configuration 
 resulted in 17,778 successfully go annotated sequences with a total of 70,035 
 go terms at a mean go level ( distance of the go term to the ontology root term ) 
 of 4.72 . furthermore
once annotation has been completed , we can visualize the results at 
 each step of the annotation process ( see figure 7 ) .
reannotation is possible by 
 selecting green or red 
 sequences ( tools  select sequences by color ) and rerunning blast , mapping , and 
 annotation with different , more permissive parameters . in this way
, we obtain a 
 trustworthy annotation for most sequences and behave more permissively only for 
 those sequences which are hard to annotate .
other charts available at the 
 annotation statistics menu show the distribution of go levels ( see figure 8) , 
 the length of annotated sequences , and the histogram of go term abundance . taking into consideration the charts generated by 
 the previous steps
, we have chosen an annotation configuration with an e - value 
 filter of 1e-6 , default gradual ec weights , a go weight of 15 , and an 
 annotation cutoff of 60 .
this implies that only sequences with a blast e - value 
 lower than 1e-6 will be considered in the annotation formula , that the query - hit 
 similarity value adjusted by the ec weight of the go term should be at least 
 60 , and that abstraction is strongly promoted .
this annotation configuration 
 resulted in 17,778 successfully go annotated sequences with a total of 70,035 
 go terms at a mean go level ( distance of the go term to the ontology root term ) 
 of 4.72 . furthermore ,
once annotation has been completed , we can visualize the results at 
 each step of the annotation process ( see figure 7 ) .
reannotation is possible by 
 selecting green or red 
 sequences ( tools  select sequences by color ) and rerunning blast , mapping , and 
 annotation with different , more permissive parameters . in this way
, we obtain a 
 trustworthy annotation for most sequences and behave more permissively only for 
 those sequences which are hard to annotate .
other charts available at the 
 annotation statistics menu show the distribution of go levels ( see figure 8) , 
 the length of annotated sequences , and the histogram of go term abundance . 

annotation augmentationblast - based go annotations can be increased by means 
 of the integrated interproscan function available under annotation  run interproscan . 

the user must provide his / her email address and select the motif databases of 
 interest .
an interproscan search against all ebi databases resulted in the 
 recovery of motif functional information for 11,347 sequences and a total of 
 8,046 go terms .
once merged to the already existing annotation ( annotation  
 add interproscan gos to annotation ) , 1,189 additional sequences were annotated 
 ( see figure 9 ) .
once blast plus interproscan annotations have been gathered , a 
 useful step is to complete implicit annotations through the annex function 
 ( annotation  augment annotation by annex ) . after this step , it is recommended 
 to run the function to remove first - level annotations ( under annotation 
 menu ) . in our use case , the annex 
 function resulted in the addition of 8,125 new go terms and a confirmation of 
 3,892 annotations , which is an average contribution of the annex function .
blast - based go annotations can be increased by means 
 of the integrated interproscan function available under annotation  run interproscan . 

the user must provide his / her email address and select the motif databases of 
 interest .
an interproscan search against all ebi databases resulted in the 
 recovery of motif functional information for 11,347 sequences and a total of 
 8,046 go terms .
once merged to the already existing annotation ( annotation  
 add interproscan gos to annotation ) , 1,189 additional sequences were annotated 
 ( see figure 9 ) .
once blast plus interproscan annotations have been gathered , a 
 useful step is to complete implicit annotations through the annex function 
 ( annotation  augment annotation by annex ) . after this step , it is recommended 
 to run the function to remove first - level annotations ( under annotation 
 menu ) . in our use case ,
the annex 
 function resulted in the addition of 8,125 new go terms and a confirmation of 
 3,892 annotations , which is an average contribution of the annex function . 

manual curationthe manual annotation tool is a useful functionality 
 when information on the automatically generated annotation needs to be changed . 

for example , the target of gmaaffx.69219.1.s1_at probe was found to be the 
 udp - glycosyltransferase .
the automatic procedure assigned go terms metabolic 
 process ( go:0008152 ) and transferase activity , transferring hexosyl groups 
 ( go:0016758 ) to this sequence .
however , as we are aware of the er localization 
 of this enzyme and its involvement in protein maturation , we would like to add 
 this information to the existing annotation .
the manual curation function is 
 available at the sequence menu which is displayed by mouse right button click 
 on the selected sequence . from this menu ,
we can now 
 type in the annotations box the terms go:0005783 ( endoplasmic reticulum ) and 
 go:0006464 ( protein modification process ) and mark the manual annotation box . 

the new annotations are then added and the sequence turns purple ( manual 
 annotation color code ) .
the manual annotation tool is a useful functionality 
 when information on the automatically generated annotation needs to be changed . 

for example , the target of gmaaffx.69219.1.s1_at probe was found to be the 
 udp - glycosyltransferase .
the automatic procedure assigned go terms metabolic 
 process ( go:0008152 ) and transferase activity , transferring hexosyl groups 
 ( go:0016758 ) to this sequence . however , as we are aware of the er localization 
 of this enzyme and its involvement in protein maturation , we would like to add 
 this information to the existing annotation .
the manual curation function is 
 available at the sequence menu which is displayed by mouse right button click 
 on the selected sequence . from this menu ,
we can now 
 type in the annotations box the terms go:0005783 ( endoplasmic reticulum ) and 
 go:0006464 ( protein modification process ) and mark the manual annotation box . 

the new annotations are then added and the sequence turns purple ( manual 
 annotation color code ) . 
 goslimas the number of sequences and different go terms in 
 the soybean array is quite large , we are interested in a simpler representation 
 of the functional content of the data .
change to goslim view , we can select an 
 appropriate goslim ( generic_plant ) for this dataset . upon completion of 
 slimming sequences acquire the yellow goslim coding .
goslim mapping generated a set 
 of 105 different annotating go terms on 18,820 sequences with a mean go level 
 of 3.41 .
this means around 40 times less functional diversity than in the 
 original annotation ( 4533 different terms ) and an increase of almost 2 levels 
 of the mean annotation depth . as the number of sequences and different
go terms in 
 the soybean array is quite large , we are interested in a simpler representation 
 of the functional content of the data .
change to goslim view , we can select an 
 appropriate goslim ( generic_plant ) for this dataset . upon completion of 
 slimming sequences acquire the yellow goslim coding .
goslim mapping generated a set 
 of 105 different annotating go terms on 18,820 sequences with a mean go level 
 of 3.41 .
this means around 40 times less functional diversity than in the 
 original annotation ( 4533 different terms ) and an increase of almost 2 levels 
 of the mean annotation depth . 

combined graphonce the slimmed annotation is obtained , we can 
 visualize the functional information of the soybean genome array on the go dag . 

we must indicate the go category to display ( e.g. , biological process ) . to 
 obtain a compact representation of the information , two filters can be applied . 

for example , by setting the sequence filter to 20 , only those nodes with at 
 least 20 sequence assignments will be displayed . by setting the score filter to 
 20 , additionally , parent nodes that do not annotate more sequences
node coloring by score value 
 highlights the areas in the resulting dag where sequence annotations are most 
 concentrated .
the two most intensively colored terms at the second go level 
 indicate the two most abundant functional categories in the soybean chip : 
 catalytic activity and binding .
highlighting at lower levels reveals other , 
 most informative , highly represented functional terms , such as hydrolase 
 activity ( level 3 ) , kinase activity ( level 4 ) , transcription factor activity ( level 
 3 ) , protein binding ( level 3 ) , nucleotide binding ( level 3 ) , and transporter 
 activity ( level 2 ) .
the reader is referred to the annotation sheet url 
 ( http://blast2go.bioinfo.cipf.es/b2gdata/soybean ) for figure navigation . 
 
once the slimmed annotation is obtained , we can 
 visualize the functional information of the soybean genome array on the go dag . 

we must indicate the go category to display ( e.g. , biological process ) . to 
 obtain a compact representation of the information , two filters can be applied . 

for example , by setting the sequence filter to 20 , only those nodes with at 
 least 20 sequence assignments will be displayed . by setting the score filter to 
 20 , additionally , parent nodes that do not annotate more sequences
node coloring by score value 
 highlights the areas in the resulting dag where sequence annotations are most 
 concentrated .
the two most intensively colored terms at the second go level 
 indicate the two most abundant functional categories in the soybean chip : 
 catalytic activity and binding . highlighting at lower levels reveals other , 
 most informative , highly represented functional terms , such as hydrolase 
 activity ( level 3 ) , kinase activity ( level 4 ) , transcription factor activity ( level 
 3 ) , protein binding ( level 3 ) , nucleotide binding ( level 3 ) , and transporter 
 activity ( level 2 ) .
the reader is referred to the annotation sheet url 
 ( http://blast2go.bioinfo.cipf.es/b2gdata/soybean ) for figure navigation . 
 

enrichment analysisthe enrichment analysis function in b2 g executes a 
 statistical assessment of differences in functional classes between two groups 
 of sequences . to illustrate this function ,
we have selected all sequences in 
 the soybean chip which contain the word  membrane  within their description132 sequences  and compared their annotations to the whole chip .
we go to 
 analysis  enrichment analysis  make fisher 's exact test and browse for a text 
 file containing the test set with the names of membrane sequences .
as the 
 comparison is made against the complete microarray dataset loaded into the 
 application , no file needs to be selected as reference .
we uncheck the two - tail 
 box to perform only positive enrichment analysis . upon completion a table with test statistical 
 results
three different 
 significance parameters are given for false - positive control : false discovery 
 rate ( fdr ) , family - wise error rate ( fwer ) , and single test p - value 
 ( fisher p - value ) ( see   for details ) . by taking a fdr significance 
 threshold of 0.05 ,
we obtain those functionalities that are strongly 
 significant for membrane proteins in the soybean chip .
these refer to processes 
 related to transport , protein targeting , and photosynthesis as might be 
 expected for a plant species .
graphical representations of these results can be 
 generated at analysis  enrichment analysis  bar chart and analysis  
 enrichment analysis  make enriched 
 graph .
the bar chart shows , for each significant go term , frequency differences 
 between the membrane and the whole chip datasets ( see figure 11 ) .
the enriched 
 graph shows the dag of significant terms with a node - coloring proportional to 
 the significance value .
this representation helps in understanding the 
 biological context of functional differences and to find pseudoredundancies in 
 the results  parent - child 
 relationships within significant terms(see figure 12 ) .
the enrichment analysis function in b2 g executes a 
 statistical assessment of differences in functional classes between two groups 
 of sequences . to illustrate this function ,
we have selected all sequences in 
 the soybean chip which contain the word  membrane  within their description132 sequences  and compared their annotations to the whole chip .
we go to 
 analysis  enrichment analysis  make fisher 's exact test and browse for a text 
 file containing the test set with the names of membrane sequences .
as the 
 comparison is made against the complete microarray dataset loaded into the 
 application , no file needs to be selected as reference .
we uncheck the two - tail 
 box to perform only positive enrichment analysis . upon completion a table with test statistical 
 results
three different 
 significance parameters are given for false - positive control : false discovery 
 rate ( fdr ) , family - wise error rate ( fwer ) , and single test p - value 
 ( fisher p - value ) ( see   for details ) . by taking a fdr significance 
 threshold of 0.05 ,
we obtain those functionalities that are strongly 
 significant for membrane proteins in the soybean chip .
these refer to processes 
 related to transport , protein targeting , and photosynthesis as might be 
 expected for a plant species .
graphical representations of these results can be 
 generated at analysis  enrichment analysis  bar chart and analysis  
 enrichment analysis  make enriched 
 graph .
the bar chart shows , for each significant go term , frequency differences 
 between the membrane and the whole chip datasets ( see figure 11 ) .
the enriched 
 graph shows the dag of significant terms with a node - coloring proportional to 
 the significance value .
this representation helps in understanding the 
 biological context of functional differences and to find pseudoredundancies in 
 the results  parent - child 
 relationships within significant terms(see figure 12 ) . 

export resultsonce different analyses have been completed the data 
 can be exported in many different ways . the annotation format ( menu file  export  export 
 annotations ) is the default format for export / import in b2 g and simply consists 
 of a tab - delimited file with two columns , one for sequences and other for 
 annotation ids .
another useful export format is genespring , for communication 
 with this interesting application , which consists of one row per sequence and 
 three different columns showing the descriptions of the go terms at the three 
 main go categories .
additionally , all 
 information contained in the combined graph can be generated as table 
 ( including sequences , go ids , levels , and scores ) and exported ( analysis  
 export graph information).the analysis presented in this use case took about 
 15 days to complete .
four days were necessary to obtain the totality of 37,500 
 blast results from the ncbi while twelve days were required for the 
 interproscan at the ebi web server .
mapping and annotation were ready within a 
 few hours and one day was necessary to collect and evaluate charts .
this shows 
 that with the adequate tools and some training , functional annotation of a 
 plant genome - wide sequence collection is in reach within a couple of weeks .
once different analyses have been completed the data 
 can be exported in many different ways . the annotation format ( menu file  export  export 
 annotations ) is the default format for export / import in b2 g and simply consists 
 of a tab - delimited file with two columns , one for sequences and other for 
 annotation ids .
another useful export format is genespring , for communication 
 with this interesting application , which consists of one row per sequence and 
 three different columns showing the descriptions of the go terms at the three 
 main go categories .
additionally , all 
 information contained in the combined graph can be generated as table 
 ( including sequences , go ids , levels , and scores ) and exported ( analysis  
 export graph information ) . the analysis presented in this use case took about 
 15 days to complete .
four days were necessary to obtain the totality of 37,500 
 blast results from the ncbi while twelve days were required for the 
 interproscan at the ebi web server .
mapping and annotation were ready within a 
 few hours and one day was necessary to collect and evaluate charts .
this shows 
 that with the adequate tools and some training , functional annotation of a 
 plant genome - wide sequence collection is in reach within a couple of weeks .
functional annotation of novel sequence data is a 
 key requirement for the successful generation of functional genomics in 
 biological research .
the blast2go suite has been developed to be a useful 
 support to these approaches , especially ( but not exclusively ) in nonmodel 
 species .
this bioinformatics tool is ideal for plant functional genomics 
 research because of the following : ( 1 ) it is suitable for any species but can 
 be also customized for specific needs , ( 2 ) it combines high throughput with 
 interactivity and curation , and ( 3 ) it is user - friendly and requires low 
 bioinformatics efforts to get it running . in our opinion ,
the major b2 g 
 strength is the combination of functional annotation and data mining on 
 annotation results , which means that , within one tool , researchers can generate 
 functional annotation and assess the functional meaning of their experimental 
 results .
further developments of blast2go will reinforce this second aspect 
 thought the integration of the tool with the babelomics ( www.babelomics.org , 
 ) and gepas suites ( www.gepas.org , ) for the statistical analysis of 
 functional profiling data .
 functional annotation of novel sequence data is a primary requirement for the utilization of functional genomics approaches in plant research . in this paper , we describe the blast2go suite as a comprehensive bioinformatics tool for functional annotation of sequences and data mining on the resulting annotations , primarily based on the gene ontology ( go ) vocabulary . blast2go optimizes function transfer from homologous sequences through an elaborate algorithm that considers similarity , the extension of the homology , the database of choice , the go hierarchy , and the quality of the original annotations . 
 the tool includes numerous functions for the visualization , management , and statistical analysis of annotation results , including gene set enrichment analysis . 
 the application supports interpro , enzyme codes , kegg pathways , go direct acyclic graphs ( dags ) , and goslim . 
 blast2go is a suitable tool for plant genomics research because of its versatility , easy installation , and friendly use . 
1. INTRODUCTION
2. BLAST2GO HIGHLIGHTS
3. THE BLAST2GO APPLICATION
4. CONCLUSIONS