—BEGIN {
$Bio::Chado::Schema::Result::Sequence::FeatureRelationship::AUTHORITY
=
'cpan:RBUELS'
;
}
BEGIN {
$Bio::Chado::Schema::Result::Sequence::FeatureRelationship::VERSION
=
'0.08001'
;
# TRIAL
}
# Created by DBIx::Class::Schema::Loader
# DO NOT MODIFY THE FIRST PART OF THIS FILE
use
strict;
use
warnings;
__PACKAGE__->table(
"feature_relationship"
);
__PACKAGE__->add_columns(
"feature_relationship_id"
,
{
data_type
=>
"integer"
,
is_auto_increment
=> 1,
is_nullable
=> 0,
sequence
=>
"feature_relationship_feature_relationship_id_seq"
,
},
"subject_id"
,
{
data_type
=>
"integer"
,
is_foreign_key
=> 1,
is_nullable
=> 0 },
"object_id"
,
{
data_type
=>
"integer"
,
is_foreign_key
=> 1,
is_nullable
=> 0 },
"type_id"
,
{
data_type
=>
"integer"
,
is_foreign_key
=> 1,
is_nullable
=> 0 },
"value"
,
{
data_type
=>
"text"
,
is_nullable
=> 1 },
"rank"
,
{
data_type
=>
"integer"
,
default_value
=> 0,
is_nullable
=> 0 },
);
__PACKAGE__->set_primary_key(
"feature_relationship_id"
);
__PACKAGE__->add_unique_constraint(
"feature_relationship_c1"
,
[
"subject_id"
,
"object_id"
,
"type_id"
,
"rank"
],
);
__PACKAGE__->belongs_to(
"subject"
,
"Bio::Chado::Schema::Result::Sequence::Feature"
,
{
feature_id
=>
"subject_id"
},
{
cascade_copy
=> 0,
cascade_delete
=> 0,
is_deferrable
=> 1,
on_delete
=>
"CASCADE"
,
on_update
=>
"CASCADE"
,
},
);
__PACKAGE__->belongs_to(
"object"
,
"Bio::Chado::Schema::Result::Sequence::Feature"
,
{
feature_id
=>
"object_id"
},
{
cascade_copy
=> 0,
cascade_delete
=> 0,
is_deferrable
=> 1,
on_delete
=>
"CASCADE"
,
on_update
=>
"CASCADE"
,
},
);
__PACKAGE__->belongs_to(
"type"
,
"Bio::Chado::Schema::Result::Cv::Cvterm"
,
{
cvterm_id
=>
"type_id"
},
{
cascade_copy
=> 0,
cascade_delete
=> 0,
is_deferrable
=> 1,
on_delete
=>
"CASCADE"
,
on_update
=>
"CASCADE"
,
},
);
__PACKAGE__->has_many(
"feature_relationshipprops"
,
"Bio::Chado::Schema::Result::Sequence::FeatureRelationshipprop"
,
{
"foreign.feature_relationship_id"
=>
"self.feature_relationship_id"
,
},
{
cascade_copy
=> 0,
cascade_delete
=> 0 },
);
__PACKAGE__->has_many(
"feature_relationship_pubs"
,
"Bio::Chado::Schema::Result::Sequence::FeatureRelationshipPub"
,
{
"foreign.feature_relationship_id"
=>
"self.feature_relationship_id"
,
},
{
cascade_copy
=> 0,
cascade_delete
=> 0 },
);
# Created by DBIx::Class::Schema::Loader v0.06001 @ 2010-04-16 14:33:36
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:Ugt3dgZnJcE7tSQpFbDVoA
# You can replace this text with custom content, and it will be preserved on regeneration
1;
__END__
=pod
=encoding utf-8
=head1 NAME
Bio::Chado::Schema::Result::Sequence::FeatureRelationship
=head1 DESCRIPTION
Features can be arranged in
graphs, e.g. "exon part_of transcript part_of gene"; If type is
thought of as a verb, the each arc or edge makes a statement
[Subject Verb Object]. The object can also be thought of as parent
(containing feature), and subject as child (contained feature or
subfeature). We include the relationship rank/order, because even
though most of the time we can order things implicitly by sequence
coordinates, we can not always do this - e.g. transpliced genes. It is also
useful for quickly getting implicit introns.
=head1 NAME
Bio::Chado::Schema::Result::Sequence::FeatureRelationship
=head1 ACCESSORS
=head2 feature_relationship_id
data_type: 'integer'
is_auto_increment: 1
is_nullable: 0
sequence: 'feature_relationship_feature_relationship_id_seq'
=head2 subject_id
data_type: 'integer'
is_foreign_key: 1
is_nullable: 0
The subject of the subj-predicate-obj sentence. This is typically the subfeature.
=head2 object_id
data_type: 'integer'
is_foreign_key: 1
is_nullable: 0
The object of the subj-predicate-obj sentence. This is typically the container feature.
=head2 type_id
data_type: 'integer'
is_foreign_key: 1
is_nullable: 0
Relationship type between subject and object. This is a cvterm, typically from the OBO relationship ontology, although other relationship types are allowed. The most common relationship type is OBO_REL:part_of. Valid relationship types are constrained by the Sequence Ontology.
=head2 value
data_type: 'text'
is_nullable: 1
Additional notes or comments.
=head2 rank
data_type: 'integer'
default_value: 0
is_nullable: 0
The ordering of subject features with respect to the object feature may be important (for example, exon ordering on a transcript - not always derivable if you take trans spliced genes into consideration). Rank is used to order these; starts from zero.
=head1 RELATIONS
=head2 subject
Type: belongs_to
Related object: L<Bio::Chado::Schema::Result::Sequence::Feature>
=head2 object
Type: belongs_to
Related object: L<Bio::Chado::Schema::Result::Sequence::Feature>
=head2 type
Type: belongs_to
Related object: L<Bio::Chado::Schema::Result::Cv::Cvterm>
=head2 feature_relationshipprops
Type: has_many
Related object: L<Bio::Chado::Schema::Result::Sequence::FeatureRelationshipprop>
=head2 feature_relationship_pubs
Type: has_many
Related object: L<Bio::Chado::Schema::Result::Sequence::FeatureRelationshipPub>
=head1 AUTHOR
Robert Buels <rbuels@cpan.org>
=head1 COPYRIGHT AND LICENSE
This software is copyright (c) 2011 by Robert Buels.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
=cut