Tables |
phylotree |
phylotree_pub |
phylotreeprop |
phylonode |
phylonode_dbxref |
phylonode_pub |
phylonode_organism |
phylonodeprop |
phylonode_relationship |
phylotree | Top |
Field Name | Data Type | Size | Default Value | Other | Foreign Key |
---|---|---|---|---|---|
phylotree_id | integer | 20 | PRIMARY KEY, UNIQUE, NOT NULL | ||
dbxref_id | integer | 20 | NOT NULL | dbxref.dbxref_id | |
name | varchar | 255 | NULL | ||
type_id | integer | 20 | Type: protein, nucleotide, taxonomy, for example. The type should be any SO type, or "taxonomy". | cvterm.cvterm_id | |
analysis_id | integer | 20 | NULL | analysis.analysis_id | |
comment | text | 64000 | NULL |
Name | Fields |
---|---|
phylotree_idx1 | phylotree_id |
Type | Fields |
---|---|
NOT NULL | phylotree_id |
NOT NULL | dbxref_id |
FOREIGN KEY | dbxref_id |
FOREIGN KEY | type_id |
FOREIGN KEY | analysis_id |
UNIQUE | phylotree_id |
phylotree_pub | Top |
Field Name | Data Type | Size | Default Value | Other | Foreign Key |
---|---|---|---|---|---|
phylotree_pub_id | integer | 20 | PRIMARY KEY, NOT NULL | ||
phylotree_id | integer | 20 | UNIQUE, NOT NULL | phylotree.phylotree_id | |
pub_id | integer | 20 | UNIQUE, NOT NULL | pub.pub_id |
Name | Fields |
---|---|
phylotree_pub_idx1 | phylotree_id |
phylotree_pub_idx2 | pub_id |
Type | Fields |
---|---|
NOT NULL | phylotree_pub_id |
NOT NULL | phylotree_id |
FOREIGN KEY | phylotree_id |
NOT NULL | pub_id |
FOREIGN KEY | pub_id |
UNIQUE | phylotree_id, pub_id |
phylotreeprop | Top |
Field Name | Data Type | Size | Default Value | Other | Foreign Key |
---|---|---|---|---|---|
phylotreeprop_id | integer | 20 | PRIMARY KEY, NOT NULL | ||
phylotree_id | integer | 20 | UNIQUE, NOT NULL | phylotree.phylotree_id | |
type_id | integer | 20 | UNIQUE, NOT NULL, The name of the property/slot is a cvterm. The meaning of the property is defined in that cvterm. | cvterm.cvterm_id | |
value | text | 64000 | NULL | The value of the property, represented as text. Numeric values are converted to their text representation. This is less efficient than using native database types, but is easier to query. | |
rank | integer | 10 | 0 | UNIQUE, NOT NULL, Property-Value ordering. Any phylotree can have multiple values for any particular property type these are ordered in a list using rank, counting from zero. For properties that are single-valued rather than multi-valued, the default 0 value should be used |
Name | Fields |
---|---|
phylotreeprop_idx1 | phylotree_id |
phylotreeprop_idx2 | type_id |
Type | Fields |
---|---|
NOT NULL | phylotreeprop_id |
NOT NULL | phylotree_id |
NOT NULL | type_id |
NOT NULL | rank |
FOREIGN KEY | phylotree_id |
FOREIGN KEY | type_id |
UNIQUE | phylotree_id, type_id, rank |
phylonode | Top |
Field Name | Data Type | Size | Default Value | Other | Foreign Key |
---|---|---|---|---|---|
phylonode_id | integer | 20 | PRIMARY KEY, NOT NULL | ||
phylotree_id | integer | 20 | UNIQUE, NOT NULL | phylotree.phylotree_id | |
parent_phylonode_id | integer | 20 | NULL | Root phylonode can have null parent_phylonode_id value. | phylonode.phylonode_id |
left_idx | integer | 10 | UNIQUE, NOT NULL | ||
right_idx | integer | 10 | UNIQUE, NOT NULL | ||
type_id | integer | 20 | Type: e.g. root, interior, leaf. | cvterm.cvterm_id | |
feature_id | integer | 20 | Phylonodes can have optional features attached to them e.g. a protein or nucleotide sequence usually attached to a leaf of the phylotree for non-leaf nodes, the feature may be a feature that is an instance of SO:match; this feature is the alignment of all leaf features beneath it. | feature.feature_id | |
label | varchar | 255 | NULL | ||
distance | float | 20 | NULL |
Name | Fields |
---|---|
phylonode_parent_phylonode_id_idx | parent_phylonode_id |
Type | Fields |
---|---|
NOT NULL | phylonode_id |
NOT NULL | phylotree_id |
FOREIGN KEY | phylotree_id |
FOREIGN KEY | parent_phylonode_id |
NOT NULL | left_idx |
NOT NULL | right_idx |
FOREIGN KEY | type_id |
FOREIGN KEY | feature_id |
UNIQUE | phylotree_id, left_idx |
UNIQUE | phylotree_id, right_idx |
phylonode_dbxref | Top |
Field Name | Data Type | Size | Default Value | Other | Foreign Key |
---|---|---|---|---|---|
phylonode_dbxref_id | integer | 20 | PRIMARY KEY, NOT NULL | ||
phylonode_id | integer | 20 | UNIQUE, NOT NULL | phylonode.phylonode_id | |
dbxref_id | integer | 20 | UNIQUE, NOT NULL | dbxref.dbxref_id |
Name | Fields |
---|---|
phylonode_dbxref_idx1 | phylonode_id |
phylonode_dbxref_idx2 | dbxref_id |
Type | Fields |
---|---|
NOT NULL | phylonode_dbxref_id |
NOT NULL | phylonode_id |
FOREIGN KEY | phylonode_id |
NOT NULL | dbxref_id |
FOREIGN KEY | dbxref_id |
UNIQUE | phylonode_id, dbxref_id |
phylonode_pub | Top |
Field Name | Data Type | Size | Default Value | Other | Foreign Key |
---|---|---|---|---|---|
phylonode_pub_id | integer | 20 | PRIMARY KEY, NOT NULL | ||
phylonode_id | integer | 20 | UNIQUE, NOT NULL | phylonode.phylonode_id | |
pub_id | integer | 20 | UNIQUE, NOT NULL | pub.pub_id |
Name | Fields |
---|---|
phylonode_pub_idx1 | phylonode_id |
phylonode_pub_idx2 | pub_id |
Type | Fields |
---|---|
NOT NULL | phylonode_pub_id |
NOT NULL | phylonode_id |
FOREIGN KEY | phylonode_id |
NOT NULL | pub_id |
FOREIGN KEY | pub_id |
UNIQUE | phylonode_id, pub_id |
phylonode_organism | Top |
Field Name | Data Type | Size | Default Value | Other | Foreign Key |
---|---|---|---|---|---|
phylonode_organism_id | integer | 20 | PRIMARY KEY, NOT NULL | ||
phylonode_id | integer | 20 | UNIQUE, NOT NULL, One phylonode cannot refer to >1 organism. | phylonode.phylonode_id | |
organism_id | integer | 20 | NOT NULL | organism.organism_id |
Name | Fields |
---|---|
phylonode_organism_idx1 | phylonode_id |
phylonode_organism_idx2 | organism_id |
Type | Fields |
---|---|
NOT NULL | phylonode_organism_id |
NOT NULL | phylonode_id |
FOREIGN KEY | phylonode_id |
NOT NULL | organism_id |
FOREIGN KEY | organism_id |
UNIQUE | phylonode_id |
phylonodeprop | Top |
Field Name | Data Type | Size | Default Value | Other | Foreign Key |
---|---|---|---|---|---|
phylonodeprop_id | integer | 20 | PRIMARY KEY, NOT NULL | ||
phylonode_id | integer | 20 | UNIQUE, NOT NULL | phylonode.phylonode_id | |
type_id | integer | 20 | UNIQUE, NOT NULL, type_id could designate phylonode hierarchy relationships, for example: species taxonomy (kingdom, order, family, genus, species), "ortholog/paralog", "fold/superfold", etc. | cvterm.cvterm_id | |
value | text | 64000 | UNIQUE, NOT NULL | ||
rank | integer | 10 | 0 | UNIQUE, NOT NULL, It is not clear how useful the rank concept is here, leave it in for now. |
Name | Fields |
---|---|
phylonodeprop_idx1 | phylonode_id |
phylonodeprop_idx2 | type_id |
Type | Fields |
---|---|
NOT NULL | phylonodeprop_id |
NOT NULL | phylonode_id |
FOREIGN KEY | phylonode_id |
NOT NULL | type_id |
FOREIGN KEY | type_id |
NOT NULL | value |
NOT NULL | rank |
UNIQUE | phylonode_id, type_id, value, rank |
phylonode_relationship | Top |
Field Name | Data Type | Size | Default Value | Other | Foreign Key |
---|---|---|---|---|---|
phylonode_relationship_id | integer | 20 | PRIMARY KEY, NOT NULL | ||
subject_id | integer | 20 | UNIQUE, NOT NULL | phylonode.phylonode_id | |
object_id | integer | 20 | UNIQUE, NOT NULL | phylonode.phylonode_id | |
type_id | integer | 20 | UNIQUE, NOT NULL | cvterm.cvterm_id | |
rank | integer | 10 | |||
phylotree_id | integer | 20 | NOT NULL | phylotree.phylotree_id |
Name | Fields |
---|---|
phylonode_relationship_idx1 | subject_id |
phylonode_relationship_idx2 | object_id |
phylonode_relationship_idx3 | type_id |
Type | Fields |
---|---|
NOT NULL | phylonode_relationship_id |
NOT NULL | subject_id |
FOREIGN KEY | subject_id |
NOT NULL | object_id |
FOREIGN KEY | object_id |
NOT NULL | type_id |
FOREIGN KEY | type_id |
NOT NULL | phylotree_id |
FOREIGN KEY | phylotree_id |
UNIQUE | subject_id, object_id, type_id |