Maintaining complete 'is_a' and 'part_of' trees in cellular component

The cellular component ontology is is_a complete, meaning that every term has a path to the root node which passes solely through is_a relationships. This should be preserved; the following guidelines should help maintain this structure.

Make sure the term has an is_a path to the root, i.e. there are is_a parent terms by at least one path all the way to 'cellular component'. Make sure the term has at least one part_of relation in its ancestry, to ensure that there are no part_of orphans. It does not need to be an immediate part_of parent, but every term has to be part_of something. So, for complex Y, this would be okay for example:

  • cell
    • [p] complex X
      • [i] complex Y
because complex Y is transitively part_of cell. Ensure that all logical is_a parents are added. So, for example, if your term is a protein complex, make sure it has the parent 'protein complex'. Or if your term, or one of its parents, is part_of cell, it will need to be is_a 'cell part', or have 'cell part' in its ancestry. Check none of the relations you create are redundant. You can check for this in OBO-Edit by using the reasoner, and then using the link filter [self] [self] [is redundant]. As an added check, a weekly job runs every Monday night (US West Coast time) to remove any redundant relationship.