Why does AmiGO display annotations to term X but these annotations aren’t in the GAF file?
Simply put, AmiGO displays annotations made to subclasses by default, while the GAF only contains direct annotations. So an AmiGO search for GO:0004672 protein kinase activity might also list annotations to terms like cyclin-dependent protein serine/ threonine kinase activity or even RNA polymerase II CTD heptapeptide repeat kinase activity:
More specifically, AmiGO doesn’t just display subclasses, it uses closure over multiple edge types- part_of, is_a, occurs_in and regulates - to group annotations. In order to modify the results in an AmiGO search, use the “GO class (direct)” filter. This will limit the results to only what is annotated directly to your GO term.
Try it out now! Start at the AmiGO Ontology Search.