in reply to How do I get a list in a perl hash generated from an XML?
#! /usr/bin/perl use warnings; use strict; use XML::LibXML; my $dom = 'XML::LibXML'->load_xml(location => shift); my %struct; for my $ref ($dom->findnodes('/root/ref')) { for my $child ($ref->findnodes('*')) { push @{ $struct{ $ref->{name} }{ $child->nodeName } }, { map { $_->nodeName => $_->value } $child->findnodes('@* +') }; } } use Data::Dumper; print Dumper \%struct;
But converting from XML::Simple to XML::LibXML usually changes the code much more. You can extract only the information you need from the XML, so you don't need to build the whole structure at all.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: How do I get a list in a perl hash generated from an XML?
by PV66 (Novice) on Apr 19, 2021 at 12:19 UTC | |
by choroba (Cardinal) on Apr 20, 2021 at 11:46 UTC | |
| A reply falls below the community's threshold of quality. You may see it by logging in. |