Skip to main content

Table 1 The use of object-oriented concepts in the integration of the Gene Ontology into an object-oriented model. Object-oriented terms, their definitions, and corresponding mechanisms of incorporating GO terms into an object-oriented model are shown. A specific example from the manuscript is also given. GO, Gene Ontology; DAG, directed acyclic graph; OOM, object-oriented model

From: Integration of the Gene Ontology into an object-oriented architecture

Object-Oriented Term Object-Oriented Definition * Object-Oriented use of the GO Example
Class A class is a template from which object instances are created. It specifies the common characteristics that objects created from it will contain Classes are created from gene products whose characteristics are defined by the GO molecular function and cellular component terms The class Smad 2 is created based on the properties of the gene product Smad 2, which are defined by molecular functions such as "protein homodimerization' (GO:0042803) and 'ATP binding' (GO:0042301)
Object An instance of a class that contains unique properties Objects are created from the template classes, but may contain properties unique to a particular object Two different Smad 2 objects may be created, one of which is phosphorylated, and one which is not
Inheritance Relationships between classes, whereby a more specific class inherits all the properties and methods of the classes they belong to Relationships defined by 'is a' are generalizations in which child classes of the DAG inherit the properties of the parent class (if a child class has multiple parent classes, multiple inheritance applies) The cellular component 'plasma membrane' (GO:0005886) inherits the properties of the general class cellular component 'membrane' (GO:0016020)
Composition Certain objects may be assembled from collections of other objects 'part_of' relationships defined in the GO DAG are rendered as composition relationships in an OOM The 'membrane' (GO:0005623) and 'intracellular' (GO:0005622) space are part of the 'cell' (GO:0005623)
Polymorphism The ability of an object to interpret messages differently when received by different objects GO functions may change for different proteins and be given different input and output values The function 'protein homodimerization activity' (GO:0042803) in the context of SMAD2 accepts two SMAD2s and outputs a dimerized SMAD2, whereas in the context of TGF-beta receptor II it accepts two receptors and outputs a dimerized receptor
Encapsulation Hiding the state and implementation of an object The exact mechanism by which an object is created is hidden in an OOM The details involved in the translation (GO: 0043037) of Smad 2 are hidden, but a Smad 2 molecule is still created
  1. *[53]