Generated: Sat Oct 24 16:35:32 2020 from xmllibxml01.pl 2019/11/03 1.2 KB. text copy
#!/usr/bin/perl -w # NAME: xmllibxml01.pl # AIM: Given an XML file, output a list of elements # 2019-11-03 - revisited # 2006-07-25 - Initial cut # from : https://metacpan.org/pod/XML::LibXML use strict; use warnings; use XML::LibXML; use Data::Dumper; my $file = 'camelids01.xml'; my $parser = XML::LibXML->new(); my $tree = $parser->parse_file($file); print "Dumper list...\n"; print Dumper($tree); exit 1; my $root = $tree->getDocumentElement; my @species = $root->getElementsByTagName('species'); foreach my $camelid (@species) { my $latin_name = $camelid->getAttribute('name'); #my @name_node = $camelid->getElementsByTagName('common-name'); my $name_node = $camelid->getElementsByTagName('common-name'); #my $common_name = $name_node[0]->getFirstChild->getData; my $common_name = "missing"; #my @c_node = $camelid->getElementsByTagName('conservation'); my $c_node = $camelid->getElementsByTagName('conservation'); #my $status = $c_node[0]->getAttribute('status'); my $status = "missed"; print "$common_name ($latin_name) $status \n"; print Dumper($name_node); print Dumper($c_node); }