[Bio] / FigTutorial / SEED_functions.html Repository:
ViewVC logotype

View of /FigTutorial/SEED_functions.html

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.3 - (download) (as text) (annotate)
Wed Dec 7 19:38:22 2005 UTC (13 years, 11 months ago) by golsen
Branch: MAIN
CVS Tags: rast_rel_2014_0912, rast_rel_2008_06_18, rast_rel_2008_06_16, rast_rel_2008_07_21, rast_rel_2010_0928, rast_2008_0924, rast_rel_2008_09_30, caBIG-13Feb06-00, rast_rel_2010_0526, rast_rel_2014_0729, rast_rel_2009_05_18, caBIG-05Apr06-00, rast_rel_2009_0925, rast_rel_2010_1206, rast_rel_2010_0118, rast_rel_2009_02_05, rast_rel_2011_0119, rast_rel_2008_12_18, rast_rel_2008_10_09, rast_release_2008_09_29, rast_rel_2008_04_23, rast_rel_2008_08_07, rast_rel_2009_07_09, rast_rel_2010_0827, myrast_33, rast_rel_2011_0928, rast_rel_2008_09_29, rast_rel_2008_10_29, rast_rel_2009_03_26, rast_rel_2008_11_24, HEAD
Changes since 1.2: +1 -1 lines
Don't mean to be pedantic, but I figured that I might as well add newlines
at the end of text files that lack one.  Identified with a script:

/bin/sh -O extglob -c 'for f in */*.@(c|css|html|js|pl|pm|py|TXT); do perl -e '"'"'while(<>) {$s = ! /\n$/} exit $s'"'"' $f || echo $f; done'

fixed with a script:

/bin/sh
for file in _list_; do echo "" >> $file; done

<h1>What Is Meant by a SEED Function?</h1>

A <i>functional role</i> is a basic, undefined concept meaning roughly
"an atomic role that could be played by a gene".  Sorry.
<p>
A <i>function</i> or alternatively a <i>gene function</i> expresses
the connection between a PEG and one or more functional roles.  In
addition, we have grafted on the ability to attach key-value pairs to
a function; these are thought of as attributes of the gene.
<p>
In this document, we formulate a set of conventions that we will try
to use consistently.  In some cases, we have historically already
violated these conventions, but not too seriously (we hope).
<br>
<h2>The Case of a Multi-domain, Multifunctional Gene</h2>
When a gene has a sequence of domains that play distinct functional
roles, we express the function of the gene as
<br> <pre>
     Role1 / Role2 / ... / RoleN
</pre>
<br>
That is, we use " / " as an operator separating distinct functional
roles.  Note that the slash must have spaces on both sides.  This
seems to be a common usage that we have noticed in both Swissprot and
UniProt functions.
<br>
<h2>The Case of a Single Domain Playing Multiple Roles</h2>
In many cases we have a gene that has a broad specificity. and we
think of the gene as multifunctional.  In this case, we use
<br> <pre>
     Role1 @ Role2 @ ... @ RoleN
</pre>
<br>
That is, we use " @ " as an operator separating distinct functional
roles.  Note that the "@" must have spaces on both sides.
<br>
<h2>The Case of an Ambiguous Function</h2>
Consider a gene that is believed to be either a malate dehydrogenase
or a lactate dehydrogenase, or maybe both.  In this case we need to
express <i>this gene is one of these functions, but I cannot
disambiguate them</i>.  To express this, we use
<br> <pre>
     Role1; Role2; ...; RoleN
</pre>
<br>
Note that we require a space following the semi-colon, but not preceeding
it.  The distinction between the use of " @ " and "; " is that with
the former we are asserting the presence of all of the functional
roles; with the semicolon we are simply saying that any of the
functional roles may or may not be present (a much weaker notion).

<h2>Attaching Key-Value Pairs in the Expression of Function</h2>

Consider the case in which we have a gene that includes an intein.  To
be concrete, let's talk about
<br> <pre>
     Translation initiation factor B ! intein-containing
</pre>
<br>
Using " ! " allows one to attach a key-value pair to the feature.
When discussing boolean key-value pairs, we allow ommision of the
value (thus, <i>intein-containing</i> is thought of as a key
expressing a boolean condition; when it is used, it means "this gene
is <i>intein-containing</i>".  Technically, when the value is omitted,
it defaults to 1.
When you actually want to append a key-value pair with a value other
than 1, use a " ^ " to separate the key and value.  Thus,
<br> <pre>
     Translation initiation factor C ! intein-containing ^ 3
</pre>
<br>
attaches the key-value pair <i>(intein-containing,3)</i> to the gene
for which the function is being asserted.  The SEED includes other
mechanisms for attaching key-value pairs to features (adding key-value
pairs to files in the <i>Attributes</i> subdirectory), but these are not easily
used by annotators; they are for making "batch" assertions.
<p>
This mechanism is used solely as a convenience for inputting key-value
pairs.  When the function of the gene is displayed, it will not
include the list of pairs.  By convention, the <i>protein page</i>
used for displaying genes gives the attached key-value pairs as a
separate part of the display.  These key-value pairs can be used to
express attributes like essentiality, virulence, expression values,
and so forth.
<p>
<b>Technical Note: </b>
the assertion of key-value pairs in gene functions overrides the
"batch sources".  That is, a key has at most one value for a given
PEG, and that value will come from the assigned_functions file, if
present.  Finally, the use of
<br> <pre>
     Role ! K ^
</pre>
<br>
has the effect of removing the key-value pair with a key of <i>K</i>.

MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3