Scroll to navigation

GO::Model::Relationship(3pm) User Contributed Perl Documentation GO::Model::Relationship(3pm)


  GO::Model::Relationship - relationship between two terms



a relationship between two GO::Model::Terms

relationships can be thought of as statements or sentences of the form


for example,

  "dog" IS_A "animal"
  "G-Protein coupled receptor" IS_A "transmembrane receptor"

Statements have a subject (i.e. the subject of the sentence/statement), a predicate/relationship-type and an object (i.e. the object of the sentence/statement)

Relationships can also be seen as arcs in a directed graph, with the subject being equivalent to the child, and the object equivalent to the parent. The arc is labeled with the predicate/relationship-type.

A Relationship object currently does not contain an actual pointer to a GO::Model::Term object. Instead it stores the ID of that term. This is intended to be used in conjunction with the Graph object, or with the database.


 Title   : subject_acc
 Usage   : $obj->subject_acc($newid)
 Usage   : $currid = $obj->subject_acc()
 Synonyms: subj_acc, acc2, child_acc
 Function: gets or sets the identifier for the child/subject term
 Example : 
 Returns : value of subject_acc (string)
 Args    : on set, new value (string)

All Relationships can be thought of "subject-predicate-object" statements. The statement is *about* the subject, and states something about the relationship *to* the object.

For example, the if we have a Relationship:

    | [part_of]
 cell nucleus

This is a statement about cell nuclei in general, so "cell nucleus" is the subject (sometimes called the child node). The Relationship tells us that all cell nuclei are part_of some cell, so the object of the relationship (sometimes called the parent node) is "cell"


 Title   : object_acc
 Usage   : $obj->object_acc($newid)
 Usage   : $currid = $obj->object_acc()
 Synonyms: obj_acc, acc1, parent_acc
 Function: gets or sets the identifier for the parent/object term
 Example : 
 Returns : value of object_acc (string)
 Args    : on set, new value (string)
 See Also: subj_acc


 Title   : type
 Usage   : $obj->type($newval)
 Usage   : $currval = $obj->type()
 Function: gets or sets the relationship type (a string)
 Example : 
 Returns : value of type (string)
 Args    : on set, new value (string)

Currently any string is allowed; in future the type string may be constrained to come from a controlled vocabulary of relationship types

2021-01-09 perl v5.32.0