Relations Ontology

From WormBaseWiki
Jump to: navigation, search


  • The Relations Ontology is used in WormBase to describe relations between entities in the database, e.g. genes and GO terms.
  • The Relations Ontology was first incorporated into WormBase with the WS267 release.

?RO_term Model

 ?RO_term Name UNIQUE ?Text
          Status UNIQUE Valid
          Alt_id ?Text
          Definition UNIQUE ?Text
          Synonym Broad ?Text
                  Exact ?Text
                  Narrow ?Text
                  Related ?Text
          Child Instance ?RO_term XREF Instance_of
          Parent Instance_of ?RO_term XREF Instance
          Attribute_of GO_annotation ?GO_annotation XREF Annotation_relation
                       Not_GO_annotation ?GO_annotation XREF Annotation_relation_not 
          Index Ancestor ?RO_term XREF Descendant
                Descendant ?RO_term XREF Ancestor
          Version UNIQUE Text

Parsing Script for ?RO_term Model

  • The parsing script to generate the ro_terms.ace file is on tazendra here:
    • /home/acedb/kimberly/citace_upload/ro/ontology2ace/
  • Output file:
    • ro_terms.ace
  • There are two types of entries in ro.obo
    • Term
    • Typedef
  • At the moment, we include Term and Typedef entries according to the following criteria:
    • Include term where id namespace = BFO, RO, lower case text with no namespace: (e.g. results_in_acquisition_of_features_of)
    • Skip term where id namespace = CARO, CL, ENVO, GO, ObsoleteClass, PATO
  • Note that the terms we skip are used in the OWL representation of the Relations Ontology, but not in the OBO representation
    • For the purposes of how the Relations Ontology will initially be used in WormBase, this filtering step should be fine
  • Running the script:
  1. In the /home/acedb/kimberly/citace_upload/ro/ontology2ace directory on tazendra, use the wget command and the above URL to download the ro.obo input file
  2. Greek characters used in some of the definitions for the RO terms (as an example, see id: BFO:0000063 name: precedes) need to be converted to text that ACeDB can render by doing the following (note that we tried to incorporate this as part of the script, but couldn't figure out a way to correctly recognize these characters programtically):
  • In one terminal window, open the ro.obo file in a text editor
  • In a second terminal window, open the convertGreekVim file in a text editor
  • Globally replace the lower case alpha and omega symbols in ro.obo by copying and pasting the appropriate global replacement commands from convertGreekVim, e.g. :%s/α/alpha/g
    • Sanity check:
      • 26 substitutions of lower-case alpha on 10 lines
      • 24 substitutions of lower-case omega on 9 lines
  • Once the Greek characters have been replaced, run the parsing script and change the name of the output file from ro_terms.ace to ro_terms_WSnnn.ace