Ontology meeting 2012-08-15

From GO Wiki
Jump to navigation Jump to search

30-minute meeting



  • Chris
  • Heiko
  • David
  • Harold
  • Jane
  • Becky
  • Judy
  • Tanya


  • Chris will get on to this right after this call. Before Tanya drives over to Berkeley to chase him up.

BFO 2.0

The new BFO 2.0 is up for discussion, and Alan would like our comments:


We need to consider how we would transition from the RO ids that we're currently using, and whether the part_of/has_part inverse solution (this has become rather complicated in BFO 2.0 because they decided to incorporate time and split into occurrent part_of/continuent part_of) works for us. Chris, you probably have thoughts on this.

  • Chris: we never want to expose the labels for users
  • Chris: We have to manage the split of part_of in GO. QuickGO, for example, hardcodes the part_of relationship so that would need careful rejigging.
  • Chris: Not completely comfortable with how BFO use 'time'.
  • Chris: In summary: urging a cautious approach. We'd have to give alot of advance warning to users.
  • Jane chatted to Alan at ICBO about this: it's in the discussion phase at the moment. They want a project like GO to start using it, so it propagates. Some groups are currently using an older release, which requires some ID re-mapping (bad ID management). We don't want to be the first, as it affects so many users.
  • Chris's suggestion is to have a union part_of relationship in RO: he has some work ahead to convince Alan that's the way to go.


We (Jane and Becky) keep hitting roles with the virus work. Annotators are keen to see these in function, as making process terms doesn't capture the whole picture.

Example 1: Holins

  • We have 'holin activity ; GO:0034290' in function (and two obsolete 'holin' terms).
  • Holins are phage proteins required for the first step in lysis: pemeabilizing the cytoplasmic (inner) membrane of a bacterial cell. They sit in the bacterial cell membrane until a certain time point (possibly determined by removal/inactivation of an antiholin) where they form a hole through the inner membrane. The hole either allows transport of a murein-degrading enzyme from the cytoplasm so it has access to the cell wall, or allows transport of ions to promote membrane depolarization.
  • Is being a hole a role? (currently under channel activity).

Example 2: Spanins

  • Spanins are phage proteins which span the two membranes of a bacterial host cell.
  • Spanins act at the third step in lysis to disrupt the outer membrane (OM) of a host cell. How exactly they cause the disruption is not known.

Example 3: Cytokinin (from response to xp file to ChEBI)

  • There are many examples in the response-to.obo file where the mapping is to a ChEBI class that is_a role. (hormone, toxin, nutrient, etc.) Do we remove these from the xp file? Also, there are some remnants of such cross products in the go_xp_chebi.obo file, for example, toxin transporter activity. We should deal with these in the same way. Is it time to begin coordinating with ChEBI on roles in earnest? Should GO be responsible for the roles that fall within our realm, ie biological processes?
  • Jane bought up the previous suggestion of splitting function into roles and activities. David is uncomfortable with this.
  • Holins can stay in GO, under channel activity because you know the mechanism by which they're acting. They should have a part_of relationship to a process term.
  • The trouble with spanins is that you don't know the mechanism by which they're acting, so Tanya pointed out that you should just be annotating to the CC (integral to membrane) and the BP (lysis by virus of host cell). Otherwise, how do you define the function term?
  • At this point we ran out of time, so will bump it to next week's agenda.

New Templates

Add a template for localization to? See:

Also more generally: establish a procedure for requesting new templates

I have added a category "new template" to the tracker. When evaluating these I propose the following steps:

  • is it expressible in OWL? If not, reject
  • will this be used for multiple terms or just a handful? If a handful, reject and add xps manually
  • does it require inferencing part_of parents? If so, this will be harder. Requires further discussion.
  • Evaluate existing logical definitions for pre-existing terms (if they exist)
    • create a separate xp file with only these logical definitions (can be filtered using obo-grep.pl)
    • manually inspect
    • are the logical definitions complete?
      • check in OE by loading GO + xps file. Do a search for all terms matching string pattern. Those not in bold lack defs. Add manually (or request obol parse if there are a lot)
    • check inferences using reasoner-diff
    • make changes to main ontology if required. rinse, repeat. until xps and go are in reasonably good shape
  • are the xps internal or external?
      • add xps directly into GO.
      • Make sure there is a Typedef stanza for any new relations introduced
      • for xps in the main GO, the Typedef must have an xref to a RO ID. Request from RO curator if not present
      • is external ontology CHEBI?
        • NO: create a new xps file like go_xp_chebi in the editors directory (obo for now). Coordinate with Heiko for TG configuration.
        • YES: at to go_xp_chebi
  • Final steps:
    • Create template (Heiko)
    • Test template (Heiko + editors)
    • Release template
  • We like this in principle. Chris just parsed the 'protein localization to' terms. Becky noted that under protein localization we have localization IN, localization TO, localization AT. We need to think about the best way to phrase these. We probably mean the same thing for all (E.g. localization TO the organelle OR localization within the organelle once the protein is there). Will come back to this next week.

Data version tag and go_ext

See email to Jim

OBO Round Trip

* Note from Tanya to remember to run OBO round trip (now Heiko has fixed it- thank you) to sort the go_xp_chebi file if you make a large set of edits. If you're just inserting one stanza, and you're sure you've put the ID in the correct place then it's probably not necessary to run the script.