my $input_xml; open my $fh, '>>:encoding(utf8)', $outputfile or die "Cannot open: $outputfile: $!"; do { my $dom = XML::LibXML->load_xml(string=>$input_xml); my $isEmpty = !$dom->documentElement->hasChildNodes; print "isEmpty: ", ($isEmpty?"yes":"no"), "\n"; last if $isEmpty; say $fh $input_xml; $offset = $offset + $record_limit +50000 ; print "Offset=$offset\n"; } while ($input_xml = Get_CMDB_CI()); close($fh) || warn "close failed: $!";