#!/usr/bin/perl -Tw
use strict;
use CGI::Carp qw(fatalsToBrowser);
use XML::SAX::ParserFactory; # dynamically load an available parser, or PurePerl if nothing else
my $userid = "alex";
my $dataset = "hello2.xml";
my $file = "/usr/home/$userid/$dataset";
my $handler = SAXHandler->new();
my $parser = XML::SAX::ParserFactory->parser( Handler => $handler);
$parser->parse_uri($file);
package SAXHandler;
sub new {
my $type = shift;
return bless {}, $type;
}
sub start_document {
my ($self, $element) = @_;
print "Starting document...\n";
}
sub start_element {
my ($self, $element) = @_;
print "Starting element $element->{Name}\n";
}
sub end_element {
my ($self, $element) = @_;
print "Ending element $element->{Name}\n";
}
sub characters {
my ($self, $characters) = @_;
print "characters: $characters->{Data}\n";
}
1;
####
]>
Hello, world!
####
Name contains invalid start character: '<'