my $parser = XML::DOM::Parser->new(); my $doc = $parser->parsefile( $file ); my $root = $doc->getDocumentElement(); my $nodes = $root->getElementsByTagName ("game"); my $n = $nodes->getLength(); my @games = $root->getChildNodes(); for (my $i = 0; $i < $n; $i++) { my $node = $nodes->item ($i); my $href = $node->getAttributeNode ("gameid"); $game_id = $href->getValue(); foreach my $child( $games[$i]->getChildNodes() ) { my $name = $child->getNodeName(); my $value = $child->getNodeValue(); Lanas::Debug->debug("[CONFIG.PM](spiele) ".$child->toString() ."($i/$game_id) $name: $value",4); $games{ $game_id }->{$name} = $value; } } $doc->dispose;