use strict;
use XML::Rules;
use Data::Dumper;
my $parser = XML::Rules->new(
stripspaces => 7,
rules => {
'known-action,name' => 'content',
'target' => sub {
return $_[1]->{partner} => $_[1]->{'known-action'};
},
'targets' => 'no content',
'drug' => 'pass no content'
}
);
my $data = $parser->parse(\*DATA);
#print Dumper($data);
print "Name: $data->{name}\nType: $data->{type}\n";
while (my ($partner, $action) = each %{$data->{targets}}) {
print " $partner: $action\n";
}
__DATA__
Goserelin
yes
yes
yes
####
use strict;
use XML::Rules;
use Data::Dumper;
my $parser = XML::Rules->new(
stripspaces => 7,
rules => {
'known-action,name' => 'content',
'target' => sub {
return '@partners' => $_[1]->{partner}, '@actions' => $_[1]->{'known-action'};
},
'targets' => 'pass no content',
'drug' => 'pass no content'
}
);
my $data = $parser->parse(\*DATA);
#print Dumper($data);
print "Name: $data->{name}\nType: $data->{type}\n";
print "Partners: ", join(', ', @{$data->{partners}}), "\n";
print "Actions: ", join(', ', @{$data->{actions}}), "\n";
__DATA__
Goserelin
yes
yes
yes