Exception Objects 

eval {
  my $p = XML::SAX::ParserFactory->parser(Handler => $handler);
  $p->parse_uri($document_path);
};
if($@) {
  if($@->isa('XML::SAX::Exception::Parse')) {
    log("$@");
    # reject the document, but carry on
  }
  else {
    # give up, there's a more serious error
  }
}