Ineffectual has asked for the wisdom of the Perl Monks concerning the following question:
Thanks for any help. Ineffmy $pack = NCBIXML->new; $pack->createHandlers; my $parser = $pack->retrieve('HNDL'); $parser->parsefile($file); my %data = $parser->retrieve('RES'); ############## sub createHandlers { my $obj = shift; my $parser = new XML::Parser(ErrorContext=>2); $parser->setHandlers( Start => \&start_handler); $parser->setHandlers( End => \&end_handler); $parser->setHandlers( Char => \&char_handler); $obj->{'HNDL'} = $parser; } sub start_handler { my ($obj, $element, %attrs) = @_; $tag = $element; # primary key for the array $obj->{'TAG'} = $tag; } sub char_handler { my ($obj, $data) = @_; my $tag = $obj->retrieve('TAG'); my %info = $obj->retrieve('RES'); if ($tag eq 'Hit_num') { $key = $data; next; } $info{$key}{$tag} = $data; $obj->{'RES'} = \%info; }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: XML::Parser and objects
by diotalevi (Canon) on Feb 28, 2003 at 01:47 UTC | |
|
Re: XML::Parser and objects
by mirod (Canon) on Feb 28, 2003 at 08:58 UTC | |
|
Re: XML::Parser and objects
by grantm (Parson) on Feb 28, 2003 at 06:32 UTC |