Guidelines for database cross references

From GO Wiki
Jump to navigation Jump to search

We have two types of cross-references in the ontology: (1) Definition database cross-references and (2) General database cross-references.

Database cross-references

General database cross-references are links to external resources. Main resources GO links to are:

  • Cross references relevant for any term
    • Wikipedia
  • Cross references specific for Molecular Function terms
    • RHEA for enzymes (preferred). Note that RHEAs IDs that are not yet public cannot be used in definition cross-references.
    • EC
    • KEGG reaction
    • MetaCyc reaction
    • TCDB (for transporters)
  • Cross references specific for Biological Process terms
    • MetaCyc pathway
    • KEGG pathway


  • EC: GO editors can use provisional ECs. Preliminary ECs have a letter in the last section of the EC number, for e.g., 3.5.1.n3. Preliminary EC numbers can be sued as cross references and definition cross references, since they are unique like the complete ones. When they are turned into real EC numbers they are "transferred", so the new ID is traceable.
  • KEGG
  • MetaCyc
  • Reactome
  • RHEA: GO editors can use new (not yet public) RHEA IDs as database cross-references. These are filtered out from the public version of the ontology until they are available. Note that they cannot be used as definition xrefs.
  • TCDB for transporters (abbreviated as 'TC')

Obsolete database cross-references and obsolete GO terms

  • If a cross reference is deprecated in the source database (for example, a deleted entry in EC, that cross-reference should be removed from GO.
  • If a GO term is obsoleted has a cross-reference to a valid external database entry, then the cross-reference is kept on the obsolete GO term. This situation arises when a term is out of scope for GO but correct in the external database.

How to

Adding a database cross-reference

  • To add a cross-reference:
    1.  In Protege, navigate to the term to which you wish to add to a database cross references'.
    2.  In the Annotation window on the right, click on the + to the right of Annotations at the very top of the window.
    3.  In the pop-up window that appears, select 'database_cross_reference' in the left hand window, and 'Literal' tab on the right side.
    4. Add cross reference ID and select 'xsd:string' as Datatype.
    5. Click on OK to save your edits.
    6. See Ontology_Editors_Daily_Workflow for commit, push and merge instructions.

Adding database cross-reference types

Database cross-references may have a type (optional). Note that these do not apply to definition cross-references. The type needs to be added to have multiple cross-references from the same source.

  • The db xref types are derived from the W3.org standards. The types of skos:mappingRelation used by GO are: exactMatch, broadMatch, narrowMatch and relatedMatch.
  • To edit a cross-reference type:
    • Click on the @ sign next to the cross-reference.
    • Click on the + sign on the right to add an annotation.
    • Select source in the left-hand menu, and Literal in the right-hand menu. Add the cross-reference type:
      • skos:exactMatch: GO term meaning is exactly the same as the cross-referenced term; single EXACT or RELATED match allowed per term for any xref type
      • skos:broadMatch: GO term meaning is narrower than that of the cross-referenced term. More than one BROAD xref is allowed per term, and BROAD xref can be mapped to multiple terms; need to add this to have multiple RHEA cross refs
      • skos:narrowMatch: GO term meaning is more general than that of the cross-referenced term. More than one NARROW xref is allowed per term, but a given NARROW xref can only be mapped to a single term
      • skos:relatedMatch: GO term meaning is not exactly the same as the cross-referenced term, but the best match; single EXACT or RELATED match allowed per term for any xref type
  • Most Rhea cross-references are skos:exactMatch; but exceptions are allowed
  • Most EC and MetaCyc cross-references are skos:narrowMatch by default but can be upgraded to skos:exactMatch if there is a 1:1 correspondence.
  • Only one skos:exactMatch for each cross-reference source is allowed.
  • See Ontology_Editors_Daily_Workflow for commit, push and merge instructions.

Review Status

Last reviewed: March 13, 2024

Reviewed by: Pascale Gaudet

Back to: Editing the Ontology