enzymes of the eukaryotic protein kinase superfamily phosphorylate serine , threonine or tyrosine residues in proteins .
protein kinases and their substrates form complex networks that regulate essentially every eukaryotic cellular process ( 1 )
. defects in phosphorylation networks result in numerous disease states , making protein kinases important pharmacological targets . to ensure signalling fidelity , protein kinases act on discrete sets of substrates .
two major factors are responsible for substrate recognition ( 2 ) : substrate recruitment , encompassing any process that promotes kinase - substrate encounters ; and peptide specificity , the preference for particular residues surrounding the phosphorylation site .
we have previously developed a method , named predikin , to predict the peptide specificity of protein serine 
predikin identifies key conserved substrate - determining residues ( sdrs ) in the protein kinase substrate - binding pocket .
the region of the substrate contacted by these residues corresponds to the heptapeptide sequence comprised of positions 3 to + 3 relative to the phosphorylated residue , so the physicochemical properties of sdrs can be used to predict which heptapeptides are the best substrates for a particular protein kinase .
we have recently completely revised and expanded the predikin codebase and provided access to predikin via a new webserver .
the predikin webserver is built from three components : ( i ) predikin.pm , a perl module that provides data and methods for the analysis of protein kinase and substrate sequences ; ( ii ) predikindb , a database of protein kinases and their substrates and ( iii ) the website user interface . in this article
, we provide a brief description of the methods , capabilities and usage of the predikin webserver .
a perl module , predikin.pm , provides data and methods for the analysis of both protein kinase and substrate sequences .
the protein kinase is analysed using the following methods : ( i ) assignment of protein kinase type ( serine  threonine , cmgc or tyrosine kinase ) using a regular expression match based on prosite patterns ( 4 ) ; ( ii ) classification by kinase sequence database ( ksd ) family ( 5 ) ; ( iii ) classification by panther database family ( 6 ) and ( iv ) identification of the key sdrs .
the module makes extensive use of the bioperl library ( 7 ) , hmm libraries and the hmmer package ( 8) .
sdrs in the query kinase are located using an alignment of the kinase sequence with a hmm profile model of the kinase catalytic domain ( s_tkc , accession sm00220 ) from the smart database ( 9 ) .
ksd family is assigned using the hmmer tool hmmpfam to compare the kinase sequence with a set of hmms built from ksd family alignments .
panther family is assigned using hmm families and the pantherscore program , both obtained from the panther database website .
having characterized the catalytic domain of the query kinase , predikin moves to the next step in the procedure : calculation of kinase - specific weight matrices for substrate prediction .
the unique feature of predikin compared with existing methods is that it permits substrate prediction based solely on kinase sequence , as opposed to providing predictions only for a kinase family .
predikindb contains three linked tables that describe protein kinases , their substrates and phosphorylation sites .
the data in predikindb are derived from the uniprot database using custom parsers written in perl .
predikindb is updated automatically at regular intervals using a pipeline of scripts that download uniprot files , parse and generate the database tables .
the key feature of predikindb is that where possible , phosphorylation sites are linked with the sequence of the kinase acting at the site .
this is achieved by parsing the uniprot mod_res line for a kinase name ( e.g.  by pka ) and comparing it with a list of gene names for kinases from the same organism as the substrate sequence .
predikindb currently contains 2335 serine , threonine and tyrosine residues that are annotated as phosphoresidues ( with uniprot evidence level 
potential ) in 1116 proteins and that are linked to a specific protein kinase sequence .
11 999 sites are also annotated as experimental by the phospho.elm database ( 10 ) , of which 690 are linked to a kinase . linking phosphorylation sites with kinase sequences allows the retrieval of phosphorylation sites from the database , where ( i ) the kinase is known ; ( ii ) the phosphorylation site is annotated with high confidence and ( iii ) the kinase has similarity in the catalytic domain ( as measured by sdrs , ksd or panther family ) to those of the query kinase .
users can specify a minimum confidence value for the phosphorylation sites used in scoring matrices ( phospho.elm experimental ; uniprot experimental , by similarity , probable or potential ) and can also specify that only non - redundant sites be retrieved ( homology reduction ) .
the sites are then aligned and used to construct position weight matrices ( figure 1 ) by comparing the frequency of an amino acid at each position in the alignment with the frequency in all substrate sequences for the type ( serine  threonine , cmgc or tyrosine kinase ) of the query kinase . the matrices can then be used to score potential phosphorylation sites in putative substrates of the kinase . 

figure 1.frequency ( upper ) and weight ( lower ) matrices generated by predikin to score potential substrates of protein kinase cla4p from saccharomyces cerevisiae , using the method of classification by ksd family
. frequency ( upper ) and weight ( lower ) matrices generated by predikin to score potential substrates of protein kinase cla4p from saccharomyces cerevisiae , using the method of classification by ksd family .
the predikin.pm perl module provides methods to score potential phosphorylation sites using the weight matrices generated for the query kinase sequence .
the user uploads putative substrates in fasta format , from which all peptides with the sequence xxx[st]xxx ( serine  threonine and cmgc kinases ) or xxxyxxx ( tyrosine kinases ) are extracted .
these sites can then be scored using one of the sdr , ksd or panther matrices for the query kinase . a cutoff score below which
in addition , the disembl ( 11 ) and tmhmm ( 12 ) packages can be employed as filters to discriminate against putative phosphorylation sites on the basis of low intrinsic disorder and location within a transmembrane helix , respectively .
analysis of experimentally validated phosphorylation sites in predikindb shows that over 90% are found in a disordered region as predicted by at least one of disembl 's ; three algorithms and < 0.1% are located in a tmhmm - predicted helix .
the output from predikin is a table ( figure 2 ) containing identifiers for the kinase , catalytic domain and substrate , the location of the potential phosphorylated residue , the heptapeptide xxx[sty]xxx and a relative score between 0 and 100 indicating the likelihood of phosphorylation by the kinase .
we have performed an evaluation of predikin scores using kinase - substrate pairs from predikindb to determine how well predikin discriminates known phosphorylation sites of a kinase from unknown sites .
briefly , sites linked to a kinase were retrieved from predikindb and randomly divided into test ( 10% ) and training ( 90% ) sets .
all xxx[sty]xxx sites in each test set substrate were scored by generating a scoring matrix for the corresponding kinase , omitting those sites in the training set linked to the same kinase .
known / unknown sites were labelled 1/0 , respectively and redundant sites ( same peptide , same kinase and so same score ) were discarded .
the procedure was repeated 100 times to obtain 100 samples of scores and labels for each scoring method / kinase type combination . 

predikin sdr scores for the protein kinase cla4p from saccharomyces cerevisiae are shown for potential phosphorylation sites in cla4p and yeast protein yol113w . a sample prediction generated by the predikin webserver .
predikin sdr scores for the protein kinase cla4p from saccharomyces cerevisiae are shown for potential phosphorylation sites in cla4p and yeast protein yol113w .
area under receiver operating curve ( aroc ) values , obtained by plotting true positive ( annotated sites ) versus false positive ( unannotated sites ) rates as the score threshold is successively lowered ( 13 ) ranged from 0.71  0.98 sd ( tyrosine kinases , ksd scores ) to 0.93  0.02 sd ( cmgc kinases , sdr scores ) , depending on the predikin scoring method used and the kinase type .
detailed comparison with other methods ( gps , kinasephos , netphosk , ppsp and scansite ) is beyond the scope of this article ; a preliminary aroc analysis indicates that predikin performs as well or better than other phosphorylation site predictors .
however , we emphasize that such comparisons are of limited value , particularly as the other methods can only assign a kinase family to a query substrate , whereas predikin predicts substrates based on solely on query kinase sequence . the predikin webserver user interface is built using the open - source joomla content management system ( cms ; http://www.joomla.org ) .
the joomla cms provides a convenient modular approach to website design , making it easy to add features such as user management , custom forms , documentation and discussion forums .
joomla is written in php and so the pecl php embedded perl extension ( http://pecl.php.net/perl ) is employed to allow communication between the webserver and the predikin perl module .
the webserver is primarily designed for users interested in a small set of kinases and potential substrates , identified in an experimental screen .
however , users can acquire a large set of substrate predictions for a kinase quite rapidly , since all predictions for a session are stored in a temporary database table and can be exported as comma - separated text for easy import to other applications and further analysis .
users with more complex requirements ( such as genome - scale prediction of substrates for kinases ) may wish to use the standalone predikin perl module and are encouraged to contact us for more information .
a perl module , predikin.pm , provides data and methods for the analysis of both protein kinase and substrate sequences .
the protein kinase is analysed using the following methods : ( i ) assignment of protein kinase type ( serine  threonine , cmgc or tyrosine kinase ) using a regular expression match based on prosite patterns ( 4 ) ; ( ii ) classification by kinase sequence database ( ksd ) family ( 5 ) ; ( iii ) classification by panther database family ( 6 ) and ( iv ) identification of the key sdrs .
the module makes extensive use of the bioperl library ( 7 ) , hmm libraries and the hmmer package ( 8) .
sdrs in the query kinase are located using an alignment of the kinase sequence with a hmm profile model of the kinase catalytic domain ( s_tkc , accession sm00220 ) from the smart database ( 9 ) .
ksd family is assigned using the hmmer tool hmmpfam to compare the kinase sequence with a set of hmms built from ksd family alignments .
panther family is assigned using hmm families and the pantherscore program , both obtained from the panther database website .
having characterized the catalytic domain of the query kinase , predikin moves to the next step in the procedure : calculation of kinase - specific weight matrices for substrate prediction .
the unique feature of predikin compared with existing methods is that it permits substrate prediction based solely on kinase sequence , as opposed to providing predictions only for a kinase family .
predikindb contains three linked tables that describe protein kinases , their substrates and phosphorylation sites .
the data in predikindb are derived from the uniprot database using custom parsers written in perl .
predikindb is updated automatically at regular intervals using a pipeline of scripts that download uniprot files , parse and generate the database tables .
the key feature of predikindb is that where possible , phosphorylation sites are linked with the sequence of the kinase acting at the site .
this is achieved by parsing the uniprot mod_res line for a kinase name ( e.g.  by pka ) and comparing it with a list of gene names for kinases from the same organism as the substrate sequence .
predikindb currently contains 2335 serine , threonine and tyrosine residues that are annotated as phosphoresidues ( with uniprot evidence level 
potential ) in 1116 proteins and that are linked to a specific protein kinase sequence .
11 999 sites are also annotated as experimental by the phospho.elm database ( 10 ) , of which 690 are linked to a kinase . linking phosphorylation sites with kinase sequences allows the retrieval of phosphorylation sites from the database , where ( i ) the kinase is known ; ( ii ) the phosphorylation site is annotated with high confidence and ( iii ) the kinase has similarity in the catalytic domain ( as measured by sdrs , ksd or panther family ) to those of the query kinase .
users can specify a minimum confidence value for the phosphorylation sites used in scoring matrices ( phospho.elm experimental ; uniprot experimental , by similarity , probable or potential ) and can also specify that only non - redundant sites be retrieved ( homology reduction ) .
the sites are then aligned and used to construct position weight matrices ( figure 1 ) by comparing the frequency of an amino acid at each position in the alignment with the frequency in all substrate sequences for the type ( serine  threonine , cmgc or tyrosine kinase ) of the query kinase .
the matrices can then be used to score potential phosphorylation sites in putative substrates of the kinase . 

figure 1.frequency ( upper ) and weight ( lower ) matrices generated by predikin to score potential substrates of protein kinase cla4p from saccharomyces cerevisiae , using the method of classification by ksd family .
frequency ( upper ) and weight ( lower ) matrices generated by predikin to score potential substrates of protein kinase cla4p from saccharomyces cerevisiae , using the method of classification by ksd family .
the predikin.pm perl module provides methods to score potential phosphorylation sites using the weight matrices generated for the query kinase sequence .
the user uploads putative substrates in fasta format , from which all peptides with the sequence xxx[st]xxx ( serine  threonine and cmgc kinases ) or xxxyxxx ( tyrosine kinases ) are extracted .
these sites can then be scored using one of the sdr , ksd or panther matrices for the query kinase . a cutoff score below which
in addition , the disembl ( 11 ) and tmhmm ( 12 ) packages can be employed as filters to discriminate against putative phosphorylation sites on the basis of low intrinsic disorder and location within a transmembrane helix , respectively .
analysis of experimentally validated phosphorylation sites in predikindb shows that over 90% are found in a disordered region as predicted by at least one of disembl 's ; three algorithms and < 0.1% are located in a tmhmm - predicted helix .
the output from predikin is a table ( figure 2 ) containing identifiers for the kinase , catalytic domain and substrate , the location of the potential phosphorylated residue , the heptapeptide xxx[sty]xxx and a relative score between 0 and 100 indicating the likelihood of phosphorylation by the kinase .
we have performed an evaluation of predikin scores using kinase - substrate pairs from predikindb to determine how well predikin discriminates known phosphorylation sites of a kinase from unknown sites .
briefly , sites linked to a kinase were retrieved from predikindb and randomly divided into test ( 10% ) and training ( 90% ) sets .
all xxx[sty]xxx sites in each test set substrate were scored by generating a scoring matrix for the corresponding kinase , omitting those sites in the training set linked to the same kinase .
known / unknown sites were labelled 1/0 , respectively and redundant sites ( same peptide , same kinase and so same score ) were discarded .
the procedure was repeated 100 times to obtain 100 samples of scores and labels for each scoring method / kinase type combination . 

predikin sdr scores for the protein kinase cla4p from saccharomyces cerevisiae are shown for potential phosphorylation sites in cla4p and yeast protein yol113w . a sample prediction generated by the predikin webserver .
predikin sdr scores for the protein kinase cla4p from saccharomyces cerevisiae are shown for potential phosphorylation sites in cla4p and yeast protein yol113w .
area under receiver operating curve ( aroc ) values , obtained by plotting true positive ( annotated sites ) versus false positive ( unannotated sites ) rates as the score threshold is successively lowered ( 13 ) ranged from 0.71  0.98 sd ( tyrosine kinases , ksd scores ) to 0.93  0.02 sd ( cmgc kinases , sdr scores ) , depending on the predikin scoring method used and the kinase type .
detailed comparison with other methods ( gps , kinasephos , netphosk , ppsp and scansite ) is beyond the scope of this article ; a preliminary aroc analysis indicates that predikin performs as well or better than other phosphorylation site predictors .
however , we emphasize that such comparisons are of limited value , particularly as the other methods can only assign a kinase family to a query substrate , whereas predikin predicts substrates based on solely on query kinase sequence .
the predikin webserver user interface is built using the open - source joomla content management system ( cms ; http://www.joomla.org ) .
the joomla cms provides a convenient modular approach to website design , making it easy to add features such as user management , custom forms , documentation and discussion forums .
joomla is written in php and so the pecl php embedded perl extension ( http://pecl.php.net/perl ) is employed to allow communication between the webserver and the predikin perl module .
the webserver is primarily designed for users interested in a small set of kinases and potential substrates , identified in an experimental screen .
however , users can acquire a large set of substrate predictions for a kinase quite rapidly , since all predictions for a session are stored in a temporary database table and can be exported as comma - separated text for easy import to other applications and further analysis .
users with more complex requirements ( such as genome - scale prediction of substrates for kinases ) may wish to use the standalone predikin perl module and are encouraged to contact us for more information .
the predikin webserver provides user - friendly access to the improved and enhanced predikin prediction system .
a number of existing tools such as scansite ( 14 ) , kinasephos ( 15 ) , netphosk ( 16 ) , networkin ( 17 ) , gps / gps2 ( 18 ) and ppsp ( 19 ) are available to predict protein kinase substrates .
the fundamental difference between these tools and predikin is that analysis using the other tools begins with a substrate sequence , which has to be assigned to a limited number of pre - assigned kinase families .
predikin , on the other hand , uses the kinase sequence to build scoring matrices based on key residues in the kinase catalytic domain that are known from structural analysis to interact with the substrate phosphorylation site .
it can therefore make substrate predictions for any protein kinase based on sequence alone , provided that phosphorylation sites of similar kinases are present in the predikindb database .
new features and enhancements provided by the revised predikin code include ( i ) more reliable determination of sdrs through the use of profile hmm alignments ; ( ii ) filters to prescreen potential phosphorylation sites based on accessibility and disorder ; ( iii ) three methods to generate kinase - specific scoring matrices based on sdrs , ksd or panther family and ( iv ) use of the predikindb database , which is updated continually with new annotated phosphorylation sites and links sites with specific kinase sequences rather than kinase families , so forming the basis for substrate prediction using kinase features . predikin provides a range of applications , such as predicting candidate substrates for a protein kinase , candidate protein kinases for a substrate and the assignment of protein kinases to their substrates in large datasets .
 the predikin webserver allows users to predict substrates of protein kinases . 
 the predikin system is built from three components : a database of protein kinase substrates that links phosphorylation sites with specific protein kinase sequences ; a perl module to analyse query protein kinases and a web interface through which users can submit protein kinases for analysis . 
 the predikin perl module provides methods to ( i ) locate protein kinase catalytic domains in a sequence , ( ii ) classify them by type or family , ( iii ) identify substrate - determining residues , ( iv ) generate weighted scoring matrices using three different methods , ( v ) extract putative phosphorylation sites in query substrate sequences and ( vi ) score phosphorylation sites for a given kinase , using optional filters . 
 the web interface provides user - friendly access to each of these functions and allows users to obtain rapidly a set of predictions that they can export for further analysis . 
 the server is available at http://predikin.biosci.uq.edu.au . 
INTRODUCTION
METHODS
Protein kinase sequence analysis
Kinase-specific weight matrices
Substrate prediction
Web server implementation
DISCUSSION
SUPPLEMENTARY DATA