bash-2.03$ cat perl_xml_schema.pl #!/usr/local/bin/perl -w use strict; use XML::SAX::ParserFactory; use XML::Validator::Schema; sub usage { return "$0 \n"; } my $xml = shift || die usage; my $xsd = shift || die usage; # # create a new validator object, using foo.xsd # my $validator = XML::Validator::Schema->new(file => $xsd); # # create a SAX parser and assign the validator as a Handler # my $parser = XML::SAX::ParserFactory->parser(Handler => $validator); # # validate foo.xml against foo.xsd # eval { $parser->parse_uri($xml) }; die "File failed validation: $@" if $@; bash-2.03$ cat XML/invoice.xml A1112CD Metaphorical Web James Eldridge MetWeb Semantic Web Sarah Tremaine SemanticWeb Essay on Metaphorical Web 1 Article 155.60 155.60 Lesson Package 4 Lesson 176.13 704.52 860.12 bash-2.03$ cat XML/simpleInvoice.xsd