avoid collating meta readings
[scpubgit/stemmatology.git] / lib / Text / Tradition / Parser / Tabular.pm
index 8783ff1..b8e3439 100644 (file)
@@ -108,6 +108,9 @@ foreach my $k ( keys %seen_wits ) {
        }
 }      
 
+# Check that we only have collation relationships where we need them
+is( scalar $t->collation->relationships, 3, "Redundant collations were removed" );
+
 =end testing
 
 =cut
@@ -248,6 +251,8 @@ sub parse {
        
        # Note that our ranks and common readings are set.
        $c->_graphcalc_done(1);
+       # Remove redundant collation relationships.
+       $c->relations->filter_collations();
 }
 
 sub _make_nodes {
@@ -281,6 +286,7 @@ sub _make_nodes {
        my $r = shift @rankrdgs;
        next if $r->is_meta;
        foreach my $nr ( @rankrdgs ) {
+               next if $nr->is_meta;
                if( $collation_rel ) {
                        $collation->add_relationship( $r, $nr, $collation_rel );
                } else {