validate eval { $xmlschema->validate( $doc ); }; This function allows to validate a (parsed) document against the given XML Schema. The argument of this function should be a XML::LibXML::Document object. If this function succeeds, it will return 0, otherwise it will die() and report the errors found. Because of this validate() should be always evaluated. #### #Match Namespace my $rdoc = XML::LibXML::XPathContext->new($doc->documentElement()); $rdoc->registerNs( ns => 'namespace' );