$self->relations->add_type( %args );
}
+sub get_relationship_type {
+ my( $self, $name ) = @_;
+ return $self->relations->has_type( $name )
+ ? $self->relations->type( $name ) : undef;
+}
+
### Reading construct/destruct functions
sub add_reading {
}
throw( "Cannot duplicate a meta-reading" )
if $r->is_meta;
- my $ordered_req_wits = join( ',', sort @wits );
- my $ordered_rdg_wits = join( ',', $r->witnesses );
throw( "Cannot join all witnesses to the new reading" )
- if $ordered_req_wits eq $ordered_rdg_wits;
+ if scalar( @wits ) == scalar( $r->witnesses );
# Get all the reading attributes and duplicate them.
my $rmeta = Text::Tradition::Collation::Reading->meta;
the text to have different meanings. Possible values are 0 (no), 1 (slightly),
and >1 (yes).
-=item * non_correctable - (Optional) True if the reading would not have been
-corrected independently.
+=item * a_derivable_from_b - (Optional) True if the first reading is likely to
+
+=item * b_derivable_from_a - (Optional) True if the second reading is likely to
=item * non_independent - (Optional) True if the variant is unlikely to have
occurred independently in unrelated witnesses.
=head2 annotation
-=head2 non_correctable
+=head2 a_derivable_from_b
+
+=head2 b_derivable_from_a
=head2 non_independent
default => 0,
);
-has 'non_correctable' => (
+has 'a_derivable_from_b' => (
is => 'ro',
isa => 'Bool',
);
-
+
+has 'b_derivable_from_a' => (
+ is => 'ro',
+ isa => 'Bool',
+ );
+
has 'non_independent' => (
is => 'ro',
isa => 'Bool',