use Lingua::Treebank::SimTreeML dir => "../F", id=>"test"; my %prod=(); downTr({-patt => "-w 'dizer'", tree => sub{ $c =~ s/\s*\n\s*/ /g; $prod{"$v{cat} -> $c"}++ if $c =~ /dizer/; $v{cat} }, t => sub{ if($v{cat} =~ /^v-(.*)/){ "[$v{lemma}-$1]"} elsif($v{cat} =~ /^prp/){ "$v{lemma}"} elsif($v{cat} =~ /^con/){ "$v{lemma}"} elsif($v{cat} =~ /^adv/){ "$v{lemma}"} else{"[$v{cat}]"} }, punct => sub {"'$v{ort}'" } }); for(sort {$prod{$b} <=> $prod{$a}} keys %prod) { print "$_ $prod{$_}\n";}