CINXE.COM
KO (KEGG ORTHOLOGY) Database
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>KO (KEGG ORTHOLOGY) Database</title> <link rel="stylesheet" href="/css/kegg25.css"> <script> <!-- function extract_kid(form){ var ent = form.text.value; var line; ent = ent.replace( /\W/g, " " ); ent = ent.replace( /\s+/g, " " ); ent = ent.replace( /\s+$/, "" ); ent = ent.replace( /^\s+/, "" ); line = ent.split(" "); ent = ""; for(i = 0; i < line.length; i++){ if (line[i].match(/^K\d{5}/i)) { ent = ent + " " + line[i]; } } ent = ent.replace( /^\s/, "" ); form.text.value = ent; } function Launcher(formobj,mode) { var p = formobj.text.value; var param, url; p = p.replace( /\W/g, " " ); p = p.replace( /^\s+/, "" ); p = p.replace( /\s+$/, "" ); param = p.replace( /\s+/g, "+" ); if (p == "") { return false; } url = ''; if (mode == 0) { url = "https://www.kegg.jp/kegg-bin/view_ortholog_table?orthology=" + param; } else if (mode == 1) { url = "/kegg-bin/search_pathway_object?org_name=ko&unclassified=" + p; } else if (mode == 2) { url = "/kegg-bin/kolist.cgi?" + param; } if (url) { window.open(url,'_blank'); } } //--> </script> </head> <body> <div id="topnav" ontouchstart=""> <div class="navlist"> <a href="/kegg/">KEGG</a> </div> <div class="dropdown"> Databases <div class="dropdown-content"> <ul> <li><a href="/kegg/pathway.html">Pathway</a></li> <li><a href="/kegg/brite.html">Brite</a></li> <li><a href="/kegg/ko.html">KO</a></li> <li><a href="/kegg/genes.html">Genes</a></li> <li><a href="/kegg/compound/">Chemical</a></li> <li><a href="/kegg/disease/">Disease</a></li> <li><a href="/kegg/drug/">Drug</a></li> <li><a href="/kegg/medicus.html">Medicus</a></li> </ul> </div> </div> <div class="dropdown"> Tools <div class="dropdown-content"> <ul> <li><a href="/kegg/mapper/">Mapper</a></li> <li><a href="/kegg/webapp/">Web Apps</a></li> <li><a href="/kegg/syntax/">Syntax</a></li> <li><a href="/kegg/annotation/">Annotation</a></li> </ul> </div> </div> <div class="dropdown"> Auto annotation <div class="dropdown-content"> <ul> <li><a href="https://www.kegg.jp/blastkoala/">BlastKOALA</a></li> <li><a href="https://www.kegg.jp/ghostkoala/">GhostKOALA</a></li> </ul> </div> </div> <div class="navlist"> <a href="https://www.kanehisa.jp/">Kanehisa Lab</a> </div> </div> <div id="header"> <div class="logo"> <a href="/kegg/"><img src="/Fig/kegg128.gif" alt="KEGG icon"></a> </div> <div class="title"> <h2 class="txt4">KO (KEGG ORTHOLOGY) Database</h2> <h5>Linking genomes to biological systems by functional orthologs</h5> </div> </div> <div id="dbnav" class="bar4"> <ul> <li><a href="/kegg/kegg2.html">KEGG2</a></li> <li><a href="/kegg/pathway.html">PATHWAY</a></li> <li><a href="/kegg/brite.html">BRITE</a></li> <li><a href="/kegg/module.html">MODULE</a></li> <li><span class="current">KO</span></li> <li><a href="/kegg/genes.html">GENES</a></li> <li><a href="/kegg/genome/">GENOME</a></li> <li><a href="/kegg/genome/virus.html">Virus</a></li> <li><a href="/kegg/seq/">SeqData</a></li> <li><a href="/kegg/annotation/enzyme.html">Enzyme</a></li> </ul> </div> <div id="content"> <!-- start --> <div class="searchbox"> <form method="get" action="/dbget-bin/www_bfind_sub"> <input type="hidden" name="mode" value="bfind"> <input type="hidden" name="max_hit" value="1000"> Search <select name="dbkey"> <option value="kegg">KEGG</option> <option value="pathway">PATHWAY</option> <option value="brite">BRITE</option> <option value="module">MODULE</option> <option value="orthology" selected="selected">KO</option> <option value="genes">GENES</option> <option value="genome">GENOME</option> <option value="compound">COMPOUND</option> <option value="glycan">GLYCAN</option> <option value="reaction">REACTION</option> <option value="rclass">RCLASS</option> <option value="enzyme">ENZYME</option> <option value="network">NETWORK</option> <option value="variant">VARIANT</option> <option value="disease">DISEASE</option> <option value="drug">DRUG</option> <option value="dgroup">DGROUP</option> </select> for <input type="search" size="40" name="keywords"> <input type="submit" value="Go"> </form> </div> <hr class="frame4"> <div class="searchbox"> <div style="float:left;"> <form name="mode" method="post" enctype="multipart/form-data" action="javascript:Launcher(document.mode,0);"> <table> <tr><td> Enter <a href="/kegg/kegg3.html">K numbers</a> <span class="small">(Example) K00973 K01710 K01790 K00067 K23987</span> </td></tr> <tr><td> <textarea name="text" cols="60" rows="2"></textarea> </td></tr> <tr><td> <input type="button" value="Filter" onclick="extract_kid(document.mode);"> <input type="button" value="Ortholog table" onclick="Launcher(document.mode,0);"> <input type="button" value="KEGG Mapper" onclick="Launcher(document.mode,1);"> <input type="button" value="Get name" onclick="Launcher(document.mode,2);"> <input type="reset" value="Clear"> </td></tr> </table> </form> </div> <div style="float:left; padding-left:30px;"> <b class="txt4">Current statistics</b> (2025/4/18) <div class="frame4"> <table> <tr> <td></td> <td class="center">Protein</td> <td class="center">RNA</td> </tr> <tr> <td>Number of KOs (K numbers)</td> <td class="right">27,039</td> <td class="right">492</td> </tr> <tr> <td>KOs with references</td> <td class="right">25,385</td> <td class="right">491</td> <tr> <td>KOs with sequences</td> <td class="right">23,701</td> <td class="right">469</td> </tr> <tr> <td>KOs linked to pathway maps</td> <td class="right">14,128</td> <td class="right">165</td> </tr> <tr> <td>KOs linked to brite hierarchies</td> <td class="right">22,445</td> <td class="right">492</td> </tr> <tr> <td>KOs linked to brite tables</td> <td class="right">849</td> <td class="right"></td> </tr> <tr> <td>KOs linked to KEGG modules</td> <td class="right">2,917</td> <td class="right">1</td> </tr> </table> </div> </div> <div style="clear:both;"></div> </div> <div class="main"> <hr class="frame4"> <h4 class="txt4">KO Database of Molecular Functions</h4> <div class="indent"> The <b>KO (KEGG Orthology)</b> database is a database of molecular functions represented in terms of functional orthologs. A functional ortholog is manually defined in the context of KEGG molecular networks, namely, KEGG pathway maps, BRITE hierarchies and KEGG modules, and is given a KO identifier called K number. Most KOs are defined from experimentally characterized genes and proteins in specific organisms, which are then generalized to other organisms based on sequence similarity. The granularity of "function" is context-dependent, and the resulting KO grouping may correspond to a group of highly similar sequences within a limited organism group or it may be a more divergent group. <br><br> The term KO system is used for a network-based classification of KOs shown below: <blockquote> 00001 <a href="/brite/ko00001">KEGG Orthology (KO)</a> </blockquote> It consists of six top categories (09100 to 09160) for KEGG pathway maps and one top category (09180) for BRITE hierarchies, as well as one top category (09190) for those KOs that are not yet included in either of them. The category numbers for these top categories and the second-level categories under metabolism (09101 to 09112) are used to define color coding of functions (see <a href="/kegg/kegg1c.html#functional">KEGG Color Codes</a>). <br><br> Efforts have been made to associate KO entries with pulication records reporting experimental evidence of functionally characterized sequence data as shown in the SEQUENCE field of the KO entry page. In many cases such data are not available for genes and proteins in the KEGG organisms of completely sequenced genomes. Thus, the addendum (ag) category was introduced in the <a href="/kegg/genes.html">GENES database</a> enabling functionally characterized individual protein sequences to be included in KEGG. As a byproduct of these efforts, sequence data have also been associated with EC numbers in <a href="/kegg/annotation/enzyme.html">Enzyme Nomenclature</a>. </div> <hr class="frame4"> <h4 class="txt4">Genome Annotation in KEGG</h4> <div class="indent"> Genome annotation in KEGG contains two unique aspects, KO assignment and KEGG mapping, as summarized below. <br><br> <b class="txt4">KO assignment</b> <ul> <li>Molecular functions are stored in the KO (KEGG Orthology) database containing orthologs of experimentally characterized genes/proteins.</li> <li>Genome annotation in KEGG is to assign KO identifiers (or K numbers) to individual genes in the genome, rather than giving text description of functions.</li> </ul> <b class="txt4">KEGG mapping</b> <ul> <li>Cellular and organism-level functions are stored in the PATHWAY, BRITE and MODULE databases in terms of the molecular networks, which are all created as networks of K number nodes.</li> <li>The KO assignment procedure converts a gene set in the genome to a K number set and leads to automatic reconstruction of KEGG pathways and other networks by the process called KEGG mapping, enabling interpretation of high-level functions.</li> </ul> </div> <hr class="frame4"> <h4 class="txt4" id="tool">KO Assignment Tools</h4> <div class="indent"> The basic tool for the internal annotation procedure of assigning KOs in the GENES database has been the KOALA (KEGG Orthology And Links Annotation) program. It processes GFIT tables generated from the <a href="/kegg/genes.html#ssdb">SSDB database</a> of SSEARCH computation results for all pairwise genome comparisons and presents most appropriate KOs to be assigned. The previous version of the KOALA algorithm was based on a weighted sum of SW (Smith-Waterman) scores, but it was too complicated to refine for better assignments. The current version of the newkoala algorithm is much simpler and has introduced a penalty of the sequence length difference for safer predictions. The measure of similarity between two sequences is defined by a modified identity: <div class="indent2"> identity * min(1, overlap*2/(aalen1+aalen2)) </div> where "identity" is the identity score given by SSEARCH, "overlap" is the alignment length, aalen1 and aalen2 are the sequence lengths being compared. This new KOALA program is used to automatically assign and update KOs, currently, four times a week. <br><br> In addition, there are two tools for manual annotations based on GFIT tables. One is the KoAnn (KO Annotation) tool for examining the entire set of annotated genes for a given KO, and the other is the Check GN tool for checking the consistency of the entire GENES annotation. The consistency check is performed every night presenting additional candidates and possible misannotations for human intervention. <br><br> Since the newkoala algorithm uses the identity score, it can readily be applied not only to SSEARCH, but also to other programs. <a href="https://www.kegg.jp/blastkoala/">BlastKOALA</a> is a web server for automatic KO assignment now using the newkoala algorithm for BLAST search against a limited set of GENES data. BlastKOALA is also used internally for initial annotation of new genomes, before SSDB computation and GFIT table generation are completed. <div class="indent2"> <div class="frame4"> <table> <tr> <td></td> <td>KOALA</td> <td>BlastKOALA</td> </tr> <tr> <td>Purpose</td> <td>Internal GENES annotation</td> <td>Outside service of genome annotation</td> </tr> <tr> <td>Search program</td> <td>SSEARCH</td> <td>BLASTP</td> </tr> <tr> <td>Scoring</td> <td>newkoala algorithm<br>(using SSEARCH identity scores)</td> <td>newkoala algorithm<br>(using BLASTP identity scores)</td> </tr> <tr> <td>Database</td> <td>Entire GENES database sequences</td> <td>KEGG Reference genomes and<br>functionally characterized seuences<br>linked from KO references</td> </tr> </table> </div> </div> <br> <b class="txt4">Reference</b> <ol> <li>Kanehisa, M., Sato, Y., Kawashima, M., Furumichi, M., and Tanabe, M.; KEGG as a reference resource for gene and protein annotation. Nucleic Acids Res. 44, D457-D462 (2016). [<a href="https://pubmed.ncbi.nlm.nih.gov/26476454">pubmed</a>]</li> <li>Kanehisa, M., Sato, Y., and Morishima, K.; BlastKOALA and GhostKOALA: KEGG tools for functional characterization of genome and metagenome sequences. J. Mol. Biol. 428, 726-731 (2016). [<a href="https://pubmed.ncbi.nlm.nih.gov/26585406">pubmed</a>]</li> </ol> </div> <hr class="frame4"> <i>Last updated: January 1, 2025</i> </div> <!-- end --> </div> </body> </html>