#!/usr/bin/perl -w # $Id: bench_sax_base_libxml_extract,v 1.2 2003/09/19 18:52:26 mrodrigu Exp $ use strict; use simple_benchmark; # to get memory size use XML::LibXML::SAX; use Getopt::Long; my( $in_file); GetOptions( 'in_file=s' =>\$in_file); $in_file ||= 'test.xml'; my $handler= OutputMessage->new; XML::LibXML::SAX->new( Handler => $handler) ->parse_uri( $in_file); package OutputMessage; use base qw( XML::SAX::Base); my $in_message; sub start_element { $in_message=1 if( $_[1]->{Name} eq 'message'); } sub characters { print $_[1]->{Data} if( $in_message); } sub end_element { if( $_[1]->{Name} eq 'message') { print "\n"; $in_message=0 ; } }