The reversible phosphorylation of serine, threonine and tyrosine residues by enzymes of the kinase and phosphatase superfamilies is the most abundant post translational modification in intracellular proteins [1, 2] and is an important mechanism for modulating (regulating) many cellular processes such as proliferation, differentiation and apoptosis. Eukaryotic protein kinases form one of the largest multigene families, and the full sequencing of the human genome has allowed the identification of almost all human protein kinases, representing about 1.7% of all human genes [3]. The role of an individual protein kinase in a particular cellular process, however, will be fully explained only when the basis for kinase substrate specificity will be better understood. Determining the substrate specificity of protein kinases is still one of the major challenges in molecular biology.

Phosphorylation site predictors such as the CBS predictor NetPhos [4] based on artificial neural networks [5, 6], or Scansite [7] based on peptide library derived position-specific scoring matrices (PSSM) [8] have gone some way to allowing molecular biologists to identify potential kinase substrate sites in query proteins, but suffer to a degree from over-prediction. The ELM resource attempts to reduce such problems using contextual filtering of motifs based on structure, cell compartment, taxonomic limits, and other properties of proteins [9].

Due to the biological importance of protein kinases in cell signaling and the steadily growing volume of reports identifying phosphorylation sites [10] it has become impractical for experimental molecular biologists to keep track of all the phosphorylation modifications of proteins within their area of research. Furthermore, large-scale proteomic and system biology approaches to cell regulation cannot succeed without full access to phosphorylation data. There is therefore a need to create and maintain a comprehensive database of known, experimentally verified phosphorylation sites within proteins.

We describe here Phospho.ELM [11], a server interfaced to a manually curated database of phosphorylation sites (instances) that provides easy access to information from the primary scientific literature concerning experimentally verified serine, threonine and tyrosine phosphorylation sites in eukaryotic proteins.

Construction and content

Phospho.ELM is developed and deployed with open source software. The database management system used is PostgreSQL [12]. The software was developed in Python 2.2 including some modules from the project for retrieval of information from SWISS-PROT and the PyGreSQL module for PostgreSQL interfacing. The web interface software uses the CGI model framework [13].

The Phospho.ELM 1.0 database contained a dataset of 289 proteins. The current release (Phospho.ELM 2.0) has integrated data from PhosphoBase to give a total of 556 proteins (299 human, 52 mouse, 54 rat, and 151 from other species). The Phospho.ELM dataset represents the largest collection of experimentally verified phosphorylation sites: the annotated proteins contain 556 tyrosine, 913 serine and 234 threonine phosphorylation sites (instances) that are verified substrates for 119 different protein kinases (Table 1).

Table 1 Selected protein kinases, their class, the number of known protein substrates and the instances recorded in Phospho.ELM.

In the Phospho.ELM database information is presented in two classes, instance and phosphoprotein. The key information consists of the phosphorylated site (instance) and its flanking sequence within a protein, for which experimental evidence has been found in the literature. Moreover, annotations to each instance include (where known) the kinase(s) that phosphorylate(s) the given site, the domain(s) that bind to a phosphorylated motif (this is particularly relevant for tyrosine phosphorylation, e.g. SH2), and a link to the ELM server to retrieve further information about the kinase and the regular expression used for prediction of kinase substrates (see Fig. 1). Where available, hyperlinks are provided to protein structures containing phosphorylated residues [14]. Furthermore, additional information for each protein kinase substrate includes the subcellular compartment (annotated with Gene Ontology terms [15, 16]), tissue distribution, a list of interaction partners derived from the MINT database [17], and a diagram of a signaling pathway in which the protein is involved. When one is available we provide a link to the BioCarta-Charting Pathways of Life [18]. Controlled vocabularies to describe experimental evidence [19] will soon be included in the database.

Figure 1
figure 1

The simplified Phospho.ELM database scheme. The key data objects are Substrates (phosphoprotein) and Instances for which relevant information is stored, as well as links to external databases. pkey and fkey stand for "primary key" and "foreign key", respectively.

The database can be searched by protein name (for the substrate), kinase name to get a list of known substrates, or by phosphopeptide-binding domain to retrieve all instances interacting with the given domain. An example of a search output is given in Fig. 2.

Figure 2
figure 2

A) Scheme for the PI3Kp85 protein with domains and phosphorylation sites. B) Output example of keyword search using PI3Kp85. Information about the phosphorylated sites includes the flanking sequence, the PubMed reference, the kinase responsible for the phosphorylation and links to additional information for the substrate and other relevant databases.

Utility and discussion

The phospho.ELM server will allow both 'wet-lab' biologists and bioinformaticians to easily retrieve extensive information about phosphoproteins. Indeed, further advance in the field of kinase-specific phosphorylation site prediction requires the combination of advanced algorithms together with high quality annotation of phosphorylation data. As such, Phospho.ELM is a valuable source of reliable data for the development of new predictors. Currently, sufficient data for training a machine learning method (e.g. circa 25 instances are needed for a neural network) are available only for the most well characterized kinases, however this number is expected to increase rapidly as a result of high-throughput proteomics initiatives. A method for kinase-specific substrate prediction of six S/T-kinases has recently been developed at the Center for Biological Sequence Analysis (N. Blom, personal communication).


Currently the set of known protein modification sites that are used to regulate the cell are poorly integrated into bioinformatics resources. This is hampering the research of systems biologists and research groups large and small. With Phospho.ELM we are working towards improving the catalogue for phosphorylation sites. Users are encouraged to help us to keep the database up-to-date by submitting additional information and their datasets of phosphorylation sites for integration into Phospho.ELM. Those interested in becoming data submission partner can send an email to

Availability and requirements

Phospho.ELM can be accessed on the public Apache2 powered website at

Author's contributions

FD and SC were responsible for the annotation process and the Web design. Design of the database structure and implementation of the server software is credited to CG. RL contributed to the analysis of the data. AV is involved in linking structural databases. TSP implemented the PhosphoBase database. BK, NB and TJG were responsible for the overall project coordination. All authors read and approved the final manuscript.