use XML::LibXML; my $xsd = 'http://nvd.nist.gov/schema/nvd-cve-feed_2.0.xsd'; my $xml = 'http://static.nvd.nist.gov/feeds/xml/cve/nvdcve-2.0-recent.xml'; my $schema = XML::LibXML::Schema->new(location =>$xsd); my $parser = XML::LibXML->new; my $doc = $parser->parse_file($xml); eval { $schema->validate( $doc ) }; if ( my $ex = $@ ) { print $ex; } else { print "Schema validated ok"; } # OUTPUT Schema validated ok