#!/usr/bin/perl use strict; use warnings; use feature 'say'; use local::lib; use XML::Smart; my $XML = XML::Smart->new('junk.xml'); my $isconditional; my $otherwise; for (my $i=0; $i < 1000; $i++){ last if ! exists ($XML->{actions}{emailNotification}[$i]{body}); my $body = $XML->{actions}{emailNotification}[$i]{body}->content(); $XML->{actions}{emailNotification}[$i]{body} = $body; say '$body: ' . $body; say 'xml body: ' . $XML->{actions}{emailNotification}[$i]{body}; say $XML->data; }