today 's scientists are deluged with information . currently there are > 8000 scientific , technical and medical journals publishing > 1 000 000 articles a year . indeed , it has been estimated that in order for a scientist to stay current for a single high - priority disease ( say breast cancer ) , they would have to scan 130 different journals and read 27 papers each week ( 1 ) . given that most journal articles are not exactly light reading , this task of staying current with the literature could easily occupy 75% of a scientist 's working day . the problem with information overload thousands of web accessible text , image and sequence databases now exist ( 2 ) . these contain terabytes of data and are expanding in both number and size far faster than the rate of scientific publishing . just tracking the appearance and content of new databases , let alone using the information in them , can prove to be a full - time challenge . clearly , the quantity of information generated by the scientific community is far too great for any human to efficiently process or assimilate . too much fragmentary information and non - contextual data exists in too many places . this makes the task of finding relevant information on a specialized topic somewhat like finding a needle in the proverbial haystack . it is now obvious that a key challenge , especially in the field of bioinformatics , is to develop methods that allow this information to be easily retrieved and readily exploited by human users . one route is to pre - compute or synopsize this information and assemble it into specialized biomedical databases or encyclopedias . however , given the need for constant updating , expert manual curation and the wide variety of biomedical topics that users may want to access , pre - assembled databases are not a perfect panacea to the problem of information overload . an alternative route is to improve the tools for automated or semi - automated biomedical information retrieval . an important advance in biomedical information retrieval has come with the development of ncbi 's entrez cross - database search system ( 3 ) . this system brings the hunt for new and useful biomedical data to a new level by integrating pubmed ( i.e. biomedical abstract data ) with ncbi 's multitude of sequence , structure and chemical databases . entrez is a superb resource that greatly improves the speed and precision with which researchers can find relevant data on a given gene , disease , mutation , drug or microarray experiment . however , entrez is still somewhat limited because it is restricted to searching its abstract and molecular database resources only through mesh ( medical subject heading ) terms , mesa ( medical subject annotation ) terms and keywords in database titles or database names . in other words , entrez is not capable of scanning through the full text of all 168 000 abstracts on , say , breast cancer assembling a list of genes that are mentioned in those abstracts , extracting key sentences for those genes , counting the frequency of appearance of those genes and providing a frequency or relevancy ranking for them . likewise , entrez does not link its results to many equally useful external databases such as swissprot ( 4 ) , the human gene mutation database ( hgmd ) ( 5 ) , drugbank ( 6 ) or the human metabolome database ( hmdb ) ( 7 ) . another unfortunate limitation is that entrez does not contain disease , gene / protein , drug or metabolite compendia ( i.e. all entity lists ) . for instance , if one wanted to find all the drugs that could be used to treat breast cancer , one would have to repeatedly enter  breast cancer and y where y is the name of each of the 25 000 known drug brands . these kind of sophisticated text searching tasks are more suited to a different class of programs called medical text mining systems . several excellent web - based biomedical text mining tools now exist such as medminer ( 8) , medgene ( 9 ) , litminer ( 10 ) , ihop ( 11 ) , alibaba ( 12 ) and ebimed ( 13 ) . these tools exploit the explicit textual information contained within the pubmed database by selecting or highlighting key sentences or terms within the abstracts and then presenting the results in some form . however , these text mining tools were designed specifically to extract information only from pubmed abstracts and not other databases ( i.e. swissprot , hgmd and drugbank ) . ideally what is needed is something that combines the text mining capabilities found in medminder or ebimed with the database integration found in entrez . what 's more , one would like to see analytical capabilities built into such a system so that users could manipulate , view , or archive the resulting information ( text or sequence ) in a convenient , web accessible format . polysearch is a web accessible tool that is designed specifically for extracting and analyzing text - derived relationships between human diseases , genes / proteins , mutations ( snps ) , drugs , metabolites , pathways , tissues , organs and sub - cellular localizations . it also displays links and ranks text , as well as sequence data in multiple forms and formats . a distinguishing feature of polysearch over other biomedical text mining tools is the fact that it extracts and analyses not only pubmed data , but also text data from multiple databases ( drugbank , swissprot , hgmd , entrez snp , etc . ) . this integration of current literature text and database  factoids allows polysearch to extract and rank information that is not easily found in databases alone or in journals alone . polysearch , as the name suggests , is a tool that supports multiple (  poly ) types of biomedical text searches from multiple (  poly ) types of databases . it is also designed to facilitate the search , retrieval and compilation of disease - associated human  polymorphisms ( snps ) . polysearch exploits recent advances in text mining along with the readily availability of diverse biomedical databases and biomedical thesauruses to permit a wide variety of complex or expansive text searches over many biomedical domains . polysearch consists of seven basic components : ( i ) a web - based user interface for constructing queries ; ( ii ) a collection of internal and external biomedical databases ; ( iii ) a collection of biomedical synonyms ( custom thesauruses and all entity lists ) ; ( iv ) a general text search engine for extracting data from heterogeneous databases ; ( v ) a schema for selecting , ranking and integrating content ; ( vi ) a display tool for displaying and synopsizing results and ( vii ) a pcr primer - designing tool to facilitate snp and mutation studies . a figure outlining polysearch 's general design and the databases it uses is given in the polysearch polysearch has been tested on a variety of platforms is compatible with most common browsers ( netscape , firefox , safari and internet explorer ) . it uses a series of text boxes and pull - down menus to facilitate query construction . the basic structure of almost every polysearch query is  given a single x find all associated y's , where x can be any single human disease , gene / protein name , drug , metabolite , snp , gene / protein sequence or user - provided text word and y can be any one of all human diseases , genes / proteins , drugs , metabolites , pathways , tissues , organs , sub - cellular localizations , snps , pcr primers or user - supplied text words . in each case the  x and  y words can correspond to either a common name or synonyms . for future reference we will refer to  x as the  query term and y as the  database term. table 1 provides a more detailed listing of all allowed queries in polysearch . once the general query is constructed and submitted the user is presented with a second page ( the query refinement page  figure 1b ) that allows further refinement of the query , including the selection of association words , databases , query word synonyms and display options . figure 1.a screenshot montage of polysearch 's query interface and result display showing : ( a ) the polysearch query interface ; ( b ) the query refinement page ; ( c ) the polysearch result table where both pubmed and omim were searched and ( d ) the sentence and keyword display view obtained by clicking on the pubmed citation links in the result table . basic queries in polysearchgivendiseasegene / proteindrugmetabolitetext wordpathwaytissuesnp ( rs#)gene / protein sequencefind  disease  gene / protein  drug  metabolite  tissue  organ  subcellular localization  pathway  text word  snp  pcr primers a screenshot montage of polysearch 's query interface and result display showing : ( a ) the polysearch query interface ; ( b ) the query refinement page ; ( c ) the polysearch result table where both pubmed and omim were searched and ( d ) the sentence and keyword display view obtained by clicking on the pubmed citation links in the result table . a detailed listing of all allowed  basic queries in polysearch through its query refinement page , polysearch also allows users to add or include synonyms to their original query words ( i.e. query synonym expansion ) . in particular , polysearch uses its own thesauruses to automatically append synonyms to a query word ( by clicking on the option for  automated synonym list ) . if the computer - generated synonyms appear inadequate , the user may further edit or add to this list . association words play a key role in improving the precision and recall of any given polysearch query . for each of the 50 + query combinations available through polysearch , sets of association words ( ranging in number from 40 to 400 ) were developed through extensive manual testing and iterative modification . complete list of association words are available in the polysearch documentation web pages . from the query refinement interface users can also choose to limit their search to pubmed only , or to perform their search on some of polysearch 's other reference databases . limiting polysearch searches to the pubmed database ( the default configuration ) is faster but the results tend to be less accurate . additionally , through the query refinement interface users can also specify : ( i ) how far back in time the pubmed records should be searched , ( ii ) the number of abstracts to be searched and ( iii ) the minimum number of pubmed citations required to be considered as a hit . changing these values judiciously can also shorten the search times . after submitting the query , a progress bar appears indicating the expected length of time that the query would take . polysearch caches all its queries so that for the more common queries the results can be returned almost instantly . however , for more unique queries the typical time taken for text processing is 12 min ( polysearch processes 10 abstracts per second ) . depending on the server load and query type , some jobs may take 1520 min . upon completion of the search task given that a typical polysearch query is  given x , find all y's , what is returned is a table that lists , in rank order of relevance , the most probable y's that match the given  x. as seen in figure 1c , the top of the table typically summarizes the query word(s ) , the type of search , the association words used , and the databases used to construct the search . below this is a display - filtering tool that allows users to select cutoff values related to the minimum number of citations , z - scores and/or relevancy scores needed for a result to be displayed on the results table . the first column in this table gives the ranking of the database term found by polysearch ( by z - score ) , the second column lists each hit 's z - score ( the number of standard deviations that the relevancy score is above the mean ) , the third column gives the total relevancy score for the match term ( with a category breakdown ) , the fourth column displays the database term itself , the fifth column shows the database term 's synonyms or aliases , the sixth column displays the hyperlinks to the abstracts or databases for which polysearch found relevant sentences or phrases . matches to additional databases ( omim , hmdb , drugbank , etc . ) are displayed in appended columns . the table may be sorted in ascending or descending order by clicking on the arrows in the column headers . figure 1c shows a polysearch result where both pubmed and omim ( 14 ) were searched . clicking the links under the pubmed column ( or other database columns ) generates a second html table that displays the key sentences found in each database abstract or database field along with hyperlinks to the full database record ( figure 1d ) . as seen in this figure , the extracted sentences are colour coded to facilitate rapid visual scanning ( although this colouring can also be selectively turned off ) . words marked in red correspond to the query term(s ) , blue to human genes , green to diseases , brown to drugs , magenta to metabolites and fuchsia to association words ( dark yellow is reserved for the other word types such as pathway , tissue , organ , sub - cellular localization and user provided text words ) . if a query word happens to be a gene , drug , disease or metabolite , the red colour of the query word takes precedence . words highlighted with a light yellow background are the current thesaurus words that the user is viewing . this highlighting is used to facilitate rapid visual cueing of the association between the query word and the thesaurus word . the same colour - coding scheme is used in polysearch 's fully annotated abstract view . mousing over the coloured terms will give database links or database accession number associated with these terms , while clicking on a coloured term will launch a web page corresponding to that term 's database page . note that somewhat different tables and views are generated for polysearch 's snp and primer design queries . polysearch is specifically designed to address biomedical queries of the form  given a single x , find all y's , where x and y are biomedical terms pertaining to human health and biology . in performing this type of search polysearch initially generates a list of all possible y 's ( plus their synonyms or abbreviations ) along with all of x 's possible synonyms and abbreviations . if the search is being done through pubmed , a formal pubmed query is constructed that uses these terms ( along with the appropriate boolean operators ) and the query is submitted via ncbi 's e - utilities application programming interface ( api ) . polysearch then scans through these abstracts sentence - by - sentence to look for informative sentences . these sentences are scored , grouped in categories , ranked , colour coded and then displayed as described earlier . a similar sentence - by - sentence scanning and scoring process is done when searches are done on any of polysearch 's local databases . polysearch does not use part - of - speech tagging , but rather it uses a dictionary or  bag - of - words approach to identify relevant text associations . key to the success of dictionary - based text mining is having a comprehensive collection of words and synonyms , all of which are properly normalized or mapped to appropriate database accession numbers . polysearch maintains nine different thesauruses , compendia or synonym lists for human genes , human proteins , human diseases , approved drugs , endogenous metabolites , protein / gene pathways , human tissues , human organs and sub - cellular localizations . these thesauruses or compendia are obviously critical for many of the expansive queries (  given one , find many ) supported by polysearch . they are also critical for providing the sensitivity and specificity for many single - word queries ( i.e. the automated synonym feature in the query refinement page ) . polysearch 's human gene / protein thesaurus was compiled ( and is updated ) from the latest releases of swissprot ( 4 ) , entrez gene ( 3 ) , the human genome organisation gene nomenclature committee ( hgnc ) ( 15 ) and the human protein reference database ( hprd ) ( 16 ) . this thesaurus , which had to be extensively hand edited , includes gene and protein names , gene symbols , gene / protein abbreviations , protein complexes ( microtubules , ribosomes , etc . ) as well as their known synonyms . polysearch 's disease thesaurus was derived from the unified medical language system ( umls ) ( 17 ) which was further supplemented with disease terms obtained from omim and extensive manual curation . polysearch 's drug thesaurus consists of a list of drug names and synonyms from drugbank 's list of fda - approved drugs , while its metabolite thesaurus consists of a list of metabolite names and synonyms from all entries in the hmdb . the pathway thesaurus was created using kegg ( 18 ) , biocarta ( http://www.biocarta.com/ ) and other pathway resources followed by extensive manual editing . to create the tissue and organ thesauruses , the tissue and organ list from litminer was first combined with a tissue and organ list manually derived from the tissue specificity field in swissprot . finally , the sub - cellular localization thesaurus was created from the list of all possible sub - cellular localizations listed in the hprd . in addition to these synonym collections , polysearch also maintains local copies of a number of comprehensively annotated databases including swissprot , hprd , hmdb , omim , drugbank , the genetic association database ( gad19 ) and the human gene mutation database ( hgmd5 ) . by keeping local copies of these databases as shown in the testing and assessment section , the use of these databases in a polysearch query substantially improves the quality of the results . these local databases are also used to normalize ( i.e. map text terms to database ids ) many of the terms in polysearch 's thesauruses . because of the size and difficulties associated with daily maintenance , all queries involving pubmed abstracts or snp retrieval are performed over the web using the respective apis for pubmed as well as multiple snp databases including cgap ( 20 ) , entrezsnp ( 3 ) and hapmap ( 21 ) . a central premise to polysearch 's search strategy is the assumption that the greater the frequency with which an x and y association occurs within a collection of abstracts or databases , the more significant the association is likely to be . for instance , if cox2 is mentioned in pubmed as being associated with colon cancer 510 times but thioredoxin is associated with colon cancer only once , then one is more likely to have more confidence in the cox2-colon cancer association . frequency alone is not always the best way to rate a paper or a website for its relevancy . therefore , in addition to counting the frequency of apparent associations , polysearch employs a text ranking scheme to score the most relevant sentences and abstracts that associate both the query and match terms with each other . specifically , polysearch tries to find query terms , association words and database terms in order to identify and enumerate what we call r1 , r2 , r3 and r4 sentences ( r stands for relevancy ) . an r4 sentence is a sentence that contains just one of the database terms and is used only for statistical normalization . an r3 sentence is a sentence that has one of the database terms as well as the query word . an r2 sentence is a sentence that has one of the database terms , one of the query terms , as well as at least one association word . an r1 sentence is the same as an r2 sentence but in addition , an r1 sentence has to pass polysearch 's pattern recognition criteria . polysearch 's pattern recognition system is rule based and details regarding these rules are provided in the polysearch documentation web pages . this kind of pattern recognition has been used in other text mining systems ( such as alibaba ) to extract protein collectively , we call the r1 , r2 , r3 and r4 sentence counts the polysearch relevancy index ( pri ) . for the purposes of generating a quantitative pri score and calculating z - scores , r1 sentences are given a value of 50 , r2 sentences = 25 , r3 sentences = 5 and r4 sentences = 1 . the pri score is the sum of the r1 , r2 , r3 and r4 sentences . a text mining tool is only useful if it gives accurate results and extensive coverage in less time than what could be performed using alternative ( i.e. non - computational ) or competing computational methods . these included ( i ) a comparison of features and capabilities between polysearch and other biomedical text mining tools ; ( ii ) a comparative evaluation of gene synonym identification ; ( iii ) a comparative evaluation of polysearch 's ability to identify protein  protein interactions ; ( iv ) an evaluation of polysearch 's ability to identify disease / gene associations ; ( v ) an evaluation of polysearch 's ability to identify drug / drug - target associations ; ( vi ) an evaluation of polysearch 's ability to identify metabolite / enzyme associations and ( vii ) several real - life assessments relating to its capacity to facilitate or accelerate database annotations . space limitations prevent us from providing a complete summary of all of these evaluations or of the statistical methods used to measure the performance . in particular , details on the statistical methods , the results for evaluations # 1 , # 5 , # 6 and # 7 , as well as additional details relating to evaluations # 2 through # 6 ( including precision , recall , true / false positives and true / false negatives ) are all available at polysearch 's documentation web page . gold standard datasets used in these evaluations are available in polysearch 's download pages . here we will only provide a brief overview of some of the results . for evaluation # 2 , polysearch 's ability to identify genes and protein names within different sentences or abstracts was assessed with a dataset that the developers of ihop used in evaluating gene synonym identification for human genes ( 11 ) . this dataset contains 181 sentences from various pubmed abstracts with an average of 23 gene names per sentence ( the names include symbols , standard names , abbreviations and synonyms ) . we manually identified all the gene and protein names or abbreviations from the dataset and used this collection as our gold standard to compare to polysearch 's gene synonym identification for the dataset . for this task the precision for polysearch was 90.1 , while for ihop it was 87.1 . finally , the f - measure ( a combined measure of recall and precision ) for polysearch was 87.6 while for ihop it was 84.4 . these results clearly show that polysearch 's performance on gene / protein identification is comparable to that of ihop . in evaluation protein interaction extraction ( for five human proteins ) against two other text mining systems ( ebimed and ihop ) , and a manually curated database ( hprd ) that covers protein  protein interactions . protein interactions for these proteins was determined through extensive reading of full - text papers and careful review of interaction database compilations by two experts with degrees in biochemistry and bioinformatics . our  gold standard results indicated that wnt6 had 20 interacting partners , pitpnm2 had 6 interacting partners , kif5c had 10 interacting partners , snx2 had 23 interacting partners and dedd had 40 interacting partners . protein interaction searching . after evaluating the results we found that the f - measure for polysearch alone was 69.2 , the f - measure for polysearch with its hprd option turned on was 80.8 , the f - measure for ihop was 43.6 , the f - measure for ebimed was 25.3 and for hprd it was 47.7 . these data clearly show that polysearch achieves the highest f - measure , by a significant margin , among the four different tools . in evaluation # 4 we compared the performance of polysearch , litminer , ebimed and gad in identifying gene - disease associations for 10 different human diseases ( alkaptonuria , cylindromatosis , gilbert syndrome , mcleod syndrome , motor neuron disease , omphalocele , onchocerciasis , orofacial cleft , synpolydactyly and vitelliform macular dystrophy ) . the complete set of known gene - disease associations was determined through extensive reading of full - text papers and careful review of gene - disease database compilations by an expert with degrees in biochemistry and bioinformatics . the list of  gold - standard gene - disease associations is given in the polysearch download pages . our results showed that the f - measure for polysearch alone was 70.2 , the f - measure for polysearch with its gad and omim options turned on was 78.5 , the f - measure for ebimed was 66.0 , the f - measure for litminer was 5.8 and for gad it was 27.5 . as with the previous tests , these data clearly show that polysearch , with its database features turned on , performs very well . polysearch , as the name suggests , is a tool that supports multiple (  poly ) types of biomedical text searches from multiple (  poly ) types of databases . it is also designed to facilitate the search , retrieval and compilation of disease - associated human  polymorphisms ( snps ) . polysearch exploits recent advances in text mining along with the readily availability of diverse biomedical databases and biomedical thesauruses to permit a wide variety of complex or expansive text searches over many biomedical domains . polysearch consists of seven basic components : ( i ) a web - based user interface for constructing queries ; ( ii ) a collection of internal and external biomedical databases ; ( iii ) a collection of biomedical synonyms ( custom thesauruses and all entity lists ) ; ( iv ) a general text search engine for extracting data from heterogeneous databases ; ( v ) a schema for selecting , ranking and integrating content ; ( vi ) a display tool for displaying and synopsizing results and ( vii ) a pcr primer - designing tool to facilitate snp and mutation studies . a figure outlining polysearch 's general design and the databases it uses is given in the polysearch polysearch has been tested on a variety of platforms is compatible with most common browsers ( netscape , firefox , safari and internet explorer ) . it uses a series of text boxes and pull - down menus to facilitate query construction . the basic structure of almost every polysearch query is  given a single x find all associated y's , where x can be any single human disease , gene / protein name , drug , metabolite , snp , gene / protein sequence or user - provided text word and y can be any one of all human diseases , genes / proteins , drugs , metabolites , pathways , tissues , organs , sub - cellular localizations , snps , pcr primers or user - supplied text words . in each case the  x and  y words can correspond to either a common name or synonyms . for future reference we will refer to  x as the  query term and  y as the  database term. table 1 provides a more detailed listing of all allowed queries in polysearch . once the general query is constructed and submitted the user is presented with a second page ( the query refinement page  figure 1b ) that allows further refinement of the query , including the selection of association words , databases , query word synonyms and display options . figure 1.a screenshot montage of polysearch 's query interface and result display showing : ( a ) the polysearch query interface ; ( b ) the query refinement page ; ( c ) the polysearch result table where both pubmed and omim were searched and ( d ) the sentence and keyword display view obtained by clicking on the pubmed citation links in the result table . basic queries in polysearchgivendiseasegene / proteindrugmetabolitetext wordpathwaytissuesnp ( rs#)gene / protein sequencefind  disease  gene / protein  drug  metabolite  tissue  organ  subcellular localization  pathway  text word  snp  pcr primers a screenshot montage of polysearch 's query interface and result display showing : ( a ) the polysearch query interface ; ( b ) the query refinement page ; ( c ) the polysearch result table where both pubmed and omim were searched and ( d ) the sentence and keyword display view obtained by clicking on the pubmed citation links in the result table . a detailed listing of all allowed  basic queries in polysearch through its query refinement page , polysearch also allows users to add or include synonyms to their original query words ( i.e. query synonym expansion ) . in particular , polysearch uses its own thesauruses to automatically append synonyms to a query word ( by clicking on the option for  automated synonym list ) . if the computer - generated synonyms appear inadequate , the user may further edit or add to this list . association words play a key role in improving the precision and recall of any given polysearch query . for each of the 50 + query combinations available through polysearch , sets of association words ( ranging in number from 40 to 400 ) were developed through extensive manual testing and iterative modification . complete list of association words are available in the polysearch documentation web pages . from the query refinement interface users can also choose to limit their search to pubmed only , or to perform their search on some of polysearch 's other reference databases . limiting polysearch searches to the pubmed database ( the default configuration ) is faster but the results tend to be less accurate . additionally , through the query refinement interface users can also specify : ( i ) how far back in time the pubmed records should be searched , ( ii ) the number of abstracts to be searched and ( iii ) the minimum number of pubmed citations required to be considered as a hit . changing these values judiciously can also shorten the search times . after submitting the query , a progress bar appears indicating the expected length of time that the query would take . polysearch caches all its queries so that for the more common queries the results can be returned almost instantly . however , for more unique queries the typical time taken for text processing is 12 min ( polysearch processes 10 abstracts per second ) . depending on the server load and query type , some jobs may take 1520 min . upon completion of the search task polysearch displays its results in a hyperlinked html table ( figure 1c ) . given that a typical polysearch query is  given x , find all y's , what is returned is a table that lists , in rank order of relevance , the most probable  y's that match the given x. as seen in figure 1c , the top of the table typically summarizes the query word(s ) , the type of search , the association words used , and the databases used to construct the search . below this is a display - filtering tool that allows users to select cutoff values related to the minimum number of citations , z - scores and/or relevancy scores needed for a result to be displayed on the results table . the first column in this table gives the ranking of the database term found by polysearch ( by z - score ) , the second column lists each hit 's z - score ( the number of standard deviations that the relevancy score is above the mean ) , the third column gives the total relevancy score for the match term ( with a category breakdown ) , the fourth column displays the database term itself , the fifth column shows the database term 's synonyms or aliases , the sixth column displays the hyperlinks to the abstracts or databases for which polysearch found relevant sentences or phrases . matches to additional databases ( omim , hmdb , drugbank , etc . ) are displayed in appended columns . the table may be sorted in ascending or descending order by clicking on the arrows in the column headers . figure 1c shows a polysearch result where both pubmed and omim ( 14 ) were searched . clicking the links under the pubmed column ( or other database columns ) generates a second html table that displays the key sentences found in each database abstract or database field along with hyperlinks to the full database record ( figure 1d ) . as seen in this figure , the extracted sentences are colour coded to facilitate rapid visual scanning ( although this colouring can also be selectively turned off ) . words marked in red correspond to the query term(s ) , blue to human genes , green to diseases , brown to drugs , magenta to metabolites and fuchsia to association words ( dark yellow is reserved for the other word types such as pathway , tissue , organ , sub - cellular localization and user provided text words ) . if a query word happens to be a gene , drug , disease or metabolite , the red colour of the query word takes precedence . words highlighted with a light yellow background are the current thesaurus words that the user is viewing . this highlighting is used to facilitate rapid visual cueing of the association between the query word and the thesaurus word . the same colour - coding scheme is used in polysearch 's fully annotated abstract view . mousing over the coloured terms will give database links or database accession number associated with these terms , while clicking on a coloured term will launch a web page corresponding to that term 's database page . note that somewhat different tables and views are generated for polysearch 's snp and primer design queries . polysearch is specifically designed to address biomedical queries of the form  given a single x , find all y's , where x and y are biomedical terms pertaining to human health and biology . in performing this type of search polysearch initially generates a list of all possible y 's ( plus their synonyms or abbreviations ) along with all of x 's possible synonyms and abbreviations . if the search is being done through pubmed , a formal pubmed query is constructed that uses these terms ( along with the appropriate boolean operators ) and the query is submitted via ncbi 's e - utilities application programming interface ( api ) . polysearch then scans through these abstracts sentence - by - sentence to look for informative sentences . these sentences are scored , grouped in categories , ranked , colour coded and then displayed as described earlier . a similar sentence - by - sentence scanning and scoring process is done when searches are done on any of polysearch 's local databases . polysearch does not use part - of - speech tagging , but rather it uses a dictionary or  bag - of - words approach to identify relevant text associations . key to the success of dictionary - based text mining is having a comprehensive collection of words and synonyms , all of which are properly normalized or mapped to appropriate database accession numbers . polysearch maintains nine different thesauruses , compendia or synonym lists for human genes , human proteins , human diseases , approved drugs , endogenous metabolites , protein / gene pathways , human tissues , human organs and sub - cellular localizations . these thesauruses or compendia are obviously critical for many of the expansive queries (  given one , find many ) supported by polysearch . they are also critical for providing the sensitivity and specificity for many single - word queries ( i.e. the automated synonym feature in the query refinement page ) . polysearch 's human gene / protein thesaurus was compiled ( and is updated ) from the latest releases of swissprot ( 4 ) , entrez gene ( 3 ) , the human genome organisation gene nomenclature committee ( hgnc ) ( 15 ) and the human protein reference database ( hprd ) ( 16 ) . this thesaurus , which had to be extensively hand edited , includes gene and protein names , gene symbols , gene / protein abbreviations , protein complexes ( microtubules , ribosomes , etc . ) as well as their known synonyms . polysearch 's disease thesaurus was derived from the unified medical language system ( umls ) ( 17 ) which was further supplemented with disease terms obtained from omim and extensive manual curation . polysearch 's drug thesaurus consists of a list of drug names and synonyms from drugbank 's list of fda - approved drugs , while its metabolite thesaurus consists of a list of metabolite names and synonyms from all entries in the hmdb . the pathway thesaurus was created using kegg ( 18 ) , biocarta ( http://www.biocarta.com/ ) and other pathway resources followed by extensive manual editing . to create the tissue and organ thesauruses , the tissue and organ list from litminer was first combined with a tissue and organ list manually derived from the tissue specificity field in swissprot . finally , the sub - cellular localization thesaurus was created from the list of all possible sub - cellular localizations listed in the hprd . in addition to these synonym collections , polysearch also maintains local copies of a number of comprehensively annotated databases including swissprot , hprd , hmdb , omim , drugbank , the genetic association database ( gad19 ) and the human gene mutation database ( hgmd5 ) . by keeping local copies of these databases as shown in the testing and assessment section , the use of these databases in a polysearch query substantially improves the quality of the results . these local databases are also used to normalize ( i.e. map text terms to database ids ) many of the terms in polysearch 's thesauruses . because of the size and difficulties associated with daily maintenance , all queries involving pubmed abstracts or snp retrieval are performed over the web using the respective apis for pubmed as well as multiple snp databases including cgap ( 20 ) , entrezsnp ( 3 ) and hapmap ( 21 ) . a central premise to polysearch 's search strategy is the assumption that the greater the frequency with which an x and y association occurs within a collection of abstracts or databases , the more significant the association is likely to be . for instance , if cox2 is mentioned in pubmed as being associated with colon cancer 510 times but thioredoxin is associated with colon cancer only once , then one is more likely to have more confidence in the cox2-colon cancer association . frequency alone is not always the best way to rate a paper or a website for its relevancy . therefore , in addition to counting the frequency of apparent associations , polysearch employs a text ranking scheme to score the most relevant sentences and abstracts that associate both the query and match terms with each other . specifically , polysearch tries to find query terms , association words and database terms in order to identify and enumerate what we call r1 , r2 , r3 and r4 sentences ( r stands for relevancy ) . an r4 sentence is a sentence that contains just one of the database terms and is used only for statistical normalization . an r3 sentence is a sentence that has one of the database terms as well as the query word . an r2 sentence is a sentence that has one of the database terms , one of the query terms , as well as at least one association word . an r1 sentence is the same as an r2 sentence but in addition , an r1 sentence has to pass polysearch 's pattern recognition criteria . polysearch 's pattern recognition system is rule based and details regarding these rules are provided in the polysearch documentation web pages . this kind of pattern recognition has been used in other text mining systems ( such as alibaba ) to extract protein collectively , we call the r1 , r2 , r3 and r4 sentence counts the polysearch relevancy index ( pri ) . for the purposes of generating a quantitative pri score and calculating z - scores , r1 sentences are given a value of 50 , r2 sentences = 25 , r3 sentences = 5 and r4 sentences = 1 . the pri score is the sum of the r1 , r2 , r3 and r4 sentences . a text mining tool is only useful if it gives accurate results and extensive coverage in less time than what could be performed using alternative ( i.e. non - computational ) or competing computational methods . these included ( i ) a comparison of features and capabilities between polysearch and other biomedical text mining tools ; ( ii ) a comparative evaluation of gene synonym identification ; ( iii ) a comparative evaluation of polysearch 's ability to identify protein  protein interactions ; ( iv ) an evaluation of polysearch 's ability to identify disease / gene associations ; ( v ) an evaluation of polysearch 's ability to identify drug / drug - target associations ; ( vi ) an evaluation of polysearch 's ability to identify metabolite / enzyme associations and ( vii ) several real - life assessments relating to its capacity to facilitate or accelerate database annotations . space limitations prevent us from providing a complete summary of all of these evaluations or of the statistical methods used to measure the performance . in particular , details on the statistical methods , the results for evaluations # 1 , # 5 , # 6 and # 7 , as well as additional details relating to evaluations # 2 through # 6 ( including precision , recall , true / false positives and true / false negatives ) are all available at polysearch 's documentation web page . gold standard datasets used in these evaluations are available in polysearch 's download pages . here we will only provide a brief overview of some of the results . for evaluation # 2 , polysearch 's ability to identify genes and protein names within different sentences or abstracts was assessed with a dataset that the developers of ihop used in evaluating gene synonym identification for human genes ( 11 ) . this dataset contains 181 sentences from various pubmed abstracts with an average of 23 gene names per sentence ( the names include symbols , standard names , abbreviations and synonyms ) . we manually identified all the gene and protein names or abbreviations from the dataset and used this collection as our gold standard to compare to polysearch 's gene synonym identification for the dataset . for this task the precision for polysearch was 90.1 , while for ihop it was 87.1 . finally , the f - measure ( a combined measure of recall and precision ) for polysearch was 87.6 while for ihop it was 84.4 . these results clearly show that polysearch 's performance on gene / protein identification is comparable to that of ihop . in evaluation protein interaction extraction ( for five human proteins ) against two other text mining systems ( ebimed and ihop ) , and a manually curated database ( hprd ) that covers protein  protein interactions . protein interactions for these proteins was determined through extensive reading of full - text papers and careful review of interaction database compilations by two experts with degrees in biochemistry and bioinformatics . our  gold standard results indicated that wnt6 had 20 interacting partners , pitpnm2 had 6 interacting partners , kif5c had 10 interacting partners , snx2 had 23 interacting partners and dedd had 40 interacting partners . protein interaction searching . after evaluating the results we found that the f - measure for polysearch alone was 69.2 , the f - measure for polysearch with its hprd option turned on was 80.8 , the f - measure for ihop was 43.6 , the f - measure for ebimed was 25.3 and for hprd it was 47.7 . these data clearly show that polysearch achieves the highest f - measure , by a significant margin , among the four different tools . in evaluation # 4 we compared the performance of polysearch , litminer , ebimed and gad in identifying gene - disease associations for 10 different human diseases ( alkaptonuria , cylindromatosis , gilbert syndrome , mcleod syndrome , motor neuron disease , omphalocele , onchocerciasis , orofacial cleft , synpolydactyly and vitelliform macular dystrophy ) . the complete set of known gene - disease associations was determined through extensive reading of full - text papers and careful review of gene - disease database compilations by an expert with degrees in biochemistry and bioinformatics . the list of  gold - standard gene - disease associations is given in the polysearch download pages . our results showed that the f - measure for polysearch alone was 70.2 , the f - measure for polysearch with its gad and omim options turned on was 78.5 , the f - measure for ebimed was 66.0 , the f - measure for litminer was 5.8 and for gad it was 27.5 . as with the previous tests , these data clearly show that polysearch , with its database features turned on , performs very well . polysearch brings a number of useful innovations to the area of biomedical text mining and information retrieval . these include : ( i ) a diverse and extensive set of category - specific biomedical thesauruses ; ( ii ) the integration of many well - annotated databases ( omim , drugbank , swissprot , hmdb , hprd and gad ) as supplementary text resources ; ( iii ) a multi - tiered , informative scoring system and ( iv ) customizable control over how to rank , view and assess text - derived associations . in addition to these innovations , polysearch also borrows a number of excellent ideas from existing text mining systems , including colour - coded word highlighting schemes , key sentence display , extensive use of hyperlinks and multi - database connectivity . this means polysearch can not identify novel or newly named diseases , genes , cell types , drugs or metabolites . another limitation lies in its inability to extract context or meaning from sentences or terms . methods that use artificial intelligence ( ai ) , word context or machine learning ( ml ) methods could potentially improve the current term identification system .
a particular challenge in biomedical text mining is to find ways of handling 
 comprehensive or 
 associative queries such as  find all genes associated with breast cancer. given that many queries in genomics , proteomics or metabolomics involve these kind of comprehensive searches we believe that a web - based tool that could support these searches would be quite useful . in response to this need , we have developed the polysearch web server . 
 polysearch supports > 50 different classes of queries against nearly a dozen different types of text , scientific abstract or bioinformatic databases . 
 the typical query supported by polysearch is  given x , find all y's where x or y can be diseases , tissues , cell compartments , gene / protein names , snps , mutations , drugs and metabolites . 
 polysearch also exploits a variety of techniques in text mining and information retrieval to identify , highlight and rank informative abstracts , paragraphs or sentences . 
 polysearch 's performance has been assessed in tasks such as gene synonym identification , protein 
 protein interaction identification and disease gene identification using a variety of manually assembled 
 gold standard text corpuses . 
 its f - measure on these tasks is 88 , 81 and 79% , respectively . 
 these values are between 5 and 50% better than other published tools . 
 the server is freely available at http://wishart.biology.ualberta.ca/polysearch